应用内结算(v3) - IllegalArgumentException:服务未注册:

时间:2013-03-27 11:52:51

标签: android in-app-purchase

我刚刚发布了一款应用内付款的应用。到目前为止,没有报告谷歌播放崩溃(这只发生在用户麻烦报告崩溃时)但我确实有一些崩溃报告(这是自动的)。崩溃报告如下:

class java.lang.RuntimeException
Msg: android.app.ActivityThread.performDestroyActivity:3655 (Unable to destroy activity {com.mycompany.mygame/com.mycompany.mygame.Splashscreen}: java.lang.IllegalArgumentException: Service not registered: com.mycompany.mygame.util.IabHelper$1@46369b38)

这只发生在<我的应用程序执行率的1%。

如果我错了,请纠正我,但似乎在乱舞报告中没有给出崩溃的行号: - (

我甚至不确定此崩溃报告的含义,更不用说如何修复它了。有什么想法吗?

1 个答案:

答案 0 :(得分:115)

我相信这是IabHelper.java中的一个错误。

在IabHelper dispose方法中,以下行

            if (mContext != null) mContext.unbindService(mServiceConn);

应改为此。

            if (mContext != null && mService != null) mContext.unbindService(mServiceConn);

只有在服务注册后才设置mService,因此在我们尝试解除绑定之前,检查它是否为!= null将保证服务确实已注册。