MainActivity随机刷新,应用程序崩溃

时间:2015-08-13 21:47:23

标签: android android-fragments android-activity

我们正在开发的Android应用使用dataManager对象来处理与所需API和其他相关服务的通信。它是在MainActivity中创建的,然后传递给我们拥有的几个片段,以便它们也可以使用它。最近我们遇到了麻烦,其中一个片段试图访问dataManager,但它已经莫名其妙地成为null。这似乎总是在另一个事件之后发生,这在Android Studio日志中显示:

08-12 15:59:15.296      822-822/<name of our app> I/PhoneWindow﹕[generateLayout] setColorNavigationBar => color=0x ff000001 08-12
08-12 15:59:15.296      822-822/<name of our app> I/PhoneWindow﹕[setNavigationBarColor2] color=0x ff000000

发生这种情况后,应用程序会立即崩溃,因为其中一个片段正在尝试引用dataManager,现在是null。我之前从未见过这个错误,但我怀疑MainActivity正在刷新,因为这两行也是Android Studio日志中出现的第一个。是否有某种方法我应该处理从头开始重新加载的MainActivity以保留当前的应用程序状态,或者我应该以某种方式重新加载应用程序?

1 个答案:

答案 0 :(得分:0)

惊心动魄的结论:我最终尝试使用应用程序旋转我的手机,立即可靠地触发了崩溃。这意味着Jiang YD是正确的,并且应用程序无法正常使用Activity生命周期,并且只要再次调用onDestroy()onCreate(),就会崩溃。我现在使用Bundle来保存关键状态变量,因此应用可以处理这样的事件。