首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IllegalStateException in IAB V3

IllegalStateException in IAB V3
EN

Stack Overflow用户
提问于 2013-02-25 11:37:37
回答 3查看 2.5K关注 0票数 1

我试图在应用程序计费v3中实现android,我的应用程序崩溃时出现了以下错误:无法启动异步操作(消费),因为另一个异步操作(消费)正在进行中。

堆栈跟踪如下所示

代码语言:javascript
复制
02-25 16:56:54.811: E/AndroidRuntime(6913): FATAL EXCEPTION: main
02-25 16:56:54.811: E/AndroidRuntime(6913): java.lang.IllegalStateException: Can't start async operation (consume) because another async operation(consume) is in progress.
02-25 16:56:54.811: E/AndroidRuntime(6913):     at com.seven.BillingHelper.IabHelper.flagStartAsync(IabHelper.java:711)
02-25 16:56:54.811: E/AndroidRuntime(6913):     at com.seven.BillingHelper.IabHelper.consumeAsyncInternal(IabHelper.java:832)
02-25 16:56:54.811: E/AndroidRuntime(6913):     at com.seven.BillingHelper.IabHelper.consumeAsync(IabHelper.java:623)
02-25 16:56:54.811: E/AndroidRuntime(6913):     at com.seven.javalib.InAppBilling$15.run(InAppBilling.java:350)
02-25 16:56:54.811: E/AndroidRuntime(6913):     at android.os.Handler.handleCallback(Handler.java:587)
02-25 16:56:54.811: E/AndroidRuntime(6913):     at android.os.Handler.dispatchMessage(Handler.java:92)
02-25 16:56:54.811: E/AndroidRuntime(6913):     at android.os.Looper.loop(Looper.java:143)
02-25 16:56:54.811: E/AndroidRuntime(6913):     at android.app.ActivityThread.main(ActivityThread.java:4196)
02-25 16:56:54.811: E/AndroidRuntime(6913):     at java.lang.reflect.Method.invokeNative(Native Method)
02-25 16:56:54.811: E/AndroidRuntime(6913):     at java.lang.reflect.Method.invoke(Method.java:507)
02-25 16:56:54.811: E/AndroidRuntime(6913):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
02-25 16:56:54.811: E/AndroidRuntime(6913):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
02-25 16:56:54.811: E/AndroidRuntime(6913):     at dalvik.system.NativeStart.main(Native Method)

有人能告诉我怎么解决这个问题吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-02-25 11:43:18

由于以前的尝试中没有调用flagEndAsync方法的原因,请确保在所有情况下(成功或失败)都调用IabHelper方法flagEndAsync

票数 4
EN

Stack Overflow用户

发布于 2015-03-31 14:02:27

这可能是因为在活动的IabHelper.handleActivityResult(requestCode, resultCode, data);方法中没有调用onActivityResult()。您可能需要验证是否正在调用它。

票数 2
EN

Stack Overflow用户

发布于 2013-08-18 08:35:42

而不是更新所有代码。让flagEndSync方法在您的IabHelper中公开会更容易。

然后每次调用IabHelper时,首先调用Mhelper.flagEndAsync()。然后你就知道了,你一定要从一个干净的同步任务开始。

对我来说再也没有撞车了。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15066095

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档