2013-01-11 9 views
6

Mam program, który ustawia okno dialogowe z ostrzeżeniem z pytaniem "Chciałbym kupić" TITLE "za" PRICE ""Czy w Google IAB mogę uzyskać tytuł i cenę produktu, zanim zadzwonię do metody launchpurchaseflow?

Wiem, że biblioteka Google IAB ma wywołanie getSku(), ale jest dostępna tylko po wynikają z zakupu przedmiotu. Czy istnieje sposób na uzyskanie tych dwóch zmiennych przed dokonaniem zakupu? Dzięki.

może Widziałem element, który pyta wiązkę SKU który wymienia wszystkie elementy, ale mogę się mylić

Odpowiedz

1

znaleźli rozwiązanie tego problemu. przede wszystkim potrzebujesz identyfikatora sku/produktu.

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 
     } 
    } 
} 
+0

używam w wersja 3-APP rozliczeniowy i trzeba pobrać dane subskrypcji produktu, dla którego mam zrobić w funkcji "mGotInventoryListener" if (inventory.getSkuDetails (SKU_INFINITE_SUBSCRIPTION)! = null) { \t \t \t \t Log.e (TAG, "szczegóły produktu cena ====" + inventory.getSkuDetails (SKU_INFINITE_SUBSCRIPTION) .getPrice()); \t \t \t \t \t \t \t} ale jestem coraz danych za nieważną – AkashG

+0

może u pls help me out dla uzyskania szczegółów subskrypcji .. – AkashG

2

stosowanie tej metody w IABHelper:

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

    mHelper.queryInventoryAsync(true, moreSkus, mGotInventoryListener); 

przetestować to działa ok, można dodać InApp lub Podtyp sku do listy i przywrócić wszystkie dane w invenroty

+0

Będzie współpracuje z IAB V2. Otrzymuję błąd podobny do "queryInventoryAsync" nie znaleziono. Jeśli nie jest to możliwe, daj mi znać, czy istnieje inny sposób uzyskania szczegółów produktu za pomocą V2 – Ganesh

Powiązane problemy