Google Play商店已停止

时间:2017-07-31 06:20:15

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

我使用Google Play商店在我的应用中使用应用内购买功能。我将播放版本从9.8.0更新为11.0.1。在尝试购买产品时进行更新后,我正在获得弹出窗口,称google play store已经停止。但它在生产中表现良好。我有点困惑,因为播放服务更新发生了这次崩溃。

我遇到了以下崩溃:

E/AndroidRuntime: FATAL EXCEPTION: main
                                                                        Process: com.firstrun.prototyze, PID: 10412
                                                                        Theme: themes:{default=overlay:system, iconPack:system, fontPkg:system, com.android.systemui=overlay:system, com.android.systemui.navbar=overlay:system}
                                                                        java.lang.NullPointerException: Attempt to invoke interface method 'android.os.Bundle com.android.vending.billing.IInAppBillingService.getBuyIntent(int, java.lang.String, java.lang.String, java.lang.String, java.lang.String)' on a null object reference
                                                                            at com.android.mobiefit.sdk.manager.PurchaseManager.purchase(PurchaseManager.java:123)
                                                                            at com.firstrun.prototyze.ui.selectprogram.ProgramPurchaseDetailActivity$8.onRequestSuccess(ProgramPurchaseDetailActivity.java:379)
                                                                            at com.android.mobiefit.sdk.manager.TransactionManager.lambda$transactionEvent$0(TransactionManager.java:46)
                                                                            at com.android.mobiefit.sdk.manager.TransactionManager$$Lambda$1.accept(Unknown Source)
                                                                            at io.reactivex.internal.observers.ConsumerSingleObserver.onSuccess(ConsumerSingleObserver.java:59)
                                                                            at io.reactivex.internal.operators.single.SingleObserveOn$ObserveOnSingleObserver.run(SingleObserveOn.java:81)
                                                                            at io.reactivex.android.schedulers.HandlerScheduler$ScheduledRunnable.run(HandlerScheduler.java:109)
                                                                            at android.os.Handler.handleCallback(Handler.java:739)
                                                                            at android.os.Handler.dispatchMessage(Handler.java:95)
                                                                            at android.os.Looper.loop(Looper.java:148)
                                                                            at android.app.ActivityThread.main(ActivityThread.java:5461)
                                                                            at java.lang.reflect.Method.invoke(Native Method)
                                                                            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
                                                                            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)

这是我的采购经理:

//Last parameter - RUN=false, BODY=true
    public boolean purchase(String productShortcode, String sku, Activity activityObj, boolean subscription) throws RemoteException, IntentSender.SendIntentException {
        Log.d(TAG, "Start Purchase");
        String type = "inapp";
        if(subscription)    {
            type = "subs";
        }
        Bundle buyIntentBundle = mService.getBuyIntent(3, activityObj.getPackageName(),
                sku, type, productShortcode);
        for(String key : buyIntentBundle.keySet())  {
            Log.d("Purchase", key +" :: " + buyIntentBundle.get(key));
        }
        if(buyIntentBundle.getInt("RESPONSE_CODE", 0) == 7)    {
            Log.d(TAG, "Item is already purchased, consume and try again");
            return false;
        }
        PendingIntent pendingIntent = buyIntentBundle.getParcelable("BUY_INTENT");
        activityObj.startIntentSenderForResult(pendingIntent.getIntentSender(),
                1001, new Intent(), Integer.valueOf(0), Integer.valueOf(0),
                Integer.valueOf(0));
        return true;
    }

有人可以告诉我这是什么问题吗?

2 个答案:

答案 0 :(得分:0)

这是google play store版本的bug 无需担心。
只需使用较旧的谷歌Play商店版本在应用程序购买测试它将工作:)

有关详细信息,请参阅此question

编辑:2017年8月11日
现在新的谷歌游戏商店版本 8.0.73.R-所有[0] [公关] 162689464 谷歌修复崩溃问题我有在我的设备上成功测试了它,所以现在你不再遇到这个问题了。 :)

答案 1 :(得分:0)

在我的P9 Lite中,当我尝试启动应用程序时,它会在没有任何消息的情况下崩溃。我刚刚尝试清理缓存,但唯一的解决方案是删除更新并使用最新版本。

10分钟后google play找到更新,重新安装版本8..0.73.R-all [0] [PR] 162689464,10分钟后应用程序再次崩溃。我不知道如何解决这个问题,因为应用程序的自动更新始于任何问题。