Skip to content

Releases: qonversion/android-sdk

2.5.0

01 Feb 10:45
7b4a48d
Compare
Choose a tag to compare

What's new

Deferred transactions

Now you can set the listener, which will be called when deferred transactions state will update.

Qonversion.setUpdatedPurchasesListener(object: UpdatedPurchasesListener {
    override fun onPermissionsUpdate(permissions: Map<String, QPermission>) {
        // handle updated permissions here
    }
})

Internal logic update

  • Minor client-server interaction fixes

2.4.1

20 Jan 14:18
dc19bca
Compare
Choose a tag to compare

What's new

Trial duration

From now you can check the product's trial duration using QTrialDuration Enum.
If the duration is not from enum range we will return QTrialDurationOther then you can check trial duration directly from the product skuDetails.

val mainProduct = products["main"]
if (mainProduct != null && mainProduct.trialDuration == QTrialDuration.TwoWeeks) {
    // handle two weeks trial here
}

2.4.0

19 Jan 09:34
02446a9
Compare
Choose a tag to compare

What's new

Intro eligibility

You can check if a user is eligible for an introductory offer, including a free trial.

You can show only a regular price for users who are not eligible for an introductory offer.

Qonversion.checkTrialIntroEligibilityForProductIds(listOf("main", "secondary"), object : QonversionEligibilityCallback {
    override fun onSuccess(eligibilities: Map<String, QEligibility>) {
        // handle result here
    }

    override fun onError(error: QonversionError) {
        // handle error here
    }
})

2.3.0

11 Jan 15:09
97b23af
Compare
Choose a tag to compare

What's new

Offerings

An offering is a group of products that you can offer to a user on a given paywall based on your business logic. For example, you can offer one set of products on a paywall immediately after onboarding and another set of products with discounts later on if a user has not converted.
Offerings allow changing the products offered remotely without releasing app updates.

Qonversion.offerings(object: QonversionOfferingsCallback {
    override fun onSuccess(offerings: QOfferings) {
        val offering = offerings.offeringForID("your offering identifier")
        if (offering != null) {
            // offering is available
        }
    }
    override fun onError(error: QonversionError) {
        // handle error here
    }
})

We strongly recommend switching to Qonversion Offerings. This allows to:

  • Change products offered to your users without app release
  • Run A/B tests
  • Store products and experiment results in one place with aggregated data on them

2.2.1

30 Dec 11:15
83fc06c
Compare
Choose a tag to compare

Added purchase processing after failed launch or store products requests

2.2.0

11 Dec 15:46
a5f7559
Compare
Choose a tag to compare

Add the setDebugMode() method.

2.1.1

09 Dec 13:19
bdec36e
Compare
Choose a tag to compare

Add error handling for html format response.

2.1.0

08 Dec 10:09
99d17d6
Compare
Choose a tag to compare

Update approach for attribution.

2.0.2

25 Nov 10:42
53ffe21
Compare
Choose a tag to compare

We have rethought our approach to working with subscriptions and prepared our largest update that includes Product Center – our major feature for working with any type in-app purchases.

2.0.2

What's new

Product Center

A111

  1. Application calls the purchase method to initialize Qonversion SDK.
  2. Qonversion SDK communicates with StoreKit or Google Billing Client to make a purchase.
  3. If a purchase is successful, the SDK sends a request to Qonversion API for server-to-server validation of purchase. Qonversion server unlocks permissions associated with the product.
  4. SDK returns control to the application with a processing state

2.0.1

13 Nov 11:44
d1b1d9c
Compare
Choose a tag to compare

We have rethought our approach to working with subscriptions and prepared our largest update that includes Product Center – our major feature for working with any type in-app purchases.

2.0.0

What's new

Product Center

A111

  1. Application calls the purchase method to initialize Qonversion SDK.
  2. Qonversion SDK communicates with StoreKit or Google Billing Client to make a purchase.
  3. If a purchase is successful, the SDK sends a request to Qonversion API for server-to-server validation of purchase. Qonversion server unlocks permissions associated with the product.
  4. SDK returns control to the application with a processing state