From 27f954a8c8eeedcd7f7dfaa55a5d5d710a359b4c Mon Sep 17 00:00:00 2001 From: yezhiqiu <983577727@qq.com> Date: Mon, 17 Nov 2025 09:48:42 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=93=9D=E7=89=99=E7=9B=B4?= =?UTF-8?q?=E6=92=AD=EF=BC=8C=E5=90=8C=E6=97=B6=E8=8E=B7=E5=8F=96=E7=BD=91?= =?UTF-8?q?=E7=BB=9C=E8=BD=A8=E8=BF=B9=E7=9A=84bug=EF=BC=9B=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E5=87=BA=E7=8E=B0=E9=97=AA=E9=80=80=EF=BC=8C5?= =?UTF-8?q?=E7=A7=92=E8=87=AA=E5=8A=A8=E9=80=80=E5=87=BAAPP=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 6 +- .../java/com/abbidot/tracker/MyApplication.kt | 3 + .../tracker/ui/activity/HomeV2Activity.kt | 27 +++++-- .../tracker/ui/activity/map/LiveActivityV2.kt | 10 ++- .../com/abbidot/tracker/util/CrashHandler.kt | 75 ++++++++++++++++++ .../tracker/util/bluetooth/SRBleUtil.kt | 3 +- .../tracker/vm/FindBleDeviceViewModel.kt | 9 +-- .../main/res/mipmap-xhdpi/logo_abbidot.jpg | Bin 3330 -> 0 bytes .../main/res/mipmap-xhdpi/logo_abbidot.png | Bin 4907 -> 5175 bytes .../main/res/mipmap-xxhdpi/logo_abbidot.png | Bin 7277 -> 7297 bytes .../main/res/mipmap-xxxhdpi/logo_abbidot.png | Bin 10193 -> 9797 bytes app/src/main/res/values-zh-rCN/strings.xml | 1 + app/src/main/res/values/strings.xml | 1 + .../abbidot/baselibrary/constant/MMKVKey.kt | 2 + 14 files changed, 119 insertions(+), 18 deletions(-) create mode 100644 app/src/main/java/com/abbidot/tracker/util/CrashHandler.kt delete mode 100644 app/src/main/res/mipmap-xhdpi/logo_abbidot.jpg diff --git a/app/build.gradle b/app/build.gradle index 857d45c..5d3c80d 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -28,9 +28,9 @@ android { applicationId "com.abbidot.tracker" minSdkVersion 23 targetSdkVersion 35 - versionCode 2100 -// versionName "2.1.0" - versionName "2.1.0-Beta1" + versionCode 2101 +// versionName "2.1.1" + versionName "2.1.1-Beta1" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" diff --git a/app/src/main/java/com/abbidot/tracker/MyApplication.kt b/app/src/main/java/com/abbidot/tracker/MyApplication.kt index 933dcdd..6891e9e 100644 --- a/app/src/main/java/com/abbidot/tracker/MyApplication.kt +++ b/app/src/main/java/com/abbidot/tracker/MyApplication.kt @@ -11,6 +11,7 @@ import coil.decode.GifDecoder import coil.decode.ImageDecoderDecoder import com.abbidot.baselibrary.util.AppUtils import com.abbidot.baselibrary.util.MMKVUtil +import com.abbidot.tracker.util.CrashHandler import com.hjq.toast.Toaster import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager import dagger.hilt.android.HiltAndroidApp @@ -76,6 +77,8 @@ class MyApplication : Application() { //设置全局唯一实例 Coil.setImageLoader(imageLoader) } + + CrashHandler().init(this) } /** diff --git a/app/src/main/java/com/abbidot/tracker/ui/activity/HomeV2Activity.kt b/app/src/main/java/com/abbidot/tracker/ui/activity/HomeV2Activity.kt index fd28499..6db9e4e 100644 --- a/app/src/main/java/com/abbidot/tracker/ui/activity/HomeV2Activity.kt +++ b/app/src/main/java/com/abbidot/tracker/ui/activity/HomeV2Activity.kt @@ -48,6 +48,7 @@ import com.abbidot.tracker.util.Util import com.abbidot.tracker.util.ViewUtil import com.abbidot.tracker.util.bluetooth.SRBleUtil import com.abbidot.tracker.vm.ConnectionDeviceViewModel +import com.abbidot.tracker.vm.CountDownTimerViewModel import com.abbidot.tracker.vm.DataViewModel import com.abbidot.tracker.vm.LogBleReportViewModel import com.abbidot.tracker.vm.SocketSendMessageViewModel @@ -74,6 +75,7 @@ class HomeV2Activity : BaseActivity(ActivityHomeV2Binding private val mAutomaticConnectionDeviceViewModel: ConnectionDeviceViewModel by viewModels() private val mSubscriptionViewModel: SubscriptionManageViewModel by viewModels() private val mLogBleReportViewModel: LogBleReportViewModel by viewModels() + private val mCountDownTimerViewModel: CountDownTimerViewModel by viewModels() private val mSocketSendMessageViewModel: SocketSendMessageViewModel by viewModels() private var mChangePetDialog: CommonListDialog? = null @@ -168,18 +170,26 @@ class HomeV2Activity : BaseActivity(ActivityHomeV2Binding // intent.putExtra("REBOOT", "reboot") // startActivity(intent) - //预先加载相册,防止上传头像几千张照片加载慢 - XXPermissions.with(this).permission(PermissionLists.getReadMediaImagesPermission()) - .request { _, allGranted -> - if (allGranted) { - EasyPhotos.preLoad(this) + //出现闪退,5秒退出APP + val isCrash = MMKVUtil.getBoolean(MMKVKey.isCrash, false) + if (isCrash) { + MMKVUtil.putBoolean(MMKVKey.isCrash, false) + showToast(R.string.txt_show_crash) + mCountDownTimerViewModel.startCountDown(6) + } else { + //预先加载相册,防止上传头像几千张照片加载慢 + XXPermissions.with(this).permission(PermissionLists.getReadMediaImagesPermission()) + .request { _, allGranted -> + if (allGranted) { + EasyPhotos.preLoad(this) // { // runOnUiThread { // showToast("相册加载完成") // } // } + } } - } + } } override fun liveDataObserve() { @@ -191,6 +201,11 @@ class HomeV2Activity : BaseActivity(ActivityHomeV2Binding Dispatchers.Unconfined‌:不对协程的执行环境做任何限制,协程将在调用它的线程中执行,直到遇到挂起函数为止,之后会在恢复执行时继续在之前的线程中执行‌ */ + //出现闪退,5秒退出APP + mCountDownTimerViewModel.mCountDownEndLiveData.observe(this) { + finish() + System.gc() + } //退出登录 XEventBus.observe(this, EventName.LogOut) { finish() diff --git a/app/src/main/java/com/abbidot/tracker/ui/activity/map/LiveActivityV2.kt b/app/src/main/java/com/abbidot/tracker/ui/activity/map/LiveActivityV2.kt index 719a419..714dbab 100644 --- a/app/src/main/java/com/abbidot/tracker/ui/activity/map/LiveActivityV2.kt +++ b/app/src/main/java/com/abbidot/tracker/ui/activity/map/LiveActivityV2.kt @@ -304,9 +304,11 @@ class LiveActivityV2 : BaseActivity(ActivityLiveV2Binding //直播开始 else -> { //直播开启后,就去获取直播轨迹 - mMapLiveViewModel.mGetPetLivePointTimeStamp = - System.currentTimeMillis() / 1000 - mMapLiveViewModel.getPetLivePoint(deviceId) + if (!BleManager.getInstance().isConnected(macID)) { + mMapLiveViewModel.mGetPetLivePointTimeStamp = + System.currentTimeMillis() / 1000 + mMapLiveViewModel.getPetLivePoint(deviceId) + } } } } @@ -987,6 +989,8 @@ class LiveActivityV2 : BaseActivity(ActivityLiveV2Binding ilLiveV2BluetoothFindDevice.btnLiveV2StopRadar -> { if (isLiveJump) { + isOpenSound = true + setSound() showAndHideFindLayout() mFindBleDeviceViewModel.stopFindDevice() } else { diff --git a/app/src/main/java/com/abbidot/tracker/util/CrashHandler.kt b/app/src/main/java/com/abbidot/tracker/util/CrashHandler.kt new file mode 100644 index 0000000..c22e979 --- /dev/null +++ b/app/src/main/java/com/abbidot/tracker/util/CrashHandler.kt @@ -0,0 +1,75 @@ +package com.abbidot.tracker.util + +import android.content.Context +import android.os.Process +import com.abbidot.baselibrary.constant.MMKVKey +import com.abbidot.baselibrary.util.LogUtil +import com.abbidot.baselibrary.util.MMKVUtil + +/** + *Created by .yzq on 2025/11/14/周五. + * @link + * @description: + */ +class CrashHandler : Thread.UncaughtExceptionHandler { + + private val mTAG = "CrashHandler" + private lateinit var mContext: Context +// private var mDefaultHandler: Thread.UncaughtExceptionHandler? = null + + override fun uncaughtException(t: Thread, e: Throwable) { + LogUtil.e(mTAG, "当前进程id:" + Process.myPid()) +// LogUtil.e(mTAG, "异常信息:" + Log.getStackTraceString(e)) + +// mDefaultHandler?.uncaughtException(t, e) + + MMKVUtil.putBoolean(MMKVKey.isCrash, true) + +// restartApp() + } + + + fun init(context: Context) { + mContext = context.applicationContext +// mDefaultHandler = Thread.getDefaultUncaughtExceptionHandler()!! + Thread.setDefaultUncaughtExceptionHandler(this) + } + + + private fun restartApp() { +// val intent = mContext.packageManager.getLaunchIntentForPackage(mContext.packageName) +// if (intent != null) { +// intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP or Intent.FLAG_ACTIVITY_NEW_TASK) +// mContext.startActivity(intent) +// Process.killProcess(Process.myPid()) +// exitProcess(0) +// } + + +// val intent = mContext.packageManager.getLaunchIntentForPackage(mContext.packageName) +// intent?.apply { +// addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP or Intent.FLAG_ACTIVITY_NEW_TASK) +// mContext.startActivity(this) +// Process.killProcess(Process.myPid()) +// System.exit(0) +// } + +// Process.killProcess(Process.myPid()) +// +// val intent = Intent(mContext, SplashActivity::class.java) +// val restartIntent = PendingIntent.getActivity( +// mContext.applicationContext, +// 0, +// intent, +// PendingIntent.FLAG_IMMUTABLE or PendingIntent.FLAG_CANCEL_CURRENT +// ); +// //退出程序 +// val mgr = +// mContext.applicationContext.getSystemService(Context.ALARM_SERVICE) as AlarmManager +// // 1秒钟后重启应用 +// mgr.set( +// AlarmManager.RTC, System.currentTimeMillis() + 1000, restartIntent +// ) +// exitProcess(0) + } +} \ No newline at end of file diff --git a/app/src/main/java/com/abbidot/tracker/util/bluetooth/SRBleUtil.kt b/app/src/main/java/com/abbidot/tracker/util/bluetooth/SRBleUtil.kt index 1f2ca2d..476dae9 100644 --- a/app/src/main/java/com/abbidot/tracker/util/bluetooth/SRBleUtil.kt +++ b/app/src/main/java/com/abbidot/tracker/util/bluetooth/SRBleUtil.kt @@ -187,6 +187,7 @@ class SRBleUtil private constructor() { fun openNotify( bleDevice: BleDevice, gatt: BluetoothGatt, uuid_service: String, uuid_notify: String ) { + val notifyId = uuid_notify.split("-")[0] BleManager.getInstance() .notify(bleDevice, uuid_service, uuid_notify, object : BleNotifyCallback() { override fun onNotifySuccess() { @@ -204,7 +205,7 @@ class SRBleUtil private constructor() { override fun onCharacteristicChanged(data: ByteArray?) { val formatData = HexUtil.formatHexString(data, true) - LogUtil.e("设备响应指令,${bleDevice.mac}->" + formatData) + LogUtil.e("设备响应指令,${bleDevice.mac},$notifyId->" + formatData) data?.apply { val data0 = SRBleCmdUtil.instance.byteToInt(data[0]) val data1 = SRBleCmdUtil.instance.byteToInt(data[1]) diff --git a/app/src/main/java/com/abbidot/tracker/vm/FindBleDeviceViewModel.kt b/app/src/main/java/com/abbidot/tracker/vm/FindBleDeviceViewModel.kt index 90337be..b547819 100644 --- a/app/src/main/java/com/abbidot/tracker/vm/FindBleDeviceViewModel.kt +++ b/app/src/main/java/com/abbidot/tracker/vm/FindBleDeviceViewModel.kt @@ -19,7 +19,6 @@ import com.clj.fastble.BleManager import com.clj.fastble.callback.BleRssiCallback import com.clj.fastble.callback.BleScanCallback import com.clj.fastble.data.BleDevice -import com.clj.fastble.data.BleScanState import com.clj.fastble.exception.BleException import com.clj.fastble.scan.BleScanRuleConfig import kotlinx.coroutines.Dispatchers @@ -275,10 +274,6 @@ class FindBleDeviceViewModel : ViewModel() { fun stopFindDevice() { if (!isStartFindBleDevice) return SRBleUtil.instance.cancelBleScan("停止查找设备取消扫描蓝牙") - mSoundPool?.apply { - if (mStreamID > 0) stop(mStreamID) - release() - } //还原手机原来的音量 setVolume(mPhoneOriginalVolume) isStartFindBleDevice = false @@ -287,6 +282,10 @@ class FindBleDeviceViewModel : ViewModel() { override fun onCleared() { super.onCleared() + mSoundPool?.apply { + if (mStreamID > 0) stop(mStreamID) + release() + } stopFindDevice() } } \ No newline at end of file diff --git a/app/src/main/res/mipmap-xhdpi/logo_abbidot.jpg b/app/src/main/res/mipmap-xhdpi/logo_abbidot.jpg deleted file mode 100644 index 28b585bb05d76c4b72c3ce40057dd5ee1a301e16..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3330 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 Y&(s&VT-}p~sM_@Rhr`+nB1QD*zje!5kpKVy diff --git a/app/src/main/res/mipmap-xhdpi/logo_abbidot.png b/app/src/main/res/mipmap-xhdpi/logo_abbidot.png index a97961e62b22a555d4299cae23f3f37ecc80457f..269cf00802c09b3b7ad235d3c602614e7b3f786e 100644 GIT binary patch literal 5175 zcmaJ_XIN9)whaOT(z`%_7^Fx`p+|_600PphNDoy=LJ7S^st5v#w9rACqO>C&>7pV? zk*@SANH2nvhv%Mi?)&l1+uyhMT5Iny#++-e@n`NBJsox0E1XvV006DVZIr>qX!HA~ zynOMTOY@bz7&!2%W_UxKBi`56(*dAlkF#?CX<%%f91I+6?fpGIILHG4qyjERW_UC0 zI|wumBX0W}BkqTBzhDCZ^0)llZPBg{c#xfglM7Y>yxG_S2D#WPfK8>eq1x^$4$dyO z13VoJ19Xhg0j_8{d+;qJNZt=|A%Jnf+k*TsZdfmbp91(#UBt!w_iG3k^d|)GssR2^ zQfAtEAQhaa14vFBCWeMWB|tKA;&Re*P+M6UN3gQ-E4lu^oRQc}urS-7f%98~&mE((YC#yDW{e{=2s%a!?8?r%F_+%F=d z96Vio9PHIRaTw5_dq%kYdoGgys`nSy{@-(v`d2RGA{ofW~wP^^JcGV+^Px1`1=8P}ZcxbgHBV2CySzFLG7Fgw}vA9^H= z>iVOi%kfvNY%QjGe%h(oe2}%$Zz9Nkv`8L!Nkao~ZKVl=mQ>pl7(Z(9?396mTQX`i zh?1KEN1I2wgO^C-dvDT=yPj(A3Wo0FoMu%Y)*g;8M|42%@Dc1i{TNbjUr7Z9(2)>g z*1!!yX><1<64UBDxKW{Go&0o)Ktf$7$wN|xR9S!rV2+7mW`yai7hmlYO?o+;$ET4L zNXKqhdG&*aCM8*zEFdq1NHlkw-lh__d>fGxFaE{iZCuI$UEL?QrRTSB@5A*3x)b;C zEG%p`x6L^{y{cflZv$brCqHB;F41&cO~3l2Lp>graMle}%S!GLpe(-?!K5an>)5Hu z$_I{y>VHrKy`2qA{*GVjD;-MbzKOK8GmCSR{&E{@#?z~_)i=30vu})3nH+?=>ttqL zE=AEq`5cI(d%l}j3O!EgnC+jxKkM%A&R{q^IjoUgAC#>_SPq5p#p+q*+_=M$!XXhM#8TvVMdWgjU z-Xc7hBtrZkaSh_f7Fm{*361pF+MDu534}Jmc=O3`v}SR8Uzd6_V6G!&_vi^Z3cI4n zy?sSv6Xa_8M#YV@0Fd7db!5M^(a^HtCNVxZbkb`LkeF;rNQpu`WGU4XT69MM2l7Jf zC1sDlLcJv)h_K|nsi#^U*rt7wo>(cD`Gu$Yqp1VCqA;tv_EA~g@iFCteUO;%Re7D8 z@WC�Xu74l-zb4KbJr6w6_cx!6KzqNnLb>DyHNw@THOg9)`uGjKNTW|$?9XW zkK`fR_FUg9#_iy2njl7R^p)HTfDhedB63I-Wo|j&H*g8Ic8(W^h8|CRt=i!&1@>lqpoH3w}nK!pgP=e46R;HK; z$tV?IlgNs+-|Z$FH`mU5opT+W8Z=a8nQY)DtQ#!$OMmt~ZEd6s|tGE-=`A9^@FZo&Zoa zXS!X-waNiDvY#OrMr=nGCTN39j3Et0bu% zF};lL8_KN4Z|`I+*6uLh-dr~gDIaGuSgg*+xITdMvu0^aF&t;sT62qNDDj><9j#Sz zQ8b;c)i&XwZMSmz4DJ+I>7Jk06!F9u=$mo6tZeLsDS<8X^i~7~_mL+dLn&kAHq&k4 zQ-S+3<)8VChMsrFmN#A2R>GQ*W>*_e>tTq!CM~bg^4Klrr2f4h$yB z0F2cHM~|9(bl7rwmDIi5KXSU^%h=O+;y|#tJ=QBV z0MoUu%sn9}hFK+f^gBM}XICyI3l<=qFu#YU1{8c)Ig~nW*3EkHNEQHQ@^)Hu46jT- z<*dB)HdQWNbY$#OE34w$>G?*1fmGL+Kep96!0wdxa zRW3u>v_o`5KA$t-*_FuYQA)olp0UDVHF5$8=Be4jcNcAT{ntaQV1dCOfkz+LGDGbd zu072av^Tn;aaKD$IPz2s0nORiXY=Sm%E$Uzs6 z{7w?DI*>q&oeof8%s;u|I~^V!vd2&bj|MAP($-thQIixER5QO4!^rC0jS;(7+x~T& zjg6UQ@6zMtY--vbezk~M73Ws?<*x_!aG8|n3=>yCN_1X;UaEmCRh5i?KVbg)^&KD=)g3rc*>@0RazvDP7t*) z_2`Si*Azw{B9K`1EG~#PE0Dja3&Qn*mGZ)T-C@>ZZ7&wJ_%^BW(oG&E929G`&M-Nf zH;7=-XcFB{^%R2$*s6i3aF5#E8n_RMpWT#%S<6yz$wQ8vVusj4Uz3-t(sMMrIpytX z`l^hEXPMmW+tKCbcLgbptFC^qLtYOPDe79a>qmPP^x9Lb2d9~ry<@+{O&a379H~O8 zsEy%{Vr5f&N{k`975*uLj1j>({?VSk0UwYb_q;-QYGPTb??uPT1{7@{!ld6o*a`XU zOQsPt$RoqS>a_Ndh_d)1E~FY#C2J3e=*(bYTTsa=c<|qsF4?Cmn<6Gd4`I$RnE5Tnoc)x`lh3b zvOzN{=PifB%1D&jnoc;Q1c|OnP&bZFMhW+W+T7_{dAtq}ky_;*x_@{8&(8;AF6vtn zsZ_~lI+Ck@-_uK;@VRjKK2NIeqI|TKiXC+`4^zz5U&wE&*@3Qv14g3%==Y?n#TsE9 ztUhX+XrYqGc+7?-HYPqM7DqNxT)8dBzp8vij~ zR$(q$@*1I%ut~9{NitIJBhecWDV#8G;~L2V4hk7(5C!B-i}Bx*p@>Zt?cyqLz7!*x zit%>;)Fl&`l9;GiTYR+aK~8TewtrQka-F#A^o9(;2*Ib@4_=q@c(*(mi0+}->-kuy zrKczPXenTQ-Nc-51pT)c>w_(&xa;oImYD}Me#84t>6Q$M|^T z?+(LuI2ZZ);y!}wnG0Or=vjalpdZqm0Bqk$#t|yh`;|^EMML&(`X8SDG2Ekxv}imd z?zUvfWkyue*)=LCNtr9Ex%*aAz1$q_v=X+1?!4@R%*-wJTz#6X?tGs+ixvHnMVXw; zHR`FvZZ01mX6?X|bh-Pv;M`H5RLP6)s7razA4pmVEX;S-BAzAmwxap-?n-eCE6h&? zFI&o=w?k&PD+?DsS-5lH3caEFB3T<>YN}`Vyp1PW*L3D*R!zQ|WGX3c<$gXrJ$dHc zKqZfix84ZT6jL3Y+tDj+Wnpd<5Wm|%!~6Pfc%QWORJ5QnxbfQq#T5r_5?Ngy4&$uO zPv5+!!+%Z|-z@jXjMT)AdFGP9;lh%_FiYCd0y{Y$y()C!o6(qqcRX=o`tx5tD>p== z+%9T#6FDC9Ehjjh_Fhd`4;nU)7VKn@h@q&<;mjjQ_Q(1D*Bg=<+zkt<{P2HpdYy|Y09_-{T!gkodrAP- z z?a|j4fJ}rJo9~ny2eU|#?al&kZe{5QE}`BK8sEM;c4mQO^tk4x8Ym~UlH%}l6TRVP zJv}}0C!mZ?q`@2EHdaS9{Knhw=WJ+qTspm7J9pt&g^NV9;PS9qJ9(zX|qI8>`19oh7ntAP!ny7K!phKBcg;vlCa624PId%?TxqIMf^124~J zGrhb2rr&FEk@b^T%hqdKv%NX3Pub1C(rzp?jxCb`mlg|q@{dXB^iQdnwQa9GdK8UbSLK=o_4$NZ8R6QR zd)ZSlmz=s1*i-y9vi!q}X748@hsD&r%x^#1&sxs8aj(syR)>nfPAC{1?~Awwsz<^A zcsdPl$X2MV_lCR1+GpKTMpxSt3f1j2#=jG^H>pa!_0^3~2lG3~w6YUDSnzU7lGF$iYIk^nbZozVs*rIvg9N0?{HSm*P-W7ERTUo&n8s*a!`Rz z>?|<`@>{K>dlJNZ#Kb2smhO0g(~!xix_VKxb|9eO_IX_V=$m4OJb~Yh|0T{{i#DItTy& literal 4907 zcmV+`6V&X9P)004R>004l5008;`004mK004C`008P>0026e000+ooVrmw00006 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

vYLwm%CKZ!D7;)=iPz1&HTUMt%qH19s@1c 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 MqM!+^ld}l_FL)prI{*Lx literal 10193 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 diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml index e32073f..10db7e4 100644 --- a/app/src/main/res/values-zh-rCN/strings.xml +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -971,5 +971,6 @@ 更新于:%s 低至 + APP出现异常,即将退出! \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index b3c12f8..5250355 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1047,5 +1047,6 @@ Expiry Time: %s Year Care Saved. Active when online. + The program has an exception and is about to exit \ No newline at end of file diff --git a/baselibrary/src/main/java/com/abbidot/baselibrary/constant/MMKVKey.kt b/baselibrary/src/main/java/com/abbidot/baselibrary/constant/MMKVKey.kt index f6b9920..a30c933 100644 --- a/baselibrary/src/main/java/com/abbidot/baselibrary/constant/MMKVKey.kt +++ b/baselibrary/src/main/java/com/abbidot/baselibrary/constant/MMKVKey.kt @@ -36,6 +36,7 @@ import androidx.annotation.StringDef MMKVKey.OnlyGoogleMap, MMKVKey.MapType, MMKVKey.ShowFence, + MMKVKey.isCrash, MMKVKey.Shared ) @Retention(AnnotationRetention.SOURCE) @@ -95,5 +96,6 @@ annotation class MMKVKey { //是否分享的 const val Shared = "shared" + const val isCrash = "isCrash" } }