如何解决IllegalStateException:未设置IAB助手。无法执行操作:handleActivityResult?

时间:2015-01-07 16:55:58

标签: android android-activity in-app-purchase

我使用Trivial Drive示例代码在应用计费中实施。 在startActivityForResult调用的子活动中,我使用任务杀手杀死app。 我重新启动应用程序并按下按钮返回根活动,它在handleActivityResult崩溃。当应用重启时,它从子活动开始。 IAB帮助程序设置在根活动中完成,而不是子活动。因此,它会导致此错误。

我该如何解决这个问题? 当内存不足时,我使用任务杀手模拟Android杀死应用程序。

protected void onActivityResult(int requestCode, int resultCode, Intent data) 
{
    if (!mHelper.handleActivityResult(requestCode, resultCode, data))
        super.onActivityResult(requestCode, resultCode, data);
}

1 个答案:

答案 0 :(得分:0)

我解决了这个问题并且有效。 只有当它从应用程序结算通话中返回时,我才会调用handleActivityResult。 returnFromActivity是全局变量,在我的应用程序的子活动中设置为true。 我不知道为什么mSetupDone为空以及其他人如何解决这个问题。 如果有更好的解决方案,请告诉我。

protected void onActivityResult(int requestCode, int resultCode, Intent data) 
{
    if (!returnFromActivity) {
        if (!mHelper.handleActivityResult(requestCode, resultCode, data))
            super.onActivityResult(requestCode, resultCode, data);
    }
    ....................
}