問(wèn)題描述:在融云官網(wǎng)下載音視頻通話SDK后,集成到項(xiàng)目之中后,功能不能使用.正常來(lái)說(shuō)集成完成之后并且開(kāi)通了音視頻服務(wù),聊天界面點(diǎn)擊加號(hào)按鈕會(huì)出現(xiàn)音視頻通話按鈕,但是我們集成到項(xiàng)目之后,在確認(rèn)集成過(guò)程無(wú)誤之后,確實(shí)未出現(xiàn)這兩個(gè)按鈕.
問(wèn)題背景: 公司項(xiàng)目一開(kāi)始沒(méi)打算加入音視頻功能,是后來(lái)加的,所以音視頻SDK是單獨(dú)在官網(wǎng)下載的.
問(wèn)題解決過(guò)程:從官網(wǎng)下載了最新的SDK ,包括了最新的 IM SDK, 然后集成到項(xiàng)目.發(fā)現(xiàn)在聊天界面點(diǎn)擊加號(hào)按鈕出現(xiàn)的區(qū)域內(nèi)沒(méi)有這兩個(gè)功能按鈕,檢查集成過(guò)程,確認(rèn)無(wú)誤之后到官網(wǎng)查詢相關(guān)文檔.(當(dāng)時(shí)不知道這兩個(gè)功能按鈕在公司融云賬號(hào)開(kāi)通音視頻服務(wù)之后會(huì)自動(dòng)出現(xiàn),走了很多彎路),照著文檔手動(dòng)在加號(hào)擴(kuò)展區(qū)域添加了兩個(gè)按鈕,代碼如下:
UIImage *imageFile2 = [RCKitUtility imageNamed:@"voip/actionbar_video_call_icon"
ofBundle:@"RongCloud.bundle"];
[self.chatSessionInputBarControl.pluginBoardView insertItemWithImage:imageFile2
title:NSLocalizedStringFromTable(
@"VoIPVideoCall", @"RongCloudKit", nil)
atIndex:4
tag:PLUGIN_BOARD_ITEM_VIDEO_VOIP_TAG];
UIImage *imageFile3 = [RCKitUtility imageNamed:@"actionbar_file_icon"
ofBundle:@"RongCloud.bundle"];
[self.chatSessionInputBarControl.pluginBoardView insertItemWithImage:imageFile3
title:NSLocalizedStringFromTable(
@"File", @"RongCloudKit", nil)
atIndex:5
tag:PLUGIN_BOARD_ITEM_FILE_TAG];
加上兩個(gè)按鈕之后發(fā)現(xiàn)點(diǎn)擊沒(méi)反應(yīng),遂重寫(xiě)這個(gè)方法
/*!
點(diǎn)擊擴(kuò)展功能板中的擴(kuò)展項(xiàng)的回調(diào)
@param pluginBoardView 當(dāng)前擴(kuò)展功能板
@param tag 點(diǎn)擊的擴(kuò)展項(xiàng)的唯一標(biāo)示符
*/
- (void)pluginBoardView:(RCPluginBoardView *)pluginBoardView clickedItemWithTag:(NSInteger)tag;
照著文檔調(diào)用發(fā)起通話方法
[[RCCall sharedRCCall] startSingleCall:self.targetId mediaType:RCCallMediaVideo];//發(fā)起通話
然后進(jìn)入了正在撥號(hào)的界面,此時(shí)我以為這個(gè)功能就完成了,但是沒(méi)那么簡(jiǎn)單,被叫接不到通知,就是說(shuō)沒(méi)打通,調(diào)用這個(gè)方法
[[RCCall sharedRCCall] isVideoCallEnabled:ConversationType_PRIVATE];
發(fā)現(xiàn)音視頻功能不能用!!! 沒(méi)啥辦法了,跟融云提工單吧,這里要注意了,要指出問(wèn)題的要害,像我現(xiàn)在不能跟融云技術(shù)說(shuō)我進(jìn)通話界面了,對(duì)面收不到通話消息,問(wèn)題本質(zhì)往上找啊,其實(shí)是聊天界面點(diǎn)擊加號(hào)按鈕出現(xiàn)的區(qū)域內(nèi)沒(méi)有這兩個(gè)功能按鈕,以上的解決過(guò)程全都是無(wú)用功,在與融云技術(shù)交流中也確認(rèn)了這一點(diǎn).正常情況下,只要你開(kāi)通音視頻服務(wù),這兩個(gè)音視頻功能按鈕就會(huì)出現(xiàn),功能也正常使用.最后根據(jù)融云給的解決方案,按照其提示更換合適的sdk,問(wèn)題解決.
總的來(lái)說(shuō)其原因是公司開(kāi)通的是聲網(wǎng)(融云用的引擎)的音視頻服務(wù),然而在官網(wǎng)下載的是Blink的引擎(之前5月份的時(shí)候,融云更換了引擎),SDK版本不匹配,換回2.8.30版本SDK,就沒(méi)問(wèn)題了,2.9.X版本是Blink的引擎,不能混用.
在工程中的截圖 版本2.8.32
最后一定要確保融云音視頻通話SDK 與 IM SDK 的匹配.有問(wèn)題提工單給融云時(shí),需要提供這個(gè)文件: 沙盒 下 library/preference/bundleID.plist,這里說(shuō)下如何在真機(jī)下找到這個(gè)文件,上圖:
選擇文件
有問(wèn)題留言吧.