自定义UncaughtExceptionHandler类中的start活动不再起作用

时间:2019-03-17 07:54:51

标签: android android-thread

我曾经使用此类处理异常错误,并将错误作为String传递给show的另一个活动,但是这种方式不再起作用,似乎在执行kill过程时“ sag.class”活动无法再启动

print ("y = " + str(test_set_y[0, int(index)]) + ", you predicted that it is a \"" + classes[int(d["Y_prediction_test"][0,index])].decode("utf-8") +  "\" picture.")

那么如何用新方法在UncaughtExceptionHandler类中启动活动?

2 个答案:

答案 0 :(得分:0)

尝试一下,请添加此代码以开始新的活动

Intent startAppIntent = new Intent(this, sag.class);
        startAppIntent.putExtra("error", errorReport.toString());
        startAppIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
        startAppIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        startActivity(startAppIntent);
        System.exit(1);

如果this不起作用,则可以将myContext更改为this。请让我们知道此代码是否适合您。

答案 1 :(得分:0)

简短的回答:是的,您可以从UncaughtExceptionHandler开始一项活动。

fun restartApp(context : Context) {
    val intent = Intent(context, Destination::class.java)
    intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)
    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
    context.startActivity(intent)
    android.os.Process.killProcess(android.os.Process.myPid())
    exitProcess(0)
}

您还可以在此link

中找到退出状态编号