最近公司更新2016年底的項目,需求加入環(huán)信的實時語音剑刑,視頻媳纬,因為之前有聊天的實現(xiàn)双肤,參照 ? ?作者:帶你去旅行 ? ?的一篇《iOS 環(huán)信(3.1.5)快速集成單聊、群聊钮惠、視頻及語音通話-新手》
1.首先替換了HyphenateFullSDK
2.重新更新SDK的依賴庫:
CoreMedia.framework
AudioToolbox.framework
AVFoundation.framework
MobileCoreServices.framework
ImageIO.framework
libc++.tbd
libz.tbd
libstdc++.6.0.9.tbd
libsqlite3.tbd
libiconv.tbd
3.SDK 不支持 bitcode茅糜,向 Build Settings → Linking → Enable Bitcode 中設(shè)置 NO。
4.語音和視頻及時通話:因為都是環(huán)信寫的 所以把有關(guān)及時通話的文件拖進來素挽;
ChatDemoHelper? ? ? ? CallViewController
1:在pct中加上 #define DEMO_CALL 1?
2:全局搜索#if DEMO_CALL == 1 ? 刪掉蔑赘,編譯如有報錯請仔細看是不是哪句代碼重復了或者哪里沒有注釋完全。
3:ChatDemoHelper.m中 注冊代碼到——#pragma mark - EMCallManagerDelegate宏中間的代碼都可以注釋掉
重中之重:在根控制器中一定要把控制器賦給ChatDemoHelper:[ChatDemoHelper shareHelper].mainVC = self;
以上均引用?作者:帶你去旅行 ? ?的一篇《iOS 環(huán)信(3.1.5)快速集成單聊预明、群聊缩赛、視頻及語音通話-新手》的內(nèi)容【已聯(lián)系作者注明出處,很感謝作者內(nèi)容給的幫助】
一切完成撰糠,運行之后酥馍,發(fā)現(xiàn)音視頻通話,可以調(diào)起窗慎,并且顯示已經(jīng)和對方建立連接物喷,但是對方接收不到卤材。 ? What遮斥?? ?找原因吧扇丛!
EMCallManagerDelegate【實時語音/視頻相關(guān)的回調(diào)】的代理方法 ?沒有調(diào)用
而 ?實時通訊相關(guān)代理 [[EMClient sharedClient].callManager addDelegate:self delegateQueue:nil];也注冊了术吗,<EMCallManagerDelegate>也在ChatDemoHelper引用了,邏輯上是對的可行的帆精,但為什么就是不調(diào)用呢较屿?? 很神奇的問題卓练!搜尋了一天隘蝎,未果,我決定尋求環(huán)信的技術(shù)支持襟企,登錄環(huán)信即時通訊云管理后臺嘱么,點擊【應(yīng)用列表】-【名稱】,在應(yīng)用概況頁面右下角點擊【技術(shù)支持】提交工單
經(jīng)過一天的溝通顽悼,終于解決了
哇曼振!終于解決了!蔚龙!
SDK初始化一定要放在設(shè)置rootViewController之前冰评,EMCallManagerDelegate【實時語音/視頻相關(guān)的回調(diào)】的代理方法才可以調(diào)用