1

我有一个应用程序,它对不同的操作(主要是异步操作)显示不同DialogFragments的响应。我正在使用最新版本的支持库(通过 SDK 管理器不断更新它)

所有动作都抛出Intent回调

意图在 中处理BroadcastReceiver,即在onPostResume回调中注册(并且在 中取消注册onPause)。

捕获意图后立即显示对话框:

if(Constants.SHOW_DIALOG_INTENT.equals(intent.getAction()) {
    showDialog();
}

对话框通过show(FragmentManager, String)方法显示

所以问题是:为什么我IllegalStateException从一些用户那里得到(应用程序被 10k+ 用户使用,但到目前为止只捕获了 10-15 个异常)。我不知道什么会导致这种情况,除了某种竞争条件(在实际调用和实际调用Activity之间下降)showDialog()DialogFragment.show()

我能做些什么来避免这种情况(我知道,0.1% 的错误是可以接受的,但我只是想找出问题所在)?

4

0 回答 0