77 lines
2.9 KiB
Java
77 lines
2.9 KiB
Java
package com.shayu.onetoone;
|
||
|
||
|
||
|
||
|
||
import android.os.Handler;
|
||
import android.os.Looper;
|
||
import android.os.Process;
|
||
import android.util.Log;
|
||
|
||
import com.alibaba.android.arouter.launcher.ARouter;
|
||
import com.facebook.FacebookSdk;
|
||
import com.shayu.onetoone.activity.fragments.message.ChatMessageFragment;
|
||
import com.shayu.onetoone.activity.message.ChatActivity;
|
||
import com.shayu.onetoone.utils.NeverCrashUtils;
|
||
import com.yunbao.common.BuildConfig;
|
||
import com.yunbao.common.CommonAppContext;
|
||
import com.yunbao.common.manager.imrongcloud.InstructorSendRewardProvider;
|
||
import com.yunbao.common.manager.imrongcloud.RongcloudIMManager;
|
||
import com.yunbao.common.utils.AppManager;
|
||
|
||
import io.rong.imkit.RongIM;
|
||
import io.rong.imkit.config.RongConfigCenter;
|
||
import io.rong.imkit.utils.RouteUtils;
|
||
import io.rong.imlib.IMLibRTCClient;
|
||
import io.rong.imlib.RongIMClient;
|
||
import io.rong.imlib.model.Message;
|
||
|
||
public class AppContext extends CommonAppContext {
|
||
@Override
|
||
public void onCreate() {
|
||
super.onCreate();
|
||
|
||
NeverCrashUtils.getInstance()
|
||
.setDebugMode(BuildConfig.DEBUG)
|
||
.setMainCrashHandler((t, e) -> {
|
||
Log.e("ApplicationError", "主线程异常");//此处log只是展示,当debug为true时,主类内部log会打印异常信息
|
||
e.printStackTrace();
|
||
AppManager.runDebugCode(() -> {
|
||
//闪退后finish所有Activity并且杀死进程
|
||
Process.killProcess(Process.myPid());
|
||
System.exit(0);
|
||
new Handler(Looper.getMainLooper()).postDelayed(() -> {
|
||
throw new RuntimeException(e);
|
||
}, 100);
|
||
});
|
||
|
||
})
|
||
.setUncaughtCrashHandler((t, e) -> {
|
||
Log.e("ApplicationError", "子线程异常");//此处log只是展示,当debug为true时,主类内部log会打印异常信息
|
||
e.printStackTrace();
|
||
})
|
||
.register(this);
|
||
FacebookSdk.setApplicationId("126035687816994");
|
||
ARouter.openLog();
|
||
ARouter.openDebug();
|
||
ARouter.printStackTrace();
|
||
ARouter.init(this);
|
||
|
||
String appKey = "pvxdm17jpd3hr";
|
||
boolean enablePush = true;
|
||
RongIM.init(this, appKey, enablePush);
|
||
|
||
RongcloudIMManager.initRongIM(this);
|
||
RongConfigCenter.conversationConfig().addMessageProvider(new InstructorSendRewardProvider(getApplicationContext()));
|
||
RongcloudIMManager.addRongcloudIMOnReceiveMessageListener(new RongIMClient.OnReceiveMessageWrapperListener() {
|
||
@Override
|
||
public boolean onReceived(Message message, int left, boolean hasPackage, boolean offline) {
|
||
return false;
|
||
}
|
||
});
|
||
RouteUtils.registerActivity(RouteUtils.RongActivityType.ConversationActivity, ChatActivity.class);
|
||
|
||
}
|
||
|
||
}
|