当我的应用程序在不同的例外情况下崩溃时,我的应用程序关闭并显示错误消息
不幸的是," AppName"已停止
我想阻止这种情况并让应用程序保持活力,如果有人知道最佳做法,那么请帮助我。
由于
答案 0 :(得分:2)
这就是我所做的。当应用程序意外崩溃时,此类会将用户重定向到我的登录屏幕。
public class DefaultExceptionHandler implements Thread.UncaughtExceptionHandler {
Activity activity;
public DefaultExceptionHandler(Activity activity) {
this.activity = activity;
}
@Override
public void uncaughtException(Thread thread, final Throwable ex) {
Intent intent = new Intent(activity, LoginActivity.class);
intent.putExtra(activity.getString(R.string.app_crashed), ex);
Log.d("ERROR","---------" + ex.getMessage());
Log.d("ERROR","--------" + ex.getCause());
Log.d("ERROR","--------" + Arrays.toString(ex.getStackTrace()));
activity.startActivity(intent);
activity.finish();
System.exit(0);
}
}
并在onCreate()方法中以这种方式调用它:
Thread.setDefaultUncaughtExceptionHandler(new DefaultExceptionHandler(this));
答案 1 :(得分:0)
您可以使用try catch代码。
例如:
try{
// your code here
}
catch (Exception e)
{
}
您的应用不会崩溃。谢谢。