Google In-app請求APIには本当に奇妙な問題があります。Googleアプリ内課金:定期購入の詳細を照会できません
利用可能なサブスクリプションの詳細を取得して、ローカライズ価格をUIに表示したいと考えています。私は指定したSKUの詳細を照会するためにIabHelperを使用していますが、結果には製品は含まれていませんが、サブスクリプションを購入した後、サブスクリプションをキャンセルしてアプリを再インストールしても機能します。
List<String> additionalSkus = new ArrayList<>();
for (Subscription subscription : subscriptions) {
additionalSkus.add(subscription.getSku());
}
iabHelper.queryInventoryAsync(true, additionalSkus, new IabHelper.QueryInventoryFinishedListener() {
@Override
public void onQueryInventoryFinished(IabResult result, Inventory inv) {
if (iabHelper == null || result.isFailure()) {
Log.i("subs", result.getMessage());
}
for (Subscription subscription : subscriptions) {
SkuDetails skuDetails = inv.getSkuDetails(subscription.getSku());
if (skuDetails != null) {
subscription.setLocalizedPrice(skuDetails.getPrice());
Log.i("subs", subscription.getLocalizedPrice());
}
}
}
});
私はすべてがアプリ内課金処理に関する権利設定している:
は、ここに私のコードです。私の製品はアクティブで、公開されているベータ版のAPKがあり、管理対象製品の詳細を取得して管理対象製品とサブスクリプションを購入することもできますが、これは機能しません。あなたがIabHelper
クラスの最新版を使用している場合
おかげで、する必要があります)、私はこれを呼び出すために非同期メソッドを変更し、今は動作します。 –