Skip to content

Releases: apphud/ApphudSDK-Android

v2.5.5

05 Apr 16:03
38f11b0
Compare
Choose a tag to compare

What's new in v2.5.5:

  • Added an option to clear paywalls and placements cache before app launch.
  • Internal improvements in retrying Google Play products
  • Breaking: ApphudListener's apphudFetchProductDetails and productsFetchCallback methods are now called only if ProductDetails array is not empty.
  • Fixed a bug from v2.5.1 that could lead to a crash, when there was no internet connection and fallback mode was enabling

v2.5.0

28 Mar 10:12
235a367
Compare
Choose a tag to compare

What's new in v2.5.0:

  • Added isConsumable property to ApphudNonRenewingPurchase model. Returns true if purchase was consumed.
  • [BREAKING]: hasPremiumAccess method now ignores consumed purchases.
  • Improved ApphudProduct model, now it contains duplicated methods of ProductDetails and their SubscriptionOfferDetails and OneTimePurchaseOfferDetails.

v2.4.5

27 Mar 09:16
Compare
Choose a tag to compare

What's new in v2.4.5:

  • Internal improvements to fetching android_id value
  • Support for reinstall tracking
  • Fixed a bug that could lead to a crash when SDK was upgraded from version lower than 2.0.0 to a version greater than 2.4.0

v2.4.2

12 Mar 08:44
Compare
Choose a tag to compare

What's new in v2.4.2:

  • Improved billing flow for pending purchases
  • Improved restore flow for sandbox accounts

v2.4.0

28 Feb 09:53
d52b0f7
Compare
Choose a tag to compare

What's New in v2.4.0:

This version is recommended for update.

  • Enhanced Error Handling: There are now significant improvements in error handling, especially for scenarios when there is no internet connection on the device.
  • Paywalls Fallback Enhancements: Internal improvements to the Paywalls Fallback mode.
  • API Updates:
    • Renamed method placementsDidLoadCallback(callback: (List<ApphudPlacement>) -> Unit) to fetchPlacements(callback: (List<ApphudPlacement>, ApphudError?) -> Unit). The updated method now returns an optional error. Refer to the ApphudError documentation for more details.
    • The method paywallsDidLoadCallback(callback: (List<ApphudPaywall>, ApphudError?) -> Unit) has been updated to return an optional error.
  • Guaranteed Response for Paywalls and Placements: All methods that fetch paywalls or placements are now designed to ensure a response under all circumstances, even in cases of errors or when Google Billing is unavailable.
  • ApphudError Class Improvements: The ApphudError class has been improved to potentially include Google Billing error codes.
  • [IMPORTANT] Subscription Purchase Update: Apphud will now attempt to purchase a subscription even if an offerToken is not provided in the purchase method. The SDK will attempt to fetch the first available offer token and initiate the purchase with it.
  • [IMPORTANT] Renamed Methods: The method refreshEntitlements has been renamed to refreshUserData.

v2.3.9

28 Feb 03:54
8422355
Compare
Choose a tag to compare

What's new in v2.3.9:

  • Downgraded Gradle to 7.4.2 and Java to version 1.8 to avoid compatibility issues

2.3.6

09 Feb 03:29
Compare
Choose a tag to compare

What's new in 2.3.6:

  • Added new method suspend fun nativePurchases() which returns native Purchase objects from Google Play. See Apphud.kt for more info about this method.
  • Internal improvements and bug fixes. This version is recommended for update.

2.3.2

24 Jan 13:11
Compare
Choose a tag to compare

What's new in 2.3.2:

  • Internal improvements and bug fixes. This version is recommended for update.

2.3.0

22 Dec 13:24
60e303c
Compare
Choose a tag to compare

What's New in Apphud SDK 2.3.0

  • Placements: Offers a strategic method to integrate paywalls throughout your app. This feature allows developers to position paywalls effectively in different app sections, such as onboarding, settings, etc., targeting distinct user audiences. For more comprehensive information, please refer to our Placements guide.
  • New Callback in Apphud.start(...): Added an optional callback to Apphud.start(...) method that returns an ApphudUser object.
  • [Breaking] Removed the variationName property from the ApphudPaywall object to avoid misleading usage.
  • New Methods:
    • Added suspend fun placements(): List<ApphudPlacement> to retrieve an array of ApphudPlacement objects with their inner Google Play products.
    • Added suspend fun placement(identifier: String): ApphudPlacement? to retrieve a specific placement by identifier.
    • Added fun placementsDidLoadCallback(callback: (List<ApphudPlacement>) -> Unit) as an alternative method to retrieve placements with their inner Google Play products in a callback.
    • Added fun rawPlacements(): List<ApphudPlacement> to retrieve placements immediately, without waiting for Google Play products to load.
    • Added fun rawPaywalls(): List<ApphudPaywall> to retrieve paywalls immediately, without waiting for Google Play products to load.
  • [Breaking] Suspendable Methods:
    • Made suspend fun paywalls(): List<ApphudPaywall> suspendable.
    • Made suspend fun paywall(identifier: String): ApphudPaywall? suspendable.

ApphudListener

  • [Breaking] Renamed the method fun userDidLoad() to fun userDidLoad(user: ApphudUser).
  • New Listener Method: Added fun placementsDidFullyLoad(placements: List<ApphudPlacement>).

2.2.3

30 Nov 10:52
Compare
Choose a tag to compare

Updated Dependencies. SDK updated its dependencies to more current versions.