融云即時(shí)通訊集成

前期準(zhǔn)備

注冊(cè)開發(fā)者帳號(hào)

開發(fā)者在集成融云即時(shí)通訊、實(shí)時(shí)網(wǎng)絡(luò)能力前,需前往融云官方網(wǎng)站注冊(cè)創(chuàng)建融云開發(fā)者帳號(hào)。

得到自己的AppKey??

注:(您創(chuàng)建完應(yīng)用后,首先需要了解的是 App Key / Secret,它們是融云 SDK 連接服務(wù)器所必須的標(biāo)識(shí),每一個(gè) App 對(duì)應(yīng)一套 App Key / Secret。針對(duì)開發(fā)者的生產(chǎn)環(huán)境和開發(fā)環(huán)境,我們提供兩套 App Key / Secret,兩套環(huán)境的功能完全一致。您在應(yīng)用最終上線前,使用開發(fā)環(huán)境即可。)


然后下載如圖融云IMKit SDK:


下載來解壓打開內(nèi)容如下,注意:本次只完成單聊界面,所以不需要其他的組件,只需要用到紅框里的IMKit和IMLib。

接下來是SDK導(dǎo)入

以 Module 形式導(dǎo)入前面下載的融云 SDK 里面的各個(gè)組件。

打開您的工程, File -> New -> Import Module

將以下兩個(gè)組件依次導(dǎo)入:

導(dǎo)入成功后進(jìn)行關(guān)聯(lián):

打開應(yīng)用的 build.gradle,在 dependencies 中添加相應(yīng)模塊的依賴:compile project(':IMKit')

如圖:?

打開 IMLib Module 的 AndroidManifest.xml 文件,把 meta-data RONG_CLOUD_APP_KEY 的值修改為您自己的 AppKey.?

如圖:

然后去融云控制界面獲得token值

創(chuàng)建Application初始化建立連接:

新建類命名為App

public class App extends Application {

@Override

????public void onCreate() {

????????super.onCreate();

????????RongIM.init(this);? ?//初始化

????????}

}

在清單文件中添加:

android:name=".App"

然后新建ConversationActivity類加載聊天布局

public class ConversationActivity extends FragmentActivity {

????@Override

????public void onCreate(Bundle savedInstanceState){ ????????super.onCreate(savedInstanceState);

????????setContentView(R.layout.conversation);

????????}

}


ConversationActivity.xml:

<fragment

????android:id="@+id/fragment_chat"

? ? android:name="io.rong.imkit.fragment.ConversationFragment"

? ? android:layout_width="match_parent"

? ? android:layout_height="match_parent"/>


然后注冊(cè)ConversationActivity:

然后在你想要進(jìn)行聊天界面跳轉(zhuǎn)的類中設(shè)置點(diǎn)擊事件,這時(shí)之前獲取的token值就有用了

public class MainActivity extends AppCompatActivity {

? ? @Override

? ? protected void onCreate(@Nullable? Bundle savedInstanceState) {

? ? ? ? super.onCreate(savedInstanceState);

? ? ? ? setContentView(R.layout.activity_person_page);

? ? ? ? String token1 = "rbW1M3a2kTFlmiSna6F6uanP3sgRHLIipG/7iAV1kVlae3IDN/15hIl5INo2LEXGpAO/MxdP14Khdw8u5NV2+A==";

? ? ? ? connect(token1);

? ? }

? ? private void connect(String token) {

? ? ? ? RongIM.connect(token, new RongIMClient.ConnectCallback() {

? ? ? ? ? ? @Override

? ? ? ? ? ? public void onTokenIncorrect() {

? ? ? ? ? ? ? ? Log.e("LoginActivity", "--onTokenIncorrect");

? ? ? ? ? ? }

? ? ? ? ? ? @Override

? ? ? ? ? ? public void onSuccess(String userid) {

? ? ? ? ? ? ? ? findViewById(R.id.chat).setOnClickListener(new View.OnClickListener() {

? ? ? ? ? ? ? ? ? ? @Override

? ? ? ? ? ? ? ? ? ? public void onClick(View view) {

? ? ? ? ? ? ? ? ? ? ? ? if(RongIM.getInstance() !=null){

? ? ? ? ? ? ? ? ? ? ? ? ? ? RongIM.getInstance().startPrivateChat(PersonPageActivity.this,"123456","123456");

? ? ? ? ? ? ? ? ? ? ? ? }

? ? ? ? ? ? ? ? ? ? }

? ? ? ? ? ? ? ? });

? ? ? ? ? ? }

? ? ? ? ? ? @Override

? ? ? ? ? ? public void onError(RongIMClient.ErrorCode errorCode) {

? ? ? ? ? ? ? ? Log.e("LoginActivity", "--onError");

? ? ? ? ? ? }

? ? ? ? });

? ? }

}

注意這里用到之前的token值;

還有這兩處是之前獲取token值的時(shí)候設(shè)置的ID和用戶名;

這個(gè)類的布局,設(shè)置個(gè)控件id就好了,

然后記得注冊(cè)這個(gè)類

然后運(yùn)行,效果如圖咯:

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,926評(píng)論 25 709
  • //聯(lián)系人:石虎QQ: 1224614774昵稱:嗡嘛呢叭咪 /**注意:先看效果圖-->1.登錄融云-->2.生...
    石虎132閱讀 2,441評(píng)論 5 20
  • 第一次在公眾號(hào)上發(fā)文章,僅僅只是記錄自己的生活小事和一些日常感受,可能有小女兒情節(jié)的矯情可能有過于虛妄的看法,有什...
    leeali閱讀 174評(píng)論 0 0
  • 本書是作者薩提亞·納德拉擔(dān)任微軟第三任CEO3年后的一個(gè)回顧和一種總結(jié)。書的一開始,納德拉首先回顧了他從一個(gè)印度孩...
    山水之滴閱讀 377評(píng)論 0 1
  • 今天伊伊小朋友已經(jīng)一歲八個(gè)月零24天了。也是午睡自己第一次起床下床穿鞋子開門走出屋子的日子,真的是棒棒的!
    Xuzhixiao閱讀 136評(píng)論 1 0

友情鏈接更多精彩內(nèi)容