6

「「価格」で「タイトル」を購入しますか」という警告ダイアログを設定するプログラムがあります。

Google IAB ライブラリに getSku() 呼び出しがあることは知っていますが、それはアイテムを購入した後にのみ利用できます。購入前にこれら 2 つの変数を取得する方法はありますか? ありがとう。

すべてのアイテムを一覧表示する sku のバンドルをクエリするアイテムを見たことがあるかもしれませんが、間違っている可能性があります

4

2 に答える 2

2

IABHelper でこのメソッドを使用します。

 List<String> moreSkus = new ArrayList<String>();
  moreSkus.add("sku1");
  moreSkus.add("sku2");              

  mHelper.queryInventoryAsync(true, moreSkus, mGotInventoryListener);

私はそれが正常に動作することをテストします.inappまたはサブタイプのskuをリストに追加し、すべての詳細をinvenrotyに返すことができます

于 2013-05-05T14:44:17.760 に答える
1

これに対する解決策を見つけました。まず、SKU/製品 ID が必要です。

public void getProductDetails(String sku) throws RemoteException, JSONException {
    logDebug("getProductDetails - " + sku);

    ArrayList<String>  skuList = new ArrayList<>();
    // Add the specific sku
    skuList.add(sku);

    if (sku != null) {
         Bundle querySkus = new Bundle();
         querySkus.putStringArrayList(GET_SKU_DETAILS_ITEM_LIST, skuList);
         Bundle skuDetails = mService.getSkuDetails(3, mContext.getPackageName(),  ITEM_TYPE_INAPP, querySkus);
         ArrayList<String> responseList = skuDetails.getStringArrayList(RESPONSE_GET_SKU_DETAILS_LIST);

         for (String thisResponse : responseList) {
             SkuDetails d = new SkuDetails(thisResponse);
             logDebug("Looking at sku details: " + d);
             purchaseTitle = d.getTitle(); // these are set as variables so you can call them
             purchasePrice = d.getPrice(); // whenever you want
         }
    }
}
于 2013-01-11T22:27:39.117 に答える