use of com.asf.appcoins.sdk.iab.entity.SKU in project AppCoins-ethereumj by AppStoreFoundation.
the class App method buildSkus.
private List<SKU> buildSkus() {
List<SKU> skus = new LinkedList<>();
skus.add(new SKU(Skus.SKU_GAS_LABEL, Skus.SKU_GAS_ID, BigDecimal.valueOf(1)));
skus.add(new SKU(Skus.SKU_PREMIUM_LABEL, Skus.SKU_PREMIUM_ID, BigDecimal.valueOf(2)));
return skus;
}
use of com.asf.appcoins.sdk.iab.entity.SKU in project AppCoins-ethereumj by AppStoreFoundation.
the class AppCoinsSdkImplTest method buildSkus.
private List<SKU> buildSkus() {
List<SKU> skus = new LinkedList<>();
skus.add(new SKU("smallpack", "com.marceloporto.bombastic.smallpack", BigDecimal.ONE));
return skus;
}
use of com.asf.appcoins.sdk.iab.entity.SKU in project AppCoins-ethereumj by AppStoreFoundation.
the class PaymentService method buy.
public void buy(String skuId, Activity activity, int defaultRequestCode) {
SKU sku = skuManager.getSku(skuId);
BigDecimal amount = skuManager.getSkuAmount(skuId);
BigDecimal total = amount.multiply(BigDecimal.TEN.pow(DECIMALS));
Intent intent = buildPaymentIntent(sku, total);
currentPayment = new PaymentDetails(PaymentStatus.FAIL, skuId, new Transaction(null, null, developerAddress, total.toString(), Status.PENDING));
if (AndroidUtils.hasHandlerAvailable(intent, activity)) {
if (payments.containsKey(skuId)) {
throw new IllegalArgumentException("Pending buy action with the same sku found! Did you forget to consume the former?");
} else {
payments.put(skuId, currentPayment);
activity.startActivityForResult(intent, defaultRequestCode);
}
} else {
Disposable subscribe = showWalletInstallDialog(activity).filter(aBoolean -> aBoolean).doOnSuccess(gotoStore(activity)).subscribe(aBoolean -> {
}, Throwable::printStackTrace);
}
}
Aggregations