Merge branch 'dev_robotaxi-d_240523_6.4.4' of gitlab.zhidaoauto.com:SCA/L4HA/AndroidApp/MoGoEagleEye into dev_robotaxi-d_240523_6.4.4

This commit is contained in:
xinfengkun
2024-06-05 18:09:24 +08:00
26 changed files with 364 additions and 286 deletions

View File

@@ -39,6 +39,7 @@ import com.tencent.matrix.trace.config.SharePluginInfo
import com.tencent.matrix.trace.config.TraceConfig
import com.zhjt.mogo_core_function_devatools.apm.*
import com.mogo.eagle.core.function.api.upgrade.*
import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager
import com.mogo.eagle.core.utilcode.kotlin.lifeCycleScope
import com.mogo.eagle.core.utilcode.util.AppStateManager
import com.mogo.eagle.core.utilcode.util.IAppStateListener
@@ -73,8 +74,10 @@ import com.zhjt.mogo_core_function_devatools.upgrade.UpgradeManager.Companion.up
import com.zhjt.mogo_core_function_devatools.weaknetwork.DetectResultImpl
import com.zhjt.mogo_core_function_devatools.weaknetwork.WeakNetworkStrategy
import com.zhjt.service.chain.ChainLog
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.delay
import kotlinx.coroutines.launch
import java.io.File
import java.lang.ref.WeakReference
import java.util.concurrent.ConcurrentHashMap
@@ -217,6 +220,35 @@ class DevaToolsProvider : IDevaToolsProvider, IAppStateListener {
}
}
/**
* 检查上传崩溃日志
*/
override fun checkUploadCrashLog() {
mContext?.let {
val crashDir = File(it.getExternalFilesDir(null), "crash")
if(crashDir.exists() && crashDir.canExecute() && crashDir.listFiles()?.isNotEmpty() == true){
it.lifeCycleScope.launch(Dispatchers.IO){
val startTime = crashDir.lastModified() - 60*1000
val endTime = if(System.currentTimeMillis() - crashDir.lastModified()>60*1000){
crashDir.lastModified() + 60*1000
}else{
System.currentTimeMillis()
}
var isUploadSuccess = false
try {
CallerDevaToolsManager.logcat()?.upload(startTime, endTime)
isUploadSuccess = true
} catch (t: Throwable) {
t.printStackTrace()
}
if(isUploadSuccess){
crashDir.deleteRecursively()
}
}
}
}
}
private fun initMatrix() {
val builder: Matrix.Builder = Matrix.Builder(AbsMogoApplication.getApp())
builder.pluginListener(object : PluginListener {

View File

@@ -23,7 +23,6 @@ import com.mogo.eagle.core.data.app.AppConfigInfo
import com.mogo.eagle.core.function.api.devatools.logcat.*
import com.mogo.eagle.core.utilcode.download.DownloadUtils
import com.zhidao.loglib.bean.RemoteLogPushContent
import com.zhjt.mogo_core_function_devatools.BuildConfig
import com.zhjt.mogo_core_function_devatools.logcat.checker.AnrLogChecker
import com.zhjt.mogo_core_function_devatools.logcat.config.LogRecordConfig
import com.zhjt.mogo_core_function_devatools.logcat.uploader.*
@@ -130,18 +129,16 @@ internal class MoGoLogRecordProviderImpl: IMoGoLogRecordProvider,
.systemTags("ActivityManager")
.checker(AnrLogChecker())
}
if (BuildConfig.DEBUG) {
builder.crashConfig(
CrashConfig.Builder()
.enabled(true)
.crashDir(File(context.getExternalFilesDir(null), "crash"))
.expireDuration(TimeUnit.DAYS.toMillis(3))
.javaCrash(true)
.nativeCrash(true)
.anr(true)
.build()
)
}
builder.crashConfig(
CrashConfig.Builder()
.enabled(true)
.crashDir(File(context.getExternalFilesDir(null), "crash"))
.expireDuration(TimeUnit.DAYS.toMillis(3))
.javaCrash(true)
.nativeCrash(true)
.anr(true)
.build()
)
builder.extraFilesToUpload(object : IExtraFileToUpload {
override fun filesToUpload(): List<ToUploadFile> {
return ArrayList<ToUploadFile>().also {