android– 检测服务崩溃

android– 检测服务崩溃,第1张

概述我有一个服务,onStartCommand()与此类似:private User user; @Override public int onStartCommand(@Nullable final Intent intent, final int flags, final int startId) { if (user == null) {

我有一个服务,onStartCommand()与此类似:

private User user;@OverrIDepublic int onStartCommand(@Nullable final Intent intent,final int flags,final int startID) {    if (user == null) {        user = UserList.getInstance().getSpecialUser();    }    Assert.assertNotNull(user);    //    // Build notification here,SEOmehow based on user object    //    startForeground(42,notification);    return START_STICKY;}

显然,我希望我的服务在前台运行,并尽可能长时间运行.

这很有效,直到我的应用程序崩溃到其网络类的深处.当发生时,是否显示应用程序崩溃对话框,用户确认它,重新创建整个应用程序,还重新创建服务,但UserList现在为空,因此getSpecialUser()返回null并且Assert再次使用该应用程序. AndroID在主屏幕中放弃和用户结束.

有没有办法检测崩溃,这将使我能够更优雅地处理这种情况?

最佳答案在您的应用程序中创建一个uncaughtExceptionHandler

public class MyApplication extends androID.app.Application{    @OverrIDe    public voID onCreate() {        super.onCreate();        Thread.setDefaultUncaughtExceptionHandler(new UncaughtExceptionHandler() {            @OverrIDe            public voID uncaughtException(Thread arg0,Throwable arg1) {                doSomething();            }        });    }}
总结

以上是内存溢出为你收集整理的android – 检测服务崩溃全部内容,希望文章能够帮你解决android – 检测服务崩溃所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1149722.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-31
下一篇 2022-05-31

发表评论

登录后才能评论

评论列表(0条)

保存