基於linphone android sdk 的voip語音、視訊通話 教程一、註冊
1.介紹
liblinphone官網除了提供了完整的原始碼下載外,還提供了liblinphone-android-sdk 的下載。由於原始碼複雜、難編譯。。。,但你可以使用sdk開發。官網及網上的使用教程很少,所以我把他寫出來 在之前需準備一臺sip伺服器 我用的freeswitch
2.下載
sdk 下載地址http://www.linphone.org/technical-corner/liblinphone/downloads
下載安卓的sdk 就行了 不是下載原始碼大概15m左右吧
3. 解壓拿到liblinphone-sdk.aar 由於是aar的 哎 。。這個是一個android studio的程式 如果你的開發平臺是這個 你可以匯入裡面作為一個模組就行了 由於下載了個是最新的可以建立安卓8的 建立低版本的有各種蛋疼的問題所以放棄改用eclipse 非eclipse 可以跳過這段到4( 本文基於android5.1使用的 官網https://wiki.linphone.org/xwiki/wiki/public/view/Lib/Gettin提供了aar的使用)
- 修改aar為zip
- 解壓到和到時候安卓工程同目錄下
- 把classes.jar和jni目錄下的所有檔案考到libs下
- 刪除jni目錄
- 建立project.properties 寫入
- target=android-22
- android.library=true
- 最後將工程匯入eclipse
- ok
4.建立android工程
這裡建立一個android 5.1的專案
在引進sdk
出現紅色的?那就是sdk和專案沒在一個目錄 eclipse bug
官網寫了一個簡單的使用說明
How to use the SDK
There is a
You can also download the source code of Linphone Android (see the Source Code part of this page) and take a look either at the LinphoneMini project in the sample/ folder or at the tutorials in the submodules/linphone/coreapi/help/java/org/linphone/core/tutorials/ folder.
看來還是要下載下原始碼(下載麻煩的可以到這裡下載https://download.csdn.net/download/java_lilin/10452836 主要是不成功git )
找這兩個資料夾 sample/ submodules/linphone/coreapi/help/java/org/linphone/core/tutorials/
把sample裡面的res、xml的許可權、src下的LinphoneMiniUtils.java LinphoneMiniManager.java考到新建的工程
許可權新增 <!--電池許可權-->
<uses-permission android:name="android.permission.WAKE_LOCK"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
在LinphoneMiniActivity.java裡面的以下程式碼考到自己的activity裡面
private LinphoneMiniManager mManager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mManager = new LinphoneMiniManager(this);
}
....................................
protected void onDestroy() {
mManager.destroy();
super.onDestroy();
}
此時LinphoneMiniManager.java 出現報錯
一個是沒這個方法多了個@Override 另外是一個是少了一個string的引數 會java的都能改
最後在實現下沒有實現的方法就不會有錯了
ok 環境已經準備好了
5、開始註冊 註冊的時候就簡單點選一個按鈕 輸出 註冊成功
我們在activity_main.xml 裡面新增
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/id_text_status"
android:textSize="20dip"
android:text="註冊狀態" />
<Button
android:layout_marginTop="20dip"
android:id="@+id/id_btn_reg"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="註冊" />
設定點選
((Button)this.findViewById(R.id.id_btn_reg)).setOnClickListener(this);
點選方法 (裡面的就是sip地址、密碼 、埠 )
String sipAddress="sip:[email protected]",password="12345"
mManager.lilin_reg(sipAddress, password,"5060");
在LinphoneMiniManager.java新增
public void lilin_reg(String sipAddress,String password,String port) throws LinphoneCoreException{
LinphoneAddress address = lcFactory.createLinphoneAddress(sipAddress);
String username = address.getUserName();
String domain = address.getDomain();
LinphoneProxyConfig[] proxyConfigList = mLinphoneCore.getProxyConfigList();
for (LinphoneProxyConfig linphoneProxyConfig : proxyConfigList) {
mLinphoneCore.removeProxyConfig( linphoneProxyConfig);
}//刪除原來的
mLinphoneCore.addAuthInfo(lcFactory.createAuthInfo(username, password, null, domain+":"+port));
// create proxy config
LinphoneProxyConfig proxyCfg = mLinphoneCore.createProxyConfig(sipAddress, domain+":"+port, null, true);
proxyCfg.enablePublish(true);
proxyCfg.setExpires(2000);
mLinphoneCore.addProxyConfig(proxyCfg); // add it to linphone
mLinphoneCore.setDefaultProxyConfig(proxyCfg);//註冊一次就好了 下次啟動就不用註冊
}
再到方法添加註冊輸出
@Override
public void registrationState(LinphoneCore lc, LinphoneProxyConfig cfg,
RegistrationState cstate, String smessage) {
Log.e("lilin Registration state: " + cstate + "(" + smessage + ")");
}
啟動安卓測試點選按鈕輸出 lilin Registration state: xx(registered successfully)表示註冊成功了
未完待續 更多到部落格列表
對此感興趣的可以加群261074724 可免費下載東西哦哦哦哦哦
相關推薦
基於linphone android sdk 的voip語音、視訊通話 教程一、註冊
1.介紹 liblinphone官網除了提供了完整的原始碼下載外,還提供了liblinphone-android-sdk 的下載。由於原始碼複雜、難編譯。。。,但你可以使用sdk開發。官網及網上的使用教程很少,所以我把他寫出來 在之前需準備一臺sip伺服器 我用的fr
基於linphone android sdk 的voip語音、視訊通話 教程二、sip語音撥打、接聽
1.在實現撥打之前我們先把註冊狀態顯示到view上 讓LinphoneMiniManager extends Service 便於傳送訊息到MainActivity.java 別忘了AndroidManifest.xml的註冊service <serv
Android視訊播放框架一、Vitamio
簡述:vitamio是一款android以及ios視訊播放的開源框架。 (一)匯入Lib的Module 1、從官網上http://vitamio.org/下載官方的demo後,直接解壓,解壓後會得到VitamioDemo 和VitamioBundle。VitamioBu
Android中WebView的定位功能、視訊全屏播放、下載功能、頁面Url的處理、進度條處理
一、WebView 初始化設定 /** * webview初始化設定 */ private void initWebViewSettings() { WebSettings webSettings = wv_web.g
【Android Studio安裝部署系列】四十一、Android Studio安裝Alibaba Java Coding Guidelines插件(檢查代碼規範)
實現 gui 參考 阿裏巴巴 style oid lips 基本上 setting 版權聲明:本文為HaiyuKing原創文章,轉載請註明出處! 前言 該插件主要是對今年發布的《阿裏巴巴 Java 開發規約》的一個延伸,它以一個 IDE 的插件存在,可以自動對手冊中的
RK3288 平臺(Android 5.1)+ PN548 除錯流水賬(一、前期編譯篇)
一、獲取原始碼 客戶向瑞芯微技術視窗申請SDK 二、SDK 編譯 1.JDK 安裝 Android5.1 系統編譯依賴於 JDK7。 編譯之前需安裝 JDK7,並配置 JAVA 環境變數。例如, 安裝路徑為/usr/lib/jvm/java
搭建電影網站詳細教程——一、域名與伺服器
前言:這幾天閒著無聊想要搭建一個電影網站,沒事的時候可以看個電影,瀏覽量多了的話還可以掛個廣告。^_^ 上網找了找教程,發現沒有特別詳細的,就準備自己寫一個,以後有需要可以看一下。 一、購買域名與伺服器 我租的是阿里的域名以及伺服器,對比了一下BAT三家公司,阿里的比較便宜。
Ubuntu16.04中安裝SqlServer並建立連線資料庫、跨平臺遷移教程連結、各種程式語言連線資料庫的教程連結
安裝SQL server 1、匯入公鑰 wget -qO- https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add - 2、註冊mssqlserver Ubuntu儲存庫 sudo
iOS下WebRTC音視訊通話(一)
在iOS下做IM功能時,難免都會涉及到音訊通話和視訊通話。QQ中的QQ電話和視訊通話效果就非常好,但是如果你沒有非常深厚的技術,也沒有那麼大的團隊,很難做到QQ那麼快速和穩定的通話效果。 但是利用WebRTC技術,即使一個人也能夠實現效果不錯的音視訊通話。本篇
FFmpeg開發教程一、FFmpeg 版 Hello world
sample roc rop pbm fec 然而 封裝 包含 視頻 本系列根據項目ffmpeg-libav-tutorial翻譯而來 Chapter 0 - 萬物之源 —— hello world 然而,本節的程序並不會在終端打印“Hello world”,而是會打印原視
iOS 基於環信SDK實現即時通訊-語音、視訊聊天
這裡建立的專案是在文字聊天專案:http://blog.csdn.net/create_pro/article/details/62420040基礎上新增的功能,所以可能需要先去連結文章地址檢視整合過程,具體專案連結在下面,這裡只介紹使用環信SDK整合語音、視訊
集成Android免費語音合成功能(在線、離線、離在線融合)
com nvi sid 審核 contacts lai 音量 ant demo 集成Android免費語音合成功能(在線、離線、離在線融合),有這一篇文章就夠了(離線)集成Android免費語音合成功能(在線、離線、離在線融合),有這一篇文章就夠了(離在線融合) 轉
關於基於Linphone的視頻通話Android端開發過程中遇到的問題
浪費 phone 模式 需要 class 通話 其他 了解 同時 關於基於Linphone的視頻通話Android端開發過程中遇到的問題 運用開源項目Linphone的SDK進行開發,由於是小組進行開發,我主要負責的是界面部分。 由於當時是初學Android開發
配置android開發環境、安裝Android studio、Android sdk(配置react native的Android環境)
配置react native的Android環境的步驟比較多,所以單獨提取出來記錄: 提示:如果是想搭建android開發環境安裝Android studio,本記錄貼也適用的 1. 安裝 Android Studio,配置sdk 2.建立一個android專案並執行測試
ubuntu16.04安裝jdk、Android Studio、Android Sdk
第一次接觸ubuntu,研究安裝這些東西還好只花了兩天的時間。現在記錄一下,這兩天碰到的坑,以防以後再掉進去。 首先,我前幾天先是安裝了ubuntu kylin,然後安裝 android 開發環境,但是碰到很多問題,後來上網搜尋了一下 大家對ubuntu kylin的看法, 發現 貶 &g
在Android Studio中下載Android SDK的兩種方式(Android Studio3.0、windows)
方式一、設定HTTP Proxy 1. 開啟Settings 2. 點選HTTP Proxy,選擇Manual proxy configuration: 設定 Host name 為:mirrors.neusoft.edu.cn 設定 Port number 為:80
android形狀屬性、鎖屏密碼、動態模糊、kotlin專案、抖音動畫、記賬app、視訊播放器等原始碼
Android精選原始碼 直觀瞭解Android的“形狀”屬性如何影響Drawable的外觀。 一個靈活的視訊播放器, 可替換播放器核心。 android鎖屏輸入密碼功能原始碼 背景動態模糊方案,元件實現類對bitmap模糊處理的各類算... 簡單天氣,帶
android平臺下基於ffmpeg和ANativeWindow實現簡單的視訊播放器
音視訊實踐學習 android全平臺編譯ffmpeg以及x264與fdk-aac實踐 ubuntu下使用nginx和nginx-rtmp-module配置直播推流伺服器 android全平臺編譯ffmpeg合併為單個庫實踐 android-studio使用c
原始碼中iOS短視訊開發、Android短視訊開發的視訊上傳功能只需要這段原始碼
在原始碼中上傳視訊功能是iOS短視訊開發和Android短視訊開發中不可忽視的中心,看成是APP程式原始碼存在的意義。相信朋友們也能夠理解它在APP開發中的地位,現在這段程式碼就免費提供給大家了。 /*上傳視訊*/ @Override pu
用Python教你微信防撤回(文字、圖片、語音、視訊、名片等...)
大家在使用微信過程中,有時候訊息還沒看到,就被撤回了。畢竟好奇心大家都有,明知到訊息被撤回了,就更想去看一下是什麼內容心裡想著萬一是女神給我表白了呢.. 今天就用Python來做個微信防撤回的小功能。支援文字、圖片、語音、視訊、名片的防撤回。 思路:利用itchat庫將每次接收到的訊息進行快取。監