環(huán)信EaseUI初步使用
集成環(huán)信SDK
請(qǐng)參考環(huán)信文檔,不做詳細(xì)介紹了(包括EaseUI module的引用)
!!!按照聊天流程走吧
1.初始化EaseUI
在Application的oncreate()方法中.執(zhí)行EaseUI.getInstance().init(applicationContext, options);
options根據(jù)需要,自行設(shè)定
2.登錄環(huán)信
EaseUI的文檔中,并未提及到關(guān)于EaseUI的登錄,所以只能借用EMClient的登錄方法進(jìn)行登錄,同時(shí)做好賬號(hào)狀態(tài)監(jiān)聽,注意:賬號(hào)監(jiān)聽需要OnUiThread(),請(qǐng)?jiān)贏ctivity中做監(jiān)聽.
3.EaseUI提供EaseChatFragment – 聊天頁面,EaseConversationListFragment – 會(huì)話列表頁面,EaseContactListFragment – 聯(lián)系人頁面,根據(jù)需求,選擇使用EaseUI提供,或者自行編譯.EaseUI源碼開放,可以自行修改代碼,達(dá)到自己想要的界面.
以上,實(shí)現(xiàn)基本功能
以下,一些我使用中遇見的細(xì)節(jié)
1.如何設(shè)置聯(lián)系人信息
環(huán)信提供推送服務(wù),但環(huán)信賬號(hào)只存賬號(hào),并無用戶詳情信息.使用環(huán)信+本地服務(wù)器的方式,實(shí)現(xiàn)聊天.通過本地服務(wù)器,獲取用戶信息,可自定義.
EaseUI提供用戶信息提供者,使用easeUI.setUserProfileProvider(),new一個(gè)provider,實(shí)現(xiàn)getUser方法.文檔中,返回值getUserInfo(username).注意,這個(gè)方法要自己重寫,并且返回值是你的User對(duì)象.
建議:使用DBhelper,創(chuàng)建SQLIte表格存儲(chǔ)用戶信息,重寫getUserInfo(username)方法是,根據(jù)SQLite表格內(nèi)容,獲取所有用戶信息,通過userName確定返回的user對(duì)象.注意:username并非用戶昵稱,而是用戶在環(huán)信平臺(tái)注冊(cè)的環(huán)信賬號(hào).
2.有關(guān)消息
EaseUI雖然提供了fragment的聊天界面,消息界面.但消息推送時(shí),并不會(huì)自動(dòng)刷新消息接受界面,請(qǐng)收到刷新.
消息的類型,文檔中,不描述.附加字段,使用EaseUI發(fā)送消息添加附加字段,實(shí)現(xiàn)EaseChatFragmentHelper接口
擦,暫時(shí)想不起來要寫什么了,有提問,如果我遇到過并解決了,可以追加進(jìn)來