我正在开发一个应用程序,允许用户使用In App Purchase购买,我想在购买后删除广告。我可以使用下面的代码成功购买
BillingFlowParams flowParams = BillingFlowParams.newBuilder()
.setSku("android.test.purchased")
.setType(BillingClient.SkuType.INAPP)
.build();
mBillingClient.launchBillingFlow(getActivity(), flowParams);
但是当我再次打开app并在下面调用此方法时,我无法看到来自queryPurchaseHistoryAsync的结果。
mBillingClient.queryPurchaseHistoryAsync(BillingClient.SkuType.INAPP, new PurchaseHistoryResponseListener() {
@Override
public void onPurchaseHistoryResponse(int responseCode, List<Purchase> purchasesList) {
purchasesList.size();
}
});
purchasesList.size()== 0
是“queryPurchaseHistoryAsync”方法无法显示测试购买还是我做错了什么?
编辑:queryPurchaseHistoryAsync方法检查购买后删除并再次安装应用程序。
试试这个它会给所有购买物品。
mBillingClient.querySkuDetailsAsync(params.build(),
new SkuDetailsResponseListener() {
@Override
public void onSkuDetailsResponse(int responseCode, List<SkuDetails> skuDetailsList) {
listener.onSkuDetailsResponse(responseCode, skuDetailsList);
}
});