|
@@ -12,8 +12,10 @@ import com.google.firebase.crashlytics.ktx.crashlytics
|
|
import com.google.firebase.ktx.Firebase
|
|
import com.google.firebase.ktx.Firebase
|
|
import com.swago.baseswago.constant.UrlConstant
|
|
import com.swago.baseswago.constant.UrlConstant
|
|
import com.swago.baseswago.dialog.ForceOfflineDialog
|
|
import com.swago.baseswago.dialog.ForceOfflineDialog
|
|
|
|
+import com.swago.baseswago.inter.ApiManager
|
|
import com.swago.baseswago.util.ActivityManagerUtil
|
|
import com.swago.baseswago.util.ActivityManagerUtil
|
|
import com.swago.baseswago.util.AppContext
|
|
import com.swago.baseswago.util.AppContext
|
|
|
|
+import com.swago.baseswago.util.SwagoInfo
|
|
import com.swago.baseswago.util.UserInfo
|
|
import com.swago.baseswago.util.UserInfo
|
|
import com.tencent.qcloud.tim.uikit.TUIKit
|
|
import com.tencent.qcloud.tim.uikit.TUIKit
|
|
import com.tencent.qcloud.tim.uikit.TUIKitImpl
|
|
import com.tencent.qcloud.tim.uikit.TUIKitImpl
|
|
@@ -21,6 +23,8 @@ import com.tencent.qcloud.tim.uikit.base.IMEventListener
|
|
import com.tencent.qcloud.tim.uikit.config.TUIKitConfigs
|
|
import com.tencent.qcloud.tim.uikit.config.TUIKitConfigs
|
|
import com.zy.multistatepage.MultiStateConfig
|
|
import com.zy.multistatepage.MultiStateConfig
|
|
import com.zy.multistatepage.MultiStatePage
|
|
import com.zy.multistatepage.MultiStatePage
|
|
|
|
+import kotlinx.coroutines.runBlocking
|
|
|
|
+import org.json.JSONObject
|
|
import java.io.File
|
|
import java.io.File
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -42,7 +46,7 @@ class SwagoApp : Application() {
|
|
Firebase.crashlytics.setUserId(it.user_account)
|
|
Firebase.crashlytics.setUserId(it.user_account)
|
|
}
|
|
}
|
|
Firebase.crashlytics.setCrashlyticsCollectionEnabled(!BuildConfig.DEBUG)
|
|
Firebase.crashlytics.setCrashlyticsCollectionEnabled(!BuildConfig.DEBUG)
|
|
- CrashHandler.getInstance().init(this)
|
|
|
|
|
|
+ pushCrash()
|
|
ActivityManagerUtil.get().init(this)
|
|
ActivityManagerUtil.get().init(this)
|
|
ARouter.init(this)
|
|
ARouter.init(this)
|
|
//svga缓存
|
|
//svga缓存
|
|
@@ -71,6 +75,22 @@ class SwagoApp : Application() {
|
|
})
|
|
})
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ private fun pushCrash() {
|
|
|
|
+ Thread.setDefaultUncaughtExceptionHandler { t, ex ->
|
|
|
|
+ runBlocking {
|
|
|
|
+ val jsonObject = JSONObject()
|
|
|
|
+ UserInfo.getUserInfo()?.let {
|
|
|
|
+ jsonObject.put("id" , it.id)
|
|
|
|
+ }
|
|
|
|
+ jsonObject.put("version", SwagoInfo.getVersionCode())
|
|
|
|
+ jsonObject.put("device" , SwagoInfo.getDeviceInfo())
|
|
|
|
+ jsonObject.put("message","${ex.message}")
|
|
|
|
+ jsonObject.put("detail", ex.stackTraceToString())
|
|
|
|
+ ApiManager.configApi.pushCrash(jsonObject.toString())
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
override fun attachBaseContext(base: Context?) {
|
|
override fun attachBaseContext(base: Context?) {
|
|
super.attachBaseContext(base)
|
|
super.attachBaseContext(base)
|
|
MultiDex.install(this)
|
|
MultiDex.install(this)
|