Во-первых, в onReceived
вы передаете List<SkuDetails> skuList
методу, ожидающему List<String>
- это должно быть:
private void makepurchase(List<SkuDetails> skuList) {
}
Затем, в зависимости от вашего контекста, вы должны перебрать skuList и приобретите каждый элемент отдельно или измените подпись Purchases.getSharedInstance().purchaseProduct
для работы с List<SkuDetails>
Обновление: итерация skuList
для покупки каждого элемента skuItem отдельно.
Отрицательный побочный эффект: столько сообщений Purchase complete
как размер skuList
private void makepurchase(List<SkuDetails> skuList) {
for (SkuDetails skuItem : skuList) {
Purchases.getSharedInstance()
.purchaseProduct(this, skuItem, new MakePurchaseListener() {
@Override
public void onCompleted(
@NonNull Purchase purchase, @NonNull PurchaserInfo purchaserInfo) {
Toast.makeText(UserInformation.this, "Purchase complete", Toast.LENGTH_LONG).show();
}
@Override
public void onError(@NonNull PurchasesError error, boolean userCancelled) {}
});
}
}