av一区二区三区在线观看_久久久久国产一区二区三区_伊人春色在线播放_欧美亚洲国产一区_九九热在线免费视频_久久视频国产

1、Android sdk集成指南

1.1、導(dǎo)入sdk

如果僅集成IM功能,只需要導(dǎo)入IM專版的SDK:YTX_Android_IM_SDK.zip,去下載

如果需要集成全部功能,包含IM、實時音視頻、會議,則需要導(dǎo)入全功能的SDK:YTX_Android_Full_SDK.zip,去下載

將解壓后的文件導(dǎo)入您工程下的libs目錄下。Jar版本號以SDK目錄下放置的Jar包實際版本為準。

IM專版SDK導(dǎo)入libs目錄下圖所示:

IM.png

全能力版SDK導(dǎo)入libs目錄如下圖所示:

Full.png

說明:

1. libserphone.so: IM消息和音視頻以及音視頻會議功能庫,必須添加。

2. libECMedia.so: 使用音視頻功能,必須添加。

3. libyuntx_gl_disp.so: 5.3.0以及之后版本添加了視頻圖像繪制庫,使用ECOpenGLView控件需要添加。

4. libvoicechange.so: 5.3.0以及之后版本添加了語音變聲接口庫,用來將錄制的語音文件進行音頻數(shù)據(jù)處理轉(zhuǎn)換成不同發(fā)聲效果。

5. arm64-v8a目錄中是64位的so庫,適用于CPU是ARM64位的終端設(shè)備。

6. armeabi目錄中是32位的so庫,適用于CPU是通用ARM的終端設(shè)備。

7. Yuntx_IMLib_v5.x.xr.jar是SDK對外提供的Jar包。

注意事項:

1. 如果開發(fā)者項目需要添加armeabi-v7a目錄,可將armeabi目錄下的libserphone.so拷貝至armeabi-v7a目錄。

2. 目前云通訊只支持arm系列的CPU。其他類型(X86,MIPS等)不支持,因此不能在libs目錄下添加ARM類型以外的適配目錄,如必須此類適配,可以撥打4006101019客服電話具體洽談。

1.2、配置工程

1.2.1 權(quán)限配置

//自定義權(quán)限配置

云通訊SDK需要用戶聲明接收IM消息和接收來電的自定義權(quán)限,用于接收SDK發(fā)出的廣播通知。客戶可根據(jù)需要使用的功能進行配置,如未設(shè)置對應(yīng)權(quán)限將無法正常接收廣播通知。

                	
//接收IM消息的自定義權(quán)限
<permission android:name="com.yuntongxun.ecdemo.permission.RECEIVE_MSG" android:protectionLevel="signature"/>
//使用接收IM消息權(quán)限
<uses-permission android:name="com.yuntongxun.ecdemo.permission.RECEIVE_MSG"/>
//接收來電的自定義權(quán)限
<permission android:name="com.yuntongxun.ecdemo.permission.INCOMING_CALL" android:protectionLevel="signature"/>
//使用接收來電權(quán)限
<uses-permission android:name="com.yuntongxun.ecdemo.permission.INCOMING_CALL"/>


                    

注意事項:

在開發(fā)自有項目APP時需要將以上配置中的com.yuntongxun.ecdemo替換為自有項目APP的包名

                	
					

//以下為必選配置

//允許程序打開網(wǎng)絡(luò)sockets <uses-permission android:name="android.permission.INTERNET"/> //允許程序訪問有關(guān)的網(wǎng)絡(luò)信息 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> //允許程序訪問Wi-Fi網(wǎng)絡(luò)狀態(tài)信息 <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/> //允許應(yīng)用讀寫用戶的外部存儲器 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/> //允許讀取電話的狀態(tài) <uses-permission android:name="android.permission.READ_PHONE_STATE"/> //允許一個程序獲取信息有關(guān)當前或最近運行的任務(wù),一個縮略的任務(wù)狀態(tài),是否活動等等 <uses-permission android:name="android.permission.GET_TASKS"/> //允許程序錄制音頻 <uses-permission android:name="android.permission.RECORD_AUDIO"/> //允許應(yīng)用程序修改全局聲音設(shè)置的權(quán)限 <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/> //允許使用PowerManager的WakeLocks在進程休眠時能夠后臺保持 <uses-permission android:name="android.permission.WAKE_LOCK"/> //允許請求訪問使用照相設(shè)備(如果使用視頻通話則必選配置) <uses-permission android:name="android.permission.CAMERA"/>
                	
					

//以下列出幾種可選配置,開發(fā)者可根據(jù)自己的需求進行選擇配置

//如需使用藍牙設(shè)備,可配置以下權(quán)限 //允許程序連接到已配對的藍牙設(shè)備 <uses-permission android:name="android.permission.BLUETOOTH"/> //允許程序發(fā)現(xiàn)和配對藍牙設(shè)備 <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/> //如需GPS相關(guān)權(quán)限,可配置以下權(quán)限 //GPS定位權(quán)限 <uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"/> //允許一個程序訪問CellID或WiFi熱點來獲取粗略的位置 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> //允許讀取電話的狀態(tài) <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> //允許一個程序訪問精良位置(如GPS) <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> //其他 //允許程序讀取用戶聯(lián)系人數(shù)據(jù) <uses-permission android:name="android.permission.READ_CONTACTS"/> //允許訪問振動設(shè)備 <uses-permission android:name="android.permission.VIBRATE"/> //允許一個程序在系統(tǒng)啟動完成時自定啟動 <uses-permission android:name="android.permission.WAKE_LOCK"/> //允許一個程序接收到 ACTION_BOOT_COMPLETED廣播在系統(tǒng)完成啟動 <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/> <uses-permission android:name="android.permission.READ_LOGS" />

注意事項:

1.SDK 的權(quán)限聲明與application同級,因此要放到AndroidManifest.xml 清單文件的application節(jié)點外。

2.文檔僅提供了幾種可選權(quán)限,開發(fā)者如需使用其他權(quán)限,可以參考Android相關(guān)文檔,根據(jù)自己的應(yīng)用添加所需權(quán)限。

1.2.2 SDK核心配置

清單文件配置項

                	
// SDK核心服務(wù)配置
<service android:name="com.yuntongxun.ecsdk.ECClientService" 
android:enabled="true" android:process=":push" />

// 提高sdk服務(wù)存活率(v5.2.2r以后版本提供)
<service android:name="com.yuntongxun.ecsdk.ECClientService$InnerService"
android:enabled="true" android:process=":push" />

// 以下兩項為SDK內(nèi)部處理項,其中booter.Alarm在v5.1.9r以后版本提供
<receiver android:name="com.yuntongxun.ecsdk.booter.CCPReceivers$AlarmReceiver" 
android:process=":push"/>
<receiver android:name="com.yuntongxun.ecsdk.booter.Alarm" 
android:exported="false" android:process=":push"/>

// SDK網(wǎng)絡(luò)改變廣播
<receiver
    android:name="com.yuntongxun.ecsdk.booter.CCPReceivers$ConnectionReceiver"
    android:process=":push">
    <intent-filter>
        <action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
    </intent-filter>
</receiver>

// SDK廣播通知配置(開機廣播)
// 可選廣播、如果應(yīng)用想做開機重啟,可以實現(xiàn)該廣播通知即可
<receiver
    android:name="com.yuntongxun.ecsdk.booter.CCPReceivers$BootReceiver"
    android:process=":push">
    <intent-filter>
        <action android:name="android.intent.action.BOOT_COMPLETED" />
    </intent-filter>
</receiver>

// 聲明自定義通知的廣播接收器(需要替換包名,詳見注意事項)
<receiver
    android:name=".service.YuntxNotifyReceiver"
    android:exported="false">
    <intent-filter>
        // 接收push消息
        // action匹配規(guī)則{packageName + ".action" + "功能"}
        <action android:name="com.yuntongxun.ecdemo.action.VOIP_CALL" />
        <action android:name="com.yuntongxun.ecdemo.action.MESSAGE" />
        <action android:name="com.yuntongxun.ecdemo.action.NOTIFICATION_CLICK" />
        <action android:name="com.yuntongxun.ecdemo.action.PERSON_VERSION" />
    </intent-filter>
</receiver>


                    

注意事項:

1.SDK核心配置是屬于application的屬性,需要放到AndroidManifest 清單文件的application節(jié)點內(nèi)。

2.聲明自定義通知的廣播接收器,開發(fā)自有項目APP時,action 中的 com.yuntongxun.ecdemo 請?zhí)鎿Q為自有項目APP的包名

SDK消息通知說明

配置SDK消息通知廣播 ,SDK通知會分三種提醒方式如下表所示

IM.png

a、直接通過設(shè)置的回調(diào)接口(OnChatReceiveListener)Push給應(yīng)用,SDK處于登錄狀態(tài)并且應(yīng)用處于運行狀態(tài),則會直接通過回調(diào)接口通知。

b、采用(BroadcastReceiver)廣播通知(v5.1.8版本及以后版本提供),SDK處于登錄狀態(tài)并且應(yīng)用處于未運行狀態(tài),則會直接喚醒應(yīng)用處理。

c、如果應(yīng)用未處于運行狀態(tài)并且不想被喚醒應(yīng)用運行則采用狀態(tài)欄通知處理(SDK直接處理消息提醒,不會通知應(yīng)用),比如調(diào)用ECDevice#logout(ECDevice.NotifyMode, ECDevice.OnLogoutListener)SDK退出登錄并且傳入后臺設(shè)置接收消息才會有提醒。

注意:

(1)以上在a和b的場景下,SDK都會將消息直接給應(yīng)用處理,只有在c的情況SDK才會直接處理消息提醒,所以應(yīng)用需要處理a和b兩種情況。

(2)當手機使用的是華為Rom系統(tǒng)(EMUI),在我們的SDK推送服務(wù)(ECClientService)不存活的情況下,推送服務(wù)器會通過華為推送將消息推送到客戶端來實現(xiàn)消息通知,因此需要集成華為的sdk來處理華為推送。具體集成方式參考華為推送平臺官網(wǎng)及其Demo: http://developer.huawei.com/cn/consumer/wiki/index.php?title=%E6%8E%A5%E5%85%A5%E8%AF%B4%E6%98%8E

1.3、混淆打包

對工程打包混淆,需要遵循如下規(guī)則:

                	
// 注:v.x.x.x根據(jù)實際版本號修改,例如v5.0.0.1b
-libraryjars libs/Yuntx_IMLib_vx.x.x.jar(如果是Android Studio 此行忽略)
-keep class com.yuntongxun.ecsdk.** {*; }


                    

2、請求回調(diào)和通知回調(diào)

SDK中和服務(wù)端的交互采取異步回調(diào)方法,有兩種異步回調(diào)方法,一種是請求回調(diào)方法,一種是通知回調(diào)方法,詳細介紹如下:

(1)請求回調(diào)方法:即由用戶主動發(fā)出一個操作請求,請求的結(jié)果在回調(diào)中返回。具體說就是在調(diào)用sdk的方法時,sdk的方法參數(shù)中有回調(diào)方法,請求的結(jié)果直接在參數(shù)的回調(diào)方法中處理。例如發(fā)送消息的方法,包含獲知消息是否發(fā)送成功的回調(diào),此方法就是請求回調(diào)方法。

(2)通知回調(diào)方法:通知回調(diào)是指由云通訊服務(wù)端主動給客戶端發(fā)送的信令或業(yè)務(wù)消息,如接收消息,就是由服務(wù)端通知應(yīng)用來收消息,此方法就是通知回調(diào)方法。

文檔更新時間:2017年1月17日

主站蜘蛛池模板: 日韩在线播放网址 | 日本一区二区高清视频 | h在线观看 | 欧美伊人久久久久久久久影院 | 久久精品国产久精国产 | 日韩小视频在线 | 国产精品久久久久久久一区探花 | a爱视频 | 中文字幕高清视频 | 精品二区| 国产高清一区二区 | 亚洲欧美自拍偷拍视频 | 久久久精品黄色 | 日韩精品 电影一区 亚洲 | 欧美一区两区 | 免费视频一区二区三区在线观看 | 91精品久久久久久久久 | 久久免费视频网 | 亚洲免费在线播放 | 中文字幕国产一区 | 在线播放国产一区二区三区 | 久久综合成人精品亚洲另类欧美 | 开操网| 日韩一级一区 | 少妇特黄a一区二区三区88av | 天堂在线免费视频 | 亚洲日日夜夜 | 国产高清视频一区二区 | 国产成人久久精品一区二区三区 | 国产午夜精品一区二区三区嫩草 | 日本二区 | 午夜精品一区二区三区在线 | 欧美一级黄视频 | 国产伦精品一区二区三区精品视频 | a级毛片免费高清视频 | 亚州中文字幕 | 午夜精品久久久 | 91成人 | 日日干日日射 | 国产精品久久久久无码av | 久久999 |