環信demo3的集成問題

由于項目中需要聊天功能,所以最近幾天研究了環信demo的集成,在集成過程中遇到了N多個BUG,集成過程及其的艱辛,因為環信聊天畢竟是一個很大的框架,在集成過程中出現重復編譯在所難免,通過自己的努力并且咨詢了環信的技術客服,終于集成成功,現在分享一下自己的集成步驟。

  • 首先是導入環信的sdk,編譯,這個過程的困難不是很多,簡單提一下,首先下載好EaseMobSDK,這里注意一點的是,lib靜態庫中包括EaseMobClientSDKLiteEaseMobClientSDK這兩種,如果你需要實時語音的話選擇EaseMobClientSDK,否則選擇EaseMobClientSDKLite,兩者只能導入一個。
  • 其次添加需要的靜態庫
    MobileCoreServices.framework
    CFNetwork.framework
    ibsqlite3.dylib
    libstdc++.6.0.9.dylib
    libz.dylib
    libiconv.dylib
    libresolv.dylib
    libxml2.dylib
(如果使用的是xcode7,后綴為tbd)
  • 最后向Build Settings → Linking → Other Linker Flags 中 添加-ObjC(注意大小寫)

以上過程基本不會出現問題,在運行編譯都能通過。
主要是環信UI的集成過程中會出現很多問題,官方也沒有具體說如何導入,只是簡略說一下參照demo,然后就開始將自定義過程,現在我將這個過程寫一遍,大家仔細看好。


將這三個文件夾拖入項目中
可能會出現以下錯誤
  • 1、


    錯誤一

這個報錯就是導入SDK是將EaseMobClientSDKLiteEaseMobClientSDK這兩個靜態庫重復導入,刪除不需要的即可。(如果上面已經刪除過,忽略錯誤一)

  • 2、
錯誤二

了解這個錯誤首先要知道環信靜態庫lib,包含連個靜態庫libEaseMobClientSDK.alibEaseMobClientSDKLite.alibEaseMobClientSDKLite.a不包含實時語音功能,libEaseMobClientSDK.a包含所有功能。如果你的app中不需要實時語音功能,刪掉libEaseMobClientSDK.a只使用libEaseMobClientSDKLite.a即可,需要實時音視頻功能同理,刪掉libEaseMobClientSDKLite.a即可。
-ObjC是配合libEaseMobClientSDK.a使用的,-force_load加靜態庫路徑是配合libEaseMobClientSDKLite.a使用的,所以-force_load所加靜態庫路徑是libEaseMobClientSDKLite.a的路徑,不要混淆。
其次還有要導入FixFopen.c
地址如下:

FixFopen.c

  • 3、
    當你導入FixFopen.c時可能出現錯誤三
錯誤三

出現這個錯誤是你在導入

導入的文件

在導入上述文件的的時候沒有添加所需要的依賴庫,出現錯誤三只需要添加以下缺失的庫文件:


依賴庫
  • 4、

導入EaseUI時,需要配置pch文件,如果你項目中本身帶有pch文件,將所需要的頭文件導入你的項目中即可,但是導入可能會出現錯誤,如下(錯誤四)

pch

錯誤四

只需加上#ifdef __OBJC__
#endif條件即可。

還有在運行環信的過程中,會出現警告Warning!ivar size mismatch in PSUICollectionView_ - cannot change the superclass,其實這個警告是無任何影響的,解決辦法非常簡單,將PSTCollectionView.mchar filler[200] 替換成char filler[300]即可。

最后提醒大家一點的是,在你導入的文件中可能會重復導入了某個第三方庫,刪除即可,如果與項目中沖突刪除即可。此外對于使用第三方庫管理cocopods所出現的錯誤還沒有研究過,后期會更新。。。

以上是快速集成環信SDK和UI出現錯誤的一些總結,再此感謝環信客服1019的幫助,對于環信具體的使用,參照官方demo即可,后期我也會繼續更新環信的具體使用,希望大家能夠提出寶貴意見,以便完善環信的使用,讓更多新手能夠快速集成環信到自己的項目中...

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,581評論 25 708
  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,993評論 19 139
  • 昨夜依稀夢前世, 杳杳林中一縷風。 逍遙自在無人管, 自由穿梭樂無窮。 春雨潤花隱暗香, 夏涼弄柳意綿長。 秋雁聲...
    繁花落盡深眸閱讀 477評論 17 9
  • 一、誠信原則 合伙賺錢,誠意當先,以誠相待。不要去管你的伙伴怎么對你! 自己先做自己!! 二、目標原則 求大同...
    相逢一笑307閱讀 199評論 0 0
  • 愛情,是這個世界上最致命的毒藥。 ————題記 [00序言] “我的出生,就是世界的開始。我的死亡,就是世界末日。...
    Tiamo佳期如夢閱讀 646評論 0 1