- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 13.9.0 (#606) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 13.8.0 (#604) via RevenueCat Git Bot (@RCGitBot)
- Bump xcodeproj from 1.25.1 to 1.27.0 (#603) via dependabot[bot] (@dependabot[bot])
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 13.7.0 (#601) via RevenueCat Git Bot (@RCGitBot)
- Bump fastlane from 2.224.0 to 2.225.0 (#596) via dependabot[bot] (@dependabot[bot])
- Bump danger from 9.5.0 to 9.5.1 (#597) via dependabot[bot] (@dependabot[bot])
- Bump fastlane from 2.223.1 to 2.224.0 (#591) via dependabot[bot] (@dependabot[bot])
- Bump xcodeproj from 1.25.0 to 1.25.1 (#590) via dependabot[bot] (@dependabot[bot])
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 13.5.0 (#592) via RevenueCat Git Bot (@RCGitBot)
- Bump fastlane from 2.222.0 to 2.223.1 (#587) via dependabot[bot] (@dependabot[bot])
- Support displaying deferred win-back StoreKit messages (#600) via Will Taylor (@fire-at-will)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 13.3.0 (#584) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 13.2.1 (#581) via RevenueCat Git Bot (@RCGitBot)
- Bump rexml from 3.3.4 to 3.3.6 (#575) via dependabot[bot] (@dependabot[bot])
- Bump fastlane-plugin-revenuecat_internal from 5140dbc to 55a0455 (#582) via Cesar de la Vega (@vegaro)
- Update fastlane-plugin-revenuecat_internal (#579) via Cesar de la Vega (@vegaro)
- Update SDK expiration date (#572) via Toni Rico (@tonidero)
This release updates the Android SDK dependency from v7 to v8 to use BillingClient 7 and updates the iOS SDK dependency from v4 to v5 to use StoreKit 2 by default in the SDK.
- See Android Native - V8 API Migration Guide for a more thorough explanation of the Android changes.
- See iOS Native - V5 Migration Guide for a more thorough explanation of the iOS changes. Notably, this version uses StoreKit 2 to process purchases by default.
This release raises the minumum required OS versions to the following:
- iOS 13.0
- tvOS 13.0
- watchOS 6.2
- macOS 10.15
- Android: SDK 21 (Android 5.0)
In order to use StoreKit 2, you must configure your In-App Purchase Key in the RevenueCat dashboard. You can find instructions describing how to do this here.
When configuring the SDK, the usesStoreKit2IfAvailable
parameter has been replaced by an optional storeKitVersion: STOREKIT_VERSION
parameter. It defaults to letting the iOS SDK determine the most appropriate version of StoreKit at runtime. If you'd like to use a specific version of StoreKit, you may provide a value for storeKitVersion
like so:
Purchases.configureWith({
apiKey,
storeKitVersion: STOREKIT_VERSION.STOREKIT_1,
});
Version 6.0 of the SDK deprecates the term "Observer Mode" (and the APIs where this term was used), and replaces it with PurchasesAreCompletedBy
(either RevenueCat or your app). When specifying that your app will complete purchases, you must provide the StoreKit version that your app is using to make purchases on iOS. If your app is only available on Android, you may provide any value since the native Android SDK ignores this value.
You can enable it when configuring the SDK:
Purchases.configure({
apiKey,
purchasesAreCompletedBy: {a
type: PURCHASES_ARE_COMPLETED_BY_TYPE.MY_APP,
storeKitVersion: STOREKIT_VERSION.STOREKIT_2,
},
});
By default, when purchases are completed by your app using StoreKit 2 on macOS, the SDK does not detect a user's purchase until after the user foregrounds the app after the purchase has been made. If you'd like RevenueCat to immediately detect the user's purchase, call Purchases.recordPurchase(productID)
for any new purchases, like so:
Purchases.recordPurchase(productID, (transaction: PurchasesStoreTransaction) => {}, (error: PurchasesError) => {});
If purchases are completed by your app using StoreKit 1, you will need to explicitly configure the SDK to use StoreKit 1:
Purchases.configure({
apiKey,
purchasesAreCompletedBy: {a
type: PURCHASES_ARE_COMPLETED_BY_TYPE.MY_APP,
storeKitVersion: STOREKIT_VERSION.STOREKIT_1,
},
});
- Bump xcodeproj from 1.24.0 to 1.25.0 (#566) via dependabot[bot] (@dependabot[bot])
- Bump danger from 9.4.3 to 9.5.0 (#563) via dependabot[bot] (@dependabot[bot])
- Bump fastlane from 2.221.1 to 2.222.0 (#558) via dependabot[bot] (@dependabot[bot])
- Bump fastlane from 2.221.0 to 2.221.1 (#548) via dependabot[bot] (@dependabot[bot])
- Bump fastlane from 2.220.0 to 2.221.0 (#546) via dependabot[bot] (@dependabot[bot])
- Fix ios integration tests (#570) via Toni Rico (@tonidero)
- Add deprecation note in README (#564) via Toni Rico (@tonidero)
- Update android executor (#549) via Toni Rico (@tonidero)
Full migration guide to V6: Cordova Plugin purchases - V6 API Migration Guide
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 10.9.0 (#543) via RevenueCat Git Bot (@RCGitBot)
- Update RELEASING.md (#511) via Cesar de la Vega (@vegaro)
- Fix cordova ios integration tests (#542) via Toni Rico (@tonidero)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 10.8.0 (#540) via RevenueCat Git Bot (@RCGitBot)
- Bump rexml from 3.2.6 to 3.2.8 (#538) via dependabot[bot] (@dependabot[bot])
- Update fastlane plugin (#535) via Toni Rico (@tonidero)
- Only update docs index on latest stable releases (#525) via Toni Rico (@tonidero)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 10.4.1 (#524) via RevenueCat Git Bot (@RCGitBot)
- Bump fastlane from 2.219.0 to 2.220.0 (#521) via dependabot[bot] (@dependabot[bot])
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 10.4.0 (#522) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 10.3.2 (#519) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 10.2.0 (#514) via RevenueCat Git Bot (@RCGitBot)
- Add 4.9.1 to changelog (#510) via Cesar de la Vega (@vegaro)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 9.9.0 (#505) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 9.8.0 (#503) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 9.7.0 (#499) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 9.6.0 (#497) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 9.5.0 (#496) via RevenueCat Git Bot (@RCGitBot)
- Bump danger from 9.4.2 to 9.4.3 (#494) via dependabot[bot] (@dependabot[bot])
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 9.3.0 (#490) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 9.2.1 (#489) via RevenueCat Git Bot (@RCGitBot)
- Bump xcodeproj from 1.23.0 to 1.24.0 (#488) via dependabot[bot] (@dependabot[bot])
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 9.2.0 (#487) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 9.1.0 (#486) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 9.0.1 (#485) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 9.0.0 (#484) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 8.12.0 (#483) via RevenueCat Git Bot (@RCGitBot)
- Update
fastlane-plugin-revenuecat_internal
(#491) via NachoSoto (@NachoSoto)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 8.2.2 (#480) via RevenueCat Git Bot (@RCGitBot)
- Bump fastlane from 2.218.0 to 2.219.0 (#478) via dependabot[bot] (@dependabot[bot])
- Bump fastlane from 2.217.0 to 2.218.0 (#476) via dependabot[bot] (@dependabot[bot])
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 8.2.1 (#473) via RevenueCat Git Bot (@RCGitBot)
- Bump danger from 9.4.0 to 9.4.2 (#468) via dependabot[bot] (@dependabot[bot])
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 8.1.1 (#465) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 8.1.0 (#463) via RevenueCat Git Bot (@RCGitBot)
- Fix some docs (#460) via Cesar de la Vega (@vegaro)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 8.0.0 (#456) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 7.4.0 (#455) via RevenueCat Git Bot (@RCGitBot)
CI
: disableprepare-next-version
(#454) via NachoSoto (@NachoSoto)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 7.3.3 (#449) via RevenueCat Git Bot (@RCGitBot)
- Bump fastlane from 2.216.0 to 2.217.0 (#451) via dependabot[bot] (@dependabot[bot])
- Bump danger from 9.3.2 to 9.4.0 (#450) via dependabot[bot] (@dependabot[bot])
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 7.3.2 (#448) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 7.3.1 (#443) via RevenueCat Git Bot (@RCGitBot)
- Add
2.4.3
toVERSIONS
(#447) via NachoSoto (@NachoSoto)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 7.3.0 (#441) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 7.2.0 (#438) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 7.1.1 (#437) via RevenueCat Git Bot (@RCGitBot)
- Bump xcodeproj from 1.22.0 to 1.23.0 (#424) via dependabot[bot] (@dependabot[bot])
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 7.1.0 (#433) via RevenueCat Git Bot (@RCGitBot)
RevenueCat Cordova SDK v5 is here!! 😻
This latest release updates the SDK to use BillingClient 6 in Android. This version of BillingClient brings little change compared with BillingClient 5 which brought an entire new subscription model which resulted in large changes across the entire SDK.
The only modification at the API level involves replacing "ProrationMode" with "ReplacementMode". The specific replacement modes remain unchanged.
If your app doesn't currently use DEFERRED replacement modes, then you should be safe to upgrade to this version without changes in behavior.
If your app supports product changes using DEFERRED replacement mode, then you can either stick with the previous major version until support for DEFERRED is re-introduced in this major version, or you can remove DEFERRED replacement options from your app.
If you are using the SDK in observer mode, you should only use v5 in Android if you're using BillingClient 6.
See the Android Native - 6.x to 7.x Migration for more details.
If you come from an older version of the RevenueCat SDK, see Android Native - 5.x to 6.x Migration for a more thorough explanation of the new Google subscription model announced with BillingClient 5 and how to take advantage of it.
RevenueCat SDK v5 bumps minimum Android SDK version from Android 4.0 (API level 16) to Android 4.4 (API level 19).
We've added new APIs to support InApp messages both in Android and iOS. You can read more about:
- Google Play InApp Messages which will show users a snackbar message during grace period and account hold once per day and provide them an opportunity to fix their payment without leaving the app.
- App Store InApp messages which will show a modal during grace period once per subscription.
InApp Messages are shown by default in both platforms. If you want to disable this behaviour during configuration of the RevenueCat SDK, setup the shouldShowInAppMessagesAutomatically
property during configuration to false
:
Purchases.configureWith({
apiKey,
appUserID,
observerMode,
userDefaultsSuiteName,
useAmazon,
shouldShowInAppMessagesAutomatically
});
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 7.0.0 (#429) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 6.3.2 (#933) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 6.3.0 (#426) via RevenueCat Git Bot (@RCGitBot)
- Bump fastlane from 2.214.0 to 2.216.0 (#421) via dependabot[bot] (@dependabot[bot])
- Bump danger from 9.3.1 to 9.3.2 (#420) via dependabot[bot] (@dependabot[bot])
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 6.2.0 (#419) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 6.1.2 (#414) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 6.1.0 (#410) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 6.0.0 (#408) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 5.6.4 (#407) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 5.6.3 (#404) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 5.6.2 (#403) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 5.6.1 (#401) via RevenueCat Git Bot (@RCGitBot)
- Bump fastlane from 2.213.0 to 2.214.0 (#386) via dependabot[bot] (@dependabot[bot])
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 5.6.0 (#398) via RevenueCat Git Bot (@RCGitBot)
- Update offering metadata documentation with a usage example (#397) via Toni Rico (@tonidero)
- Use correct type for offering metadata (#394) via Toni Rico (@tonidero)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 5.5.0 (#393) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 5.4.1 (#389) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 5.4.0 (#387) via RevenueCat Git Bot (@RCGitBot)
presentCodeRedemptionSheet
: disabled on Catalyst (#381) via NachoSoto (@NachoSoto)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 5.3.0 (#383) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 5.2.4 (#378) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 5.2.3 (#375) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 5.2.2 (#372) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 5.2.0 (#368) via RevenueCat Git Bot (@RCGitBot)
- Remove api key (#363) via Mark Villacampa (@MarkVillacampa)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 5.1.0 (#365) via RevenueCat Git Bot (@RCGitBot)
RevenueCat Purchases Cordova v4 is here!! 😻
This latest release updates the Android SDK dependency from v5 to v6 to use BillingClient 5. This version of BillingClient brings an entire new subscription model which has resulted in large changes across the entire SDK.
- See Android Native - 5.x to 6.x Migration for a more thorough explanation of the new Google subscription model announced with BillingClient 5 and how to take advantage of it in V6. This guide includes tips on product setup with the new model.
In v3, a Google Play Android Package
or StoreProduct
represented a single purchaseable entity, and free trials or intro offers would automatically be applied to the purchase if the user was eligible.
Now, in Cordova v4, an Google Play Android Package
or StoreProduct
represents a duration of a subscription and contains all the ways to purchase that duration -- any offers and its base plan. Each of these purchase options are SubscriptionOption
s.
When passing a Package
to purchasePackage()
or StoreProduct
to purchaseStoreProduct()
, the SDK will use the following logic to choose which SubscriptionOption
to purchase:
- Filters out offers with "rc-ignore-offer" tag
- Uses
SubscriptionOption
with the longest free trial or cheapest first phase- Only offers the user is eligible will be applied
- Falls back to base plan
For more control, purchase subscription options with the new purchaseSubscriptionOption()
method.
StoreProduct
now has a few new properties use for Google Play Android:
defaultOption
- A subscription option that will automatically be applied when purchasing a
Package
orStoreProduct
- A subscription option that will automatically be applied when purchasing a
subscriptionOptions
- A list of subscription options (could be null)
Observer mode is still supported in v4. Other than updating the SDK version, there are no changes required.
✨ With this new feature, even if our main and backup servers are down, the SDK can continue to process purchases. This is enabled transparently to the user, and when the servers come back online, the SDK automatically syncs the information so it can be visible in the dashboard.
✨ Metadata allows attaching arbitrary information as key/value pairs to your Offering to control how to display your products inside your app. The metadata you configure in an Offering is available from the RevenueCat SDK. For example, you could use it to remotely configure strings on your paywall, or even URLs of images shown on the paywall.
See the metadata documentation for more info!
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 4.18.0 (#348) via RevenueCat Git Bot (@RCGitBot)
- Bump fastlane from 2.212.2 to 2.213.0 (#343) via dependabot[bot] (@dependabot[bot])
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 4.16.0 (#341) via RevenueCat Git Bot (@RCGitBot)
- Fix iOS integration tests (#344) via Cesar de la Vega (@vegaro)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 4.15.0 (#334) via RevenueCat Git Bot (@RCGitBot)
- Bump danger from 9.2.0 to 9.3.0 (#331) via dependabot[bot] (@dependabot[bot])
- Update fastlane-plugin-revenuecat version (#333) via Cesar de la Vega (@vegaro)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 4.14.3 (#328) via RevenueCat Git Bot (@RCGitBot)
- Bump fastlane from 2.212.1 to 2.212.2 (#326) via dependabot[bot] (@dependabot[bot])
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 4.14.2 (#321) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 4.14.1 (#314) via RevenueCat Git Bot (@RCGitBot)
- add
immediateAndChargeFullPrice
proration mode (#310) via Andy Boedo (@aboedo)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 4.14.0 (#311) via RevenueCat Git Bot (@RCGitBot)
- Deprecate
usesStoreKit2IfAvailable
configuration parameter (#306) via Andy Boedo (@aboedo)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 4.13.5 (#305) via RevenueCat Git Bot (@RCGitBot)
- Adds beginRefund functions (#299) via Cesar de la Vega (@vegaro)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 4.13.4 (#301) via RevenueCat Git Bot (@RCGitBot)
- Bump fastlane from 2.212.0 to 2.212.1 (#300) via dependabot[bot] (@dependabot[bot])
- Fix
canMakePayments
jsdoc (#298) via Cesar de la Vega (@vegaro)
- Add
syncObserverModeAmazonPurchase
(#288) via Cesar de la Vega (@vegaro)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 4.13.2 (#294) via RevenueCat Git Bot (@RCGitBot)
- Bump fastlane from 2.211.0 to 2.212.0 (#293) via dependabot[bot] (@dependabot[bot])
- Formats files correctly (#289) via Cesar de la Vega (@vegaro)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 4.13.1 (#290) via RevenueCat Git Bot (@RCGitBot)
- setLogHandler support (#275) via Cesar de la Vega (@vegaro)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 4.13.0 (#285) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 4.12.1 (#281) via RevenueCat Git Bot (@RCGitBot)
- Fix Android integration tests (#284) via Cesar de la Vega (@vegaro)
- Remove req of macOS to avoid confusion (#279) via HaleyRevcat (@HaleyRevcat)
- Added
Purchases.setLogLevel
(#270) via NachoSoto (@NachoSoto)
- Update gems (#276) via Cesar de la Vega (@vegaro)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 4.12.0 (#274) via RevenueCat Git Bot (@RCGitBot)
- Configures dependabot (#277) via Cesar de la Vega (@vegaro)
- Add usesStoreKit2IfAvailable to PurchasesConfiguration (#265) via Cesar de la Vega (@vegaro)
- Adds PurchasesStoreProduct.subscriptionPeriod (#264) via Cesar de la Vega (@vegaro)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 4.10.0 (#267) via RevenueCat Git Bot (@RCGitBot)
- Ignores www folder and build on prepare (#269) via Cesar de la Vega (@vegaro)
- Update
fastlane-plugin-revenuecat_internal
(#268) via NachoSoto (@NachoSoto)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 4.8.0 (#259) via RevenueCat Git Bot (@RCGitBot)
- Update Gemfile.lock (#260) via Cesar de la Vega (@vegaro)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 4.7.0 (#253) via RevenueCat Git Bot (@RCGitBot)
- Adds missing params for better changelogs when bumping (#256) via Cesar de la Vega (@vegaro)
- Update Gemfile.lock (#255) via Cesar de la Vega (@vegaro)
- remove stalebot in favor of SLAs in Zendesk (#252) via Andy Boedo (@aboedo)
- Update fastlane-plugin-revenuecat_internal to latest version (#250) via Cesar de la Vega (@vegaro)
- Fix changelog and VERSIONS.md for 3.4.3 (#249) via Cesar de la Vega (@vegaro)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 4.5.4 (#246) via RevenueCat Git Bot (@RCGitBot)
Due to a deployment issue, no changes were released in this version
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 4.5.2 (#240) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 4.5.1 (#237) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 4.5.0 (#234) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 4.4.4 (#231) via RevenueCat Git Bot (@RCGitBot)
- Fix CDVPlugin class CDVPurchasesPlugin (pluginName: purchasesplugin) does not exist bug (#226) via Cesar de la Vega (@vegaro)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 4.4.3 (#227) via RevenueCat Git Bot (@RCGitBot)
- Setting type of module to
commonjs
(#221) via Toni Rico (@tonidero)
- [AUTOMATIC BUMP] Updates purchases-hybrid-common to 4.4.1 (#222) via RevenueCat Git Bot (@RCGitBot)
- Update Fastlane plugin (#218) via Cesar de la Vega (@vegaro)
- Untangle configure and delegate (#188) via Andy Boedo (@aboedo)
- [AUTOMATIC] Updates purchases-hybrid-common to 4.4.0 (#217) via RevenueCat Git Bot (@RCGitBot)
- Makes hold job depend on integration tests (#215) via Cesar de la Vega (@vegaro)
- Adds missing parameter to bump_version_update_changelog_create_pr (#214) via Cesar de la Vega (@vegaro)
- Update fastlane-plugin-revenuecat_internal (#212) via Cesar de la Vega (@vegaro)
- [AUTOMATIC] Updates purchases-hybrid-common to 4.3.6 (#211) via RevenueCat Git Bot (@RCGitBot)
- [AUTOMATIC] Updates purchases-hybrid-common to 4.3.2 (#207) via RevenueCat Git Bot (@RCGitBot)
- Update releasing docs (#205) via Cesar de la Vega (@vegaro)
- Configures release train (#204) via Cesar de la Vega (@vegaro)
Purchases.configure
has been deprecated in favor of Purchases.configureWith
, which accepts a PurchasesConfiguration
object.
Purchases.configure("api_key", "user_id", true, "user.defaults.suite.name")
has been replaced with:
Purchases.configureWith({
apiKey: "api_key",
appUserID: "user_id",
observerMode: true,
userDefaultsSuiteName: "user.defaults.suite.name",
});
This allows for more flexibility since some configuration parameters arguments can now be omitted so the defaults are used. For example:
Purchases.configureWith({
apiKey: "api_key",
appUserID: "user_id",
userDefaultsSuiteName: "user.defaults.suite.name",
});
Or:
Purchases.configureWith({
apiKey: "api_key",
observerMode: true,
});
We have introduced support for using the Amazon Appstore. We have extensively tested this, and there are some apps using our pre-release Amazon versions in production.
However, we have found some inconsistencies in the way Amazon Appstore prices are reported. We are actively working on patching these inconsistencies.
Please help us help you by reporting any issues you find. New RevenueCat Issue.
You can enable Amazon Appstore support by configuring the SDK using the new configureWith
function:
Purchases.configureWith({
apiKey: "amazon_specific_api_key",
useAmazon: true,
});
For more information around configuration please take a look at the Amazon Appstore section in our docs. The official Amazon In-App Purchasing docs also contains very valuable information, especially around testing and best practices.
- Update orb to fix deploys (#200) via Cesar de la Vega (@vegaro)
- Update fastlane plugin (#199) via Cesar de la Vega (@vegaro)
configure
has been deprecated in favor ofconfigureWith
, which accepts aPurchasesConfiguration
object (#110) via Cesar de la Vega (@vegaro)
RevenueCat for Cordova v3 is here!!
This version of the SDK automatically uses StoreKit 2 APIs under the hood only for APIs that the RevenueCat team has determined work better than StoreKit 1.
New types that wrap native types from Apple, Google and Amazon, and we cleaned up the naming of other types and methods for a more consistent experience.
identify
andcreateAlias
have been removed in favor oflogIn
.reset
has been removed in favor oflogOut
.getEntitlements
has been removed in favor ofgetOfferings
.attributionKey
andPurchases.addAttributionData
have been removed in favor ofset<NetworkID> methods
.setAllowSharingStoreAccount
has been removed. Configure behavior through the RevenueCat dashboard instead.
2.x | 3.0.0 |
---|---|
PurchaserInfo |
CustomerInfo |
Purchases.getPurchaserInfo |
Purchases.getCustomerInfo |
Purchases.invalidatePurchaserInfoCache |
Purchases.invalidateCustomerInfoCache |
PurchasesTransaction |
PurchasesStoreTransaction |
PurchasesTransaction.revenueCatId |
PurchasesStoreTransaction.transactionIdentifier |
PurchasesTransaction.productId |
PurchasesStoreTransaction.productIdentifier |
PurchasesProduct |
PurchasesStoreProduct |
PurchasesProduct.intro_price (number ) |
PurchasesStoreProduct.introPrice (PurchasesIntroPrice ) |
PurchasesProduct.price_string |
PurchasesStoreProduct.priceString |
PurchasesProduct.currency_code |
PurchasesStoreProduct.currencyCode |
Purchases.restoreTransactions |
Purchases.restorePurchases |
Purchases.updatedPurchaserInfoListener |
Purchases.updatedCustomerInfoListener |
Purchases.setup |
Purchases.configure |
- Configure should be called in the current thread and not in a UI thread (#193) via Cesar de la Vega (@vegaro)
- Add support for Firebase, Mixpanel, and CleverTap integrations (#177) via Joshua Liebowitz (@taquitos)
- Apple AdServices support (#167)
- Improve purchase tester (#186) via Andy Boedo (@aboedo)
- cordova-plugin-purchases requires Xcode 13.0+ and minimum targets iOS 11.0+ and macOS 10.13+ (#160) via NachoSoto (@NachoSoto)
- Lots of other under-the-hood improvements. For a full overview of the changes take a look at the full Changelog
- Setting type of module to
commonjs
#192
- Bump
purchases-hybrid-common
to2.0.1
Changelog here - Bump
purchases-ios
to3.14.1
(Changelog here) - Bump
purchases-android
to4.6.1
(Changelog here)
- Bump
purchases-hybrid-common
to1.10.0
Changelog here - Bump
purchases-ios
to3.13.0
(Changelog here) - Bump
purchases-android
to4.4.0
(Changelog here) - Added support for Airship integration via
setAirshipChannelID
#113
- Bump
purchases-ios
to 3.12.8 3.12.8 Changelog here 3.12.7 Changelog here 3.12.6 Changelog here 3.12.5 Changelog here 3.12.4 Changelog here - Bump
purchases-android
to 4.3.3 4.3.3 Changelog here 4.3.2 Changelog here
- Bumped purchases-android to 4.3.1 Changelog here, which fixes canMakePayments not returning (see related issue: RevenueCat/purchases-unity#61)
- Bumped purchases-ios to 3.12.3 Changelog here
- Bumped purchases-hybrid-common to 1.9.1 Changelog here
In this version, we’ve redesigned the way that user identification works. Detailed docs about the new system are available here.
- Introduces
logIn
, a new way of identifying users, which also returns whether a new user has been registered in the system.logIn
uses a new backend endpoint. - Introduces
logOut
, a replacement forreset
.
- deprecates
createAlias
in favor oflogIn
. - deprecates
identify
in favor oflogIn
. - deprecates
reset
in favor oflogOut
. - deprecates
setAllowSharingStoreAccount
in favor of dashboard-side configuration. #80
- Fix return type in
canMakePayments
documentation #80 - Dependency security updates #98
- Bumped purchases-ios to 3.12.2 Changelog here
- Bumped purchases-android to 4.3.0 Changelog here
- Updated BillingClient to version 4.0.0. https://github.com/RevenueCat/purchases-android/commit/f6554bbf7376c3fd492f0bc67183a9f35889ae78
- Add canMakePayments method (#96)
- Update type for availablePackages (#94)
- Cleaned up return types for sync methods (#82)
- Bumped purchases-hybrid-common to 1.7.1 Changelog here
- Bumped purchases-ios to 3.11.1 Changelog here
- Bumped purchases-android to 4.2.1 Changelog here
- Bumped purchases-hybrid-common to 1.6.2 Changelog here
- Bumped purchases-ios to 3.10.7 Changelog here
- Bumped purchases-android to 4.0.5 Changelog here #76
- iOS:
- Added a new method
setSimulatesAskToBuyInSandbox
, that allows developers to test deferred purchases easily.
- Added a new method
- Bumped purchases-hybrid-common to 1.6.1 Changelog here
- Bumped purchases-ios to 3.10.6 Changelog here
- Bumped purchases-android to 4.0.4 Changelog here #76
- removes deprecated
makePurchase
, replaced bypurchaseProduct
- iOS:
- added new method,
syncPurchases
, that enables syncing the purchases in the local receipt with the backend without risking a password prompt. The method was already available on Android. - added a new method,
presentCodeRedemptionSheet
, for offer codes redemption.
- added new method,
- Bumped
purchases-hybrid-common
to 1.5.0 Changelog here - Bumped
purchases-ios
to 3.9.2 Changelog here - Bumped
purchases-android
to 4.0.1 Changelog here
- Bumped
purchases-hybrid-common
to 1.4.5 Changelog here - Bumped
purchases-ios
to 3.7.5 Changelog here - Updates docs for subscriber attributes #57
- Bumped
purchases-hybrid-common
to 1.4.4 Changelog here - Bumped
purchases-android
to 3.5.2 Changelog here
- Attribution V2:
- Deprecated
addAttribution
in favor ofsetAdjustId
,setAppsflyerId
,setFbAnonymousId
,setMparticleId
. - Added support for OneSignal via
setOnesignalId
- Added
setMediaSource
,setCampaign
,setAdGroup
,setAd
,setKeyword
,setCreative
, andcollectDeviceIdentifiers
RevenueCat/purchases-android#184
- Deprecated
- Bumped
purchases-hybrid-common
to 1.4.3 Changelog here - Bumped
purchases-ios
to 3.7.2 Changelog here - Bumped
purchases-android
to 3.5.0 Changelog here - Added
PurchasesPlugin.swift
to prevent compiling issues on objective-c projects - removed
use-frameworks
setting in the sample app to fix linking issues
- Adds missing import.
- Removed lambda from Android code (#51)
- Bumped iOS to 3.4.0 Changelog here
- Bumped Android to 3.2.0 Changelog here
- Added managementURL to PurchaserInfo
- Added setProxyURL
- Added originalPurchaseDate to PurchaserInfo
- Adds new headers for platformFlavor and platformFlavorVersion
- Adds userDefaultsSuiteName as an option when setting up the SDK
- Linked TS Types (#42)
- Moved iOS common files to use pod dependencies (#39)
- Moved Android common files to use gradle maven dependency (#39)
- Adds an example project that shows how to set up an app with RevenueCat #29
- Adds Subscriber Attributes, which allow developers to store additional, structured information for a user in RevenueCat. More info: https://docs.revenuecat.com/docs/user-attributes.
- Adds new method to invalidate the purchaser info cache, useful when promotional purchases are granted from outside the app. #32
- Adds
shouldPurchasePromoProduct
, which allows the app to decide how and when to handle promotional purchases made by users directly through the App Store (#25). - Fixes some JSDocs and export types #26.
- Adds missing types
- Renames
introEligibilityStatus
tostatus
inIntroEligibility
- Adds
checkTrialOrIntroductoryPriceEligibility
. Note that Android always returns INTRO_ELIGIBILITY_STATUS_UNKNOWN. - Updates iOS to 3.0.1 and Android to 3.0.4
- Updates Android to 3.0.3
- Support for new Offerings system.
- Deprecates
makePurchase
methods. Replaces withpurchasePackage
- Deprecates
getEntitlements
method. Replaces withgetOfferings
- See our migration guide for more info: https://docs.revenuecat.com/v3.0/docs/offerings-migration
- Updates to BillingClient 2.0.3. If finishTransactions is set to false (or observerMode is true when configuring the SDK), this SDK won't acknowledge any purchase and you have to do it yourself.
- Adds proration mode support on upgrades/downgrades
- Adds more PurchaserInfo missing properties.
activeEntitlements
,expirationsForActiveEntitlements
andpurchaseDatesForActiveEntitlements
have been removed from PurchaserInfo intro_price
,intro_price_period_number_of_units
andintro_price_cycles
are a number now or null instead of empty strings,intro_price_period_unit
can also be null.- Added Typescript types
- New identity changes:
- The .createAlias() method is no longer required, use .identify() instead
- .identify() will create an alias if being called from an anonymous ID generated by RevenueCat
- Added an isAnonymous property to Purchases.sharedInstance
- Improved offline use
- Fixes EntitlementInfo's
expirationDate
in iOS.
- Fixes crash when there's a trial period and not an introductory price on Android.
- Deprecates activeEntitlements in PurchaserInfo and adds entitlements object to RCPurchaserInfo. For more info check out https://docs.revenuecat.com/docs/purchaserinfo
- Fixes trial info being lost in Android. Access intro_price in the product information to get information around the trial period.
- Fixes exception when trying to purchase a product that doesn't exist.
- Fixes a bug when normalizing intro_price_period.
- BREAKING_CHANGE All
intro_price
related fields in the product are strings, or empty strings if inexistent, in both iOS and Android. There were some discrepancies between platforms released in https://github.com/RevenueCat/cordova-plugin-purchases/releases/tag/0.2.0.
- Upgrades iOS SDK to https://github.com/RevenueCat/purchases-ios/releases/tag/2.5.0 and Android to https://github.com/RevenueCat/purchases-android/releases/tag/2.3.0.
- Adds Facebook as supported attribution network.
- DEPRECATION: automaticAttributionCollection is now deprecated in favor of automaticAppleSearchAdsAttributionCollection since it's a more clear name.
- Adds introductory pricing to the iOS product.
- Compile javascript down to ES5 for better support
- Fixes Android
makePurchase
errors - Fixes
readable_error_code
in iOS
- Updates iOS SDK to 2.3.0. Check out the changelog for a full list of changes https://github.com/RevenueCat/purchases-ios/releases/tag/2.3.0
- Updates Android SDK to 2.2.2. Check out the changelog for a full list of changes https://github.com/RevenueCat/purchases-android/releases/tag/2.2.2
- ** BREAKING CHANGE ** makePurchase parameter oldSKUs is not an array anymore, it only accepts a string now. This is due to changes in the BillingClient.
- AddAttributionData can be called before the SDK has been setup. A network user identifier can be send to the addAttribution function, replacing the previous rc_appsflyer_id parameter.
- Adds an optional configuration boolean observerMode. This will set the value of finishTransactions at configuration time.
- addAttribution will automatically add the rc_gps_adid parameter.
- ** ANDROID BREAKING CHANGE ** Call syncTransactions to send purchases information to RevenueCat after any restore or purchase if you are using the SDK in observerMode. See our guide on Migrating Subscriptions for more information on syncTransactions: https://docs.revenuecat.com/docs/migrating-existing-subscriptions
- addAttribution will automatically add the rc_idfa and rc_idfv parameters if the AdSupport and UIKit frameworks are included, respectively.
- Apple Search Ad attribution can be automatically collected by setting the automaticAttributionCollection boolean to true before the SDK is configured.
- Other bugfixes
- Updates iOS SDK to 2.1.1
- Fixes exception on iOS when sending an error
- Fixes errors in Android not being sent as int
- Fixes crash when underlyingErrorMessage is missing
- Updates versions to 2.1.0 with the new error handling.
- Breaking change, the errors have changed and now return an underlyingErrorMessage instead of the domain.
- Removes the preinstall hook that was causing errors in Windows. 0.0.4 version was broken for some. The iOS framework will be included in the repo from now on.
- Breaking the error callback of makePurchase now returns an error and a boolean indicating if the user cancelled.
- Fixes windows by skipping installation of iOS download script if not building for iOS.
- Removes
onDestroy
Android's Activity lifecycle hook since it was closing the instance.