【问题标题】:BILLING_RESPONSE_RESULT_DEVELOPER_ERRORBILLING_RESPONSE_RESULT_DEVELOPER_ERROR
【发布时间】:2019-04-29 08:56:19
【问题描述】:

在测试我的应用内订阅时,我不断收到此响应“BILLING_RESPONSE_RESULT_DEVELOPER_ERROR”。

我在发布模式下生成了我的应用程序的签名 apk,并上传到 google play 以进行 alpha 测试。我跟着这个教程 https://codelabs.developers.google.com/codelabs/play-billing-codelab/#0 在测试“android.test.purchased”产品的静态响应时,它工作正常。但在测试我的订阅时给出上述响应。

这是我收到此响应的代码

mBillingClient.startConnection(new BillingClientStateListener() {
            @Override
            public void onBillingSetupFinished(@BillingClient.BillingResponse int billingResponse) {
                if (billingResponse == BillingClient.BillingResponse.OK) {
                    Log.i(TAG, "onBillingSetupFinished() response: " + billingResponse);
                    if (executeOnSuccess != null) {
                        executeOnSuccess.run();
                    }
                } else {
                    Log.w(TAG, "onBillingSetupFinished() error code: " + billingResponse);
                }
            }

            @Override
            public void onBillingServiceDisconnected() {
                Log.w(TAG, "onBillingServiceDisconnected()");
            }
        });    

另外,当我上传我的 apk 时,谷歌问我是否想选择“让谷歌管理和保护你的应用签名密钥(推荐)”所以我做了...... 我为我的问题阅读了一些解决方案,但所有这些都涉及“应用程序签名”这一步骤,但我现在无能为力: https://ibb.co/d71LvCK.

我也创建了测试用户,并获得了下载我的应用程序的链接。我正在用同一个用户测试我的应用程序。 (当然不同于我的游戏商店帐户) 请帮忙,谢谢:)

【问题讨论】:

标签: android google-play in-app-purchase in-app-subscription


【解决方案1】:

在设置中清除您的 Google Play 商店应用缓存,我花了一段时间才弄明白

【讨论】:

    【解决方案2】:

    The docs say:

    BILLING_RESPONSE_RESULT_DEVELOPER_ERROR:提供给 API 的参数无效。此错误还可能表明应用未正确签名或未正确设置 Google Play Billing,或者在其清单中没有必要的权限

    所以这表明调用 API 时发生了一些错误。

    可能的错误:

    • 使用开发者帐户而不是单独的测试者 gmail 帐户(你说过你没有这样做)
    • 您确定要使用 Play 商店 Alpha 通道中的 APK 进行测试,而不是使用您的 IDE 构建的那个吗?如果 Play 正在对您的应用进行签名,那么您需要使用从 Play 商店的 Alpha 通道下载的应用进行测试,使用 Google Play 应用进行安装,而不是使用由您的 IDE 签名的应用进行测试

    【讨论】:

    • 我在那里没有找到解决方案,我也没有使用该代码。请看我上面分享的教程链接。我正在使用不同的测试帐户。
    • 感谢您的回复,是的,先生,我刚才从手机上卸载了我的应用程序并从 play strore 再次下载以检查,仍然是同样的错误。