我在調查使用新Play Billing Library,我關心的一件事是產品介紹價格。Android Play結算庫:獲取產品介紹價格?
我想知道是否有辦法檢索新庫的介紹價格。據我所知,這可以通過Google Play應用內結算API完成,如Stackoverflow question中所述,但我找不到使用新結算庫的類似方法。
有沒有人通過此前?
我在調查使用新Play Billing Library,我關心的一件事是產品介紹價格。Android Play結算庫:獲取產品介紹價格?
我想知道是否有辦法檢索新庫的介紹價格。據我所知,這可以通過Google Play應用內結算API完成,如Stackoverflow question中所述,但我找不到使用新結算庫的類似方法。
有沒有人通過此前?
你應該query SKU details並使用getIntroductoryPrice() method表示結果列表中的項目。
P.S.它最近被添加到1.0版本中。因此,如果您在發佈後的第一天內獲得了該庫,則應該重新下載更新版本clear your gradle cache和/build
文件夾。
是有請使用此>>https://codelabs.developers.google.com/codelabs/play-billing-codelab/#1
SkuDetailsParams skuDetailsParams = SkuDetailsParams.newBuilder().setSkusList(skuList).setType(itemType).build();
mBillingClient.querySkuDetailsAsync(skuDetailsParams,
new SkuDetailsResponseListener() {
@Override
public void onSkuDetailsResponse(int responseCode, List<SkuDetails> skuDetailsList) {
responseListener.onSkuDetailsResponse(responseCode, skuDetailsList);
}
});
監聽
SkuDetailsResponseListener responseListener = new SkuDetailsResponseListener() {
@Override
public void onSkuDetailsResponse(int responseCode, List<SkuDetails> skuDetailsList) {
if (responseCode == BillingClient.BillingResponse.OK && skuDetailsList != null) {
for (SkuDetails details : skuDetailsList) {
Log.i(TAG, "Found sku: " + details);
inList.add(new SkuRowData(details.getSku(), details.getTitle(), details.getPrice(), details.getDescription(), details.getType()));
}
if (inList.size() == 0) {
displayAnErrorIfNeeded();
} else {
mAdapter.updateData(inList);
setWaitScreen(false);
}
}
}
};
SkuRowData只是與構造模型類
SkuRowData(String sku, String title, String price, String description, String type)
謝謝,但我沒有發現任何暴露SKU介紹價格的屬性,有標題,價格,細節......但不是介紹性價格 –
請將我的回答標爲接受,如果我有幫助 –
SKU介紹性價格與getPrice()方法返回的SKU價格不同。所以你應該使用getIntroductoryPrice()方法。 – goRGon
非常感謝,現在已經解決了 –