Androidインスタント通信-融雲-基本環境構築(穴が多い)
8309 ワード
公式サイトに登録する
http://www.rongcloud.cn/
コンソールにアクセスしてアプリケーションを作成する
ダウンロードエリアをクリック
IMKit SDKをクリックしてダウンロード
このような圧縮パッケージを得る
Rong_Cloud_Android_IMKit_SDK_v2_8_24_Dev_fdc48.zip
新しいアンドロイドプロジェクト(自信があれば直接プロジェクトに導入してもいい)、左上隅file new import module相前後import IMLib、IMKit、現在の前提はあなたがこの2つを先に解凍することです.importの過程でbuild tools reversionを更新する必要があることを示すかもしれませんが、更新をクリックすればいいです.
次のプロジェクトはこうです
あなたのapp moduleの下で依存を追加します
IMLib ModuleのAndroid Manifestを開きます.xmlファイル、meta-data RONG_CLOUD_APP_KEYの値は自分のAppKeyに変更されました.図:
アプリケーションのApp ModuleのAndroidManifest.xmlファイルで、FileProvider関連構成を追加し、android:authoritiesを「アプリケーションのパッケージ名.FileProvider」に変更します.アプリケーションパッケージ名はcom.后ろに何があるの?例えば私のcom.example.test
初期化
新しいAppクラスを作成し、Applicationから継承し、プロファイルで宣言します.
Tokenの取得
コンソールに入り、アプリケーションに入り、
左側のAPIをクリックしてデバッグします.
最初の項目を選択してtoken
下に引いて3つの情報を入力するとtokenを取得できます.
最後に、あなたのMainActivityでお願いします.さっき手に入れたtokenを入れて、出力したuserIdを見てください.tokneを取得したばかりのときに入力したuserIdであれば、接続に成功したことを示します.
半分やったが、LeanCloudがいいことに気づいた.
http://www.rongcloud.cn/
コンソールにアクセスしてアプリケーションを作成する
ダウンロードエリアをクリック
IMKit SDKをクリックしてダウンロード
このような圧縮パッケージを得る
Rong_Cloud_Android_IMKit_SDK_v2_8_24_Dev_fdc48.zip
新しいアンドロイドプロジェクト(自信があれば直接プロジェクトに導入してもいい)、左上隅file new import module相前後import IMLib、IMKit、現在の前提はあなたがこの2つを先に解凍することです.importの過程でbuild tools reversionを更新する必要があることを示すかもしれませんが、更新をクリックすればいいです.
次のプロジェクトはこうです
あなたのapp moduleの下で依存を追加します
compile project(':IMKit')
IMLib ModuleのAndroid Manifestを開きます.xmlファイル、meta-data RONG_CLOUD_APP_KEYの値は自分のAppKeyに変更されました.図:
アプリケーションのApp ModuleのAndroidManifest.xmlファイルで、FileProvider関連構成を追加し、android:authoritiesを「アプリケーションのパッケージ名.FileProvider」に変更します.アプリケーションパッケージ名はcom.后ろに何があるの?例えば私のcom.example.test
初期化
新しいAppクラスを作成し、Applicationから継承し、プロファイルで宣言します.
android:name=".App">
public class App extends Application {
@Override
public void onCreate() {
super.onCreate();
/**
* OnCreate , , RongIM Push init。
* io.rong.push push , 。
*/
if (getApplicationInfo().packageName.equals(getCurProcessName(getApplicationContext())) ||
"io.rong.push".equals(getCurProcessName(getApplicationContext()))) {
/**
* IMKit SDK
*/
RongIM.init(this);
}
ItheimaHttp.init(this, "http://api.cn.ronghub.com");
}
/**
*
*
* @param context
* @return
*/
public static String getCurProcessName(Context context) {
int pid = android.os.Process.myPid();
ActivityManager activityManager = (ActivityManager) context
.getSystemService(Context.ACTIVITY_SERVICE);
for (ActivityManager.RunningAppProcessInfo appProcess : activityManager
.getRunningAppProcesses()) {
if (appProcess.pid == pid) {
return appProcess.processName;
}
}
return null;
}
}
Tokenの取得
コンソールに入り、アプリケーションに入り、
左側のAPIをクリックしてデバッグします.
最初の項目を選択してtoken
下に引いて3つの情報を入力するとtokenを取得できます.
最後に、あなたのMainActivityでお願いします.さっき手に入れたtokenを入れて、出力したuserIdを見てください.tokneを取得したばかりのときに入力したuserIdであれば、接続に成功したことを示します.
if (getApplicationInfo().packageName.equals(App.getCurProcessName(getApplicationContext()))) {
RongIM.connect(token, new RongIMClient.ConnectCallback() {
@Override
public void onTokenIncorrect() {
}
@Override
public void onSuccess(String userid) {
Log.i("xbh",userid);
}
@Override
public void onError(RongIMClient.ErrorCode errorCode) {
}
});
}
半分やったが、LeanCloudがいいことに気づいた.