Подтвердить что ты не робот

Как запрашивать (цену) информацию для нескольких продуктов в приложении одновременно?

В Android в биллинге приложений можно как-то запросить (цену) информацию обо всех продуктах, используя один запрос? Оптимально вы можете передать идентификаторы продуктов, и они вернут информацию для них.

То, что я ищу, эквивалентно SKProductsRequest для Android Market. http://developer.apple.com/library/ios/#documentation/StoreKit/Reference/SKProductsRequest/Reference/Reference.html#//apple_ref/occ/cl/SKProductsRequest

4b9b3361

Ответ 1

Теперь возможно с Billing API v3. Вы можете получить информацию с помощью getSkuDetails(). Пример здесь.

ArrayList skuList = new ArrayList();
skuList.add("premiumUpgrade"); 
skuList.add("gas");
Bundle querySkus = new Bundle();
querySkus.putStringArrayList("ITEM_ID_LIST", skuList);

Bundle skuDetails = mService.getSkuDetails(3, getPackageName(), "inapp", querySkus);

int response = skuDetails.getInt("RESPONSE_CODE");
if (response == 0) {
    ArrayList responseList = skuDetails.getStringArrayList("DETAILS_LIST");

    for (String thisResponse : responseList) {
        JSONObject object = new JSONObject(thisResponse);
        String sku = object.getString("productId");
        String price = object.getString("price");
        if (sku.equals("premiumUpgrade")) {
            mPremiumUpgradePrice = price;
        } else if (sku.equals("gas")) { 
            mGasPrice = price;
        }
    }
}