Android/Java:UncaughtExceptionHandler和Bugsnag并行?
我正在使用Bugsnag进行自动错误报告,并希望在应用程序崩溃时执行一些额外的操作,如重新启动 问题:两者都是单独工作的,但不是组合工作的。只要我添加Android/Java:UncaughtExceptionHandler和Bugsnag并行?,java,android,exception,error-handling,bugsnag,Java,Android,Exception,Error Handling,Bugsnag,我正在使用Bugsnag进行自动错误报告,并希望在应用程序崩溃时执行一些额外的操作,如重新启动 问题:两者都是单独工作的,但不是组合工作的。只要我添加MyUncaughtExceptionHandler,Bugsnag就会停止报告 应用程序 public class App extends Application { @Override public void onCreate() { super.onCreate(); Bugsnag.init
MyUncaughtExceptionHandler
,Bugsnag就会停止报告
应用程序
public class App extends Application {
@Override
public void onCreate() {
super.onCreate();
Bugsnag.init(this);
// "Breaks" Bugsnag:
Thread.setDefaultUncaughtExceptionHandler(
new MyUncaughtExceptionHandler(this, MainActivity.class));
}
}
MyUncaughtExceptionHandler
public class MyUncaughtExceptionHandler implements
java.lang.Thread.UncaughtExceptionHandler {
private final Context mContext;
private final Class<?> mActivityClass;
public MyUncaughtExceptionHandler(Context context, Class<?> c) {
mContext = context;
mActivityClass = c;
}
public void uncaughtException(Thread thread, Throwable exception) {
Bugsnag.notify(exception);
Intent intent = new Intent(mContext, mActivityClass);
mContext.startActivity(intent); // restarts the app
Process.killProcess(Process.myPid());
System.exit(0);
}
}
公共类MyUncaughtExceptionHandler实现
java.lang.Thread.UncaughtExceptionHandler{
私有最终上下文mContext;
私人期末班mActivityClass;
公共MyUncaughtExceptionHandler(上下文,c类){
mContext=上下文;
mActivityClass=c;
}
公共无效未捕获异常(线程、可丢弃异常){
错误通知(例外);
意向意向=新意向(mContext、mActivityClass);
mContext.startActivity(intent);//重新启动应用程序
Process.killProcess(Process.myPid());
系统出口(0);
}
}
我已经尝试调用MyUncaughtExceptionHandler
中的Bugsnag.notify(异常)
有什么想法吗?提前谢谢 我在这里看到了你的帖子,但如果你想得到有保证的回复,一定要通过Bugsnag支持联系我们 问题是,当您调用
Thread.setUncaughtExceptionHandler
时,您正在删除Bugsnag在此处设置的处理程序:
为了让Bugsnag检测到任何东西,您需要调用原始处理程序
请注意,在Android应用程序中,我们通常不建议使用终止进程并启动新意图的方法。谢谢,Matt!它在移动
Bugsnag.init(this)后工作
在Thread.setDefaultUncaughtExceptionHandler(…)
下“请注意,在Android应用程序中,通常不建议使用终止进程和启动新意图的方法。”---当应用程序出现故障时,我会重新启动应用程序。这是最糟糕的情况,我正在尽力处理所有异常。你有别的办法吗?谢谢