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

Mil*_*ita 9 android in-app-purchase in-app-billing google-play

我正在尝试启用应用内结算功能.我在Google Play控制台上创建了应用内商品并获得了许可证密钥.当我尝试购买产品时.我得到这个图像错误.

在此输入图像描述

这是我用来创建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();
        }
    });
Run Code Online (Sandbox Code Playgroud)

LICENSE_KEY是Google Play控制台的许可密钥,MERCHANT_ID为空.

这就是我买东西的方式.

bp.purchase(this,PRODUCT_ID);
Run Code Online (Sandbox Code Playgroud)

其中PRODUCT_ID是我在google play控制台中使用的product1,以下是我的应用内商品的示例.

在此输入图像描述

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

Nic*_*cue 14

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

  • 你尚未发表它.要测试In-App Billing,必须将其推至至少alpha.有关 更多信息,请参阅测试IAB文档
  • 您的应用或开发者帐户已被禁止/暂停滥用
  • 你对你的包名/ applicationId做了一些改动,所以在你的apk中它与Play上的那个不匹配.开发人员有时会使用构建版本来实现此目的


xox*_*_89 7

哦,当我用不同的sku测试我的产品中的购买时,我有这个例外.
检查你的sku!
Sku一定不是CAPS!只有[az] [0-9]!