从服务器 [DF-AA-20] 检索信息时发生应用内购买错误

In-app purchase Error while retrieving information from server [DF-AA-20]

我正在尝试启用应用计费。我在我的 google 游戏机上创建了应用内产品并获得了我的许可证密钥。当我尝试购买产品时。我得到这个图像错误。

这是我用来创建 BillingProcessor 的代码。

bp = new BillingProcessor(this, LICENSE_KEY, MERCHANT_ID, new BillingProcessor.IBillingHandler() {
        @Override
        public void onProductPurchased(@NonNull String productId, @Nullable TransactionDetails details) {
            showToast("onProductPurchased: " + productId);
            updateTextViews();
        }
        @Override
        public void onBillingError(int errorCode, @Nullable Throwable error) {
            showToast("onBillingError: " + Integer.toString(errorCode));
        }
        @Override
        public void onBillingInitialized() {
            showToast("onBillingInitialized");
            readyToPurchase = true;
            updateTextViews();
        }
        @Override
        public void onPurchaseHistoryRestored() {
            showToast("onPurchaseHistoryRestored");
            for(String sku : bp.listOwnedProducts())
                Log.d(LOG_TAG, "Owned Managed Product: " + sku);
            for(String sku : bp.listOwnedSubscriptions())
                Log.d(LOG_TAG, "Owned Subscription: " + sku);
            updateTextViews();
        }
    });

LICENSE_KEY 是我在 google play console 的许可证密钥,MERCHANT_ID 是空的。

我就是这样买东西的。

bp.purchase(this,PRODUCT_ID);

其中 PRODUCT_ID 是我在我的 google 游戏机中使用的产品 1,这里是我的应用内产品示例。

知道如何解决这个问题吗?只有一个 DF-AA-20 问题没有答案的计算器问题。互联网上没有关于它的信息。我尝试使用模拟器和我的 android phone.

哦,当我用不同的 sku 测试购买我的产品时出现了这个异常。
检查你的SKU!
sku 一定不能大写!只有 [a-z][0-9]!

DF-AA-20 表示您的应用未以任何方式在 Play 商店中发布。这通常是因为:

  • 您还没有发布它。要测试应用内结算,它必须至少被推送到 alpha。参见 the testing IAB docs 获取更多信息
  • 您的应用或开发者帐户已被 banned/suspended 滥用
  • 您对您的包进行了一些更改 name/applicationId,因此您的 apk 中的它与 Play 中的不匹配。开发人员有时会使用构建风格来执行此操作

需要指出的是,如果您还没有在 Google Play 管理中心将您的产品设置为活跃状态,您也可能会收到此确切的错误代码消息。 (即使在调试中,它们也需要处于活动状态。)

您必须将您的应用发布到 Playstore(即使是 alpha 或 beta 发布也无济于事)。

稍等一下。我等了 25 分钟,然后产品在 google play

中注册