public void buyPremium()

in ClassyTaxiJava/app/src/main/java/com/sample/android/classytaxijava/ui/BillingViewModel.java [159:178]


    public void buyPremium() {
        boolean hasBasic = BillingUtilities
                .deviceHasGooglePlaySubscription(purchases.getValue(), Constants.BASIC_SKU);
        boolean hasPremium = BillingUtilities
                .deviceHasGooglePlaySubscription(purchases.getValue(), Constants.PREMIUM_SKU);
        Log.d("Billing", "hasBasic: " + hasBasic + ", hasPremium: " + hasPremium);
        if (hasBasic && hasPremium) {
            // If the user has both subscriptions, open the premium SKU on Google Play.
            openPlayStoreSubscriptionsEvent.postValue(Constants.PREMIUM_SKU);
        } else if (!hasBasic && hasPremium) {
            // If the user just has a premium subscription, open the premium SKU on Google Play.
            openPlayStoreSubscriptionsEvent.postValue(Constants.PREMIUM_SKU);
        } else if (hasBasic && !hasPremium) {
            // If the user just has a basic subscription, upgrade.
            buy(Constants.PREMIUM_SKU, Constants.BASIC_SKU);
        } else {
            // If the user does not have a subscription, buy the premium SKU.
            buy(Constants.PREMIUM_SKU, null);
        }
    }