从后台回来时如何防止碎片崩溃的活动?

时间:2016-12-21 13:30:38

标签: android android-fragments xamarin

在我的使用AppCompatActivity的应用中,我有一个主Activity,其他所有内容都使用Fragment显示。

然而,我注意到,当我按下主页按钮并在手机上做其他事情时。当我回到应用程序时,它崩溃了“不幸的应用程序已关闭”错误。

我从研究中得知,Activity和其他一切都被摧毁了。一旦App再次打开,一切都会丢失,因此应用程序不知道该怎么做而且崩溃了。

在这种情况下,我该怎么办?

如果应用程序重新打开,我会很高兴它会重新启动,甚至更好地只显示应用程序早先离开的简历。

如何防止我的应用崩溃?

1 个答案:

答案 0 :(得分:1)

如果与firebase崩溃分析集成,请检查您的Android监视器窗口或firebase控制台是否存在确切的异常错误消息。

一种可能是像这样的错误,

java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState
    at android.support.v4.app.FragmentManagerImpl.checkStateLoss(FragmentManager.java:1341)
    at android.support.v4.app.FragmentManagerImpl.enqueueAction(FragmentManager.java:1352)
    at android.support.v4.app.BackStackRecord.commitInternal(BackStackRecord.java:595)
    at android.support.v4.app.BackStackRecord.commit(BackStackRecord.java:574)

可以使用commitAllowingStateLoss()代替此commit()来解决此问题。

请参阅此内容以获取更多信息http://www.androiddesignpatterns.com/2013/08/fragment-transaction-commit-state-loss.html