ecovery捕獲應用崩潰框架,并能恢復崩潰頁面。
1.安裝教程
在項目根目錄下的build.gradle文件中添加。
allprojects {
repositories {
maven {
url'https://s01.oss.sonatype.org/content/repositories/releases/'
}
}}
在entry模塊下的build.gradle文件中添加依賴。
dependencies { implementation('com.gitee.chinasoft_ohos:Recovery:1.0.1')}
在sdk6,DevEco Studio2.2 beta1下項目可直接運行 如無法運行,刪除項目.gradle,.idea,build,gradle,build.gradle文件, 并依據自己的版本創建新項目,將新項目的對應文件復制到根目錄下
使用說明
在entry下的MyApplication中調用
public class MyApplication extends AbilityPackage {
@Override
public void onInitialize() {
super.onInitialize();
Recovery.getInstance()
.debug(true)
.recoverInBackground(false)
.recoverStack(true)
.mainPage(MainAbility.class)
.recoverEnabled(true)
.callback(new MyCrashCallback())
.silent(false, Recovery.SilentMode.RECOVER_ACTIVITY_STACK)
.skip(TestAbility.class)
.init(this);
}
static final class MyCrashCallback implements RecoveryCallback {
@Override
public void stackTrace(String exceptionMessage) {
RecoveryLog.e("exceptionMessage:" + exceptionMessage);
}
@Override
public void cause(String cause) {
RecoveryLog.e("cause:" + cause);
}
@Override
public void exception(String exceptionType, String throwClassName, String throwMethodName, int throwLineNumber) {
RecoveryLog.e("exceptionType:" + exceptionType);
RecoveryLog.e("throwClassName:" + throwClassName);
RecoveryLog.e("throwMethodName:" + throwMethodName);
RecoveryLog.e("throwLineNumber:" + throwLineNumber);
}
@Override
public void throwable(Throwable throwable) {
}
}
}
2.重啟功能需要在entry模塊的config.json中 module 加入屬性mainAbility
"module": { "mainAbility" : "啟動頁的路徑", .....}
3.組件完整代碼地址
https://gitee.com/jltfcloudcn/jump_to/tree/master/Recovery%E5%BA%94%E7%94%A8%E5%B4%A9%E6%BA%83%E6%A1%86%E6%9E%B6%E7%BB%84%E4%BB%B6%E4%BD%93%E9%AA%8C
-
組件
+關注
關注
1文章
513瀏覽量
17849 -
鴻蒙系統
+關注
關注
183文章
2636瀏覽量
66430 -
HarmonyOS
+關注
關注
79文章
1979瀏覽量
30274
發布評論請先 登錄
相關推薦
評論