iOS
What is RevenueCat?โ
RevenueCat provides a backend and a wrapper around StoreKit and Google Play Billing to make implementing in-app purchases and subscriptions easy. With our SDK, you can build and manage your app business on any platform without having to maintain IAP infrastructure. You can read more about how RevenueCat fits into your app or you can sign up free to start building.
Requirementsโ
Xcode 15.0.0+
Supported Platformsโ
Platform | Minimum target |
---|---|
iOS | 11.0+ |
tvOS | 11.0+ |
macOS | 10.13+ |
watchOS | 6.2+ |
visionOS | 1.0+ |
Installationโ
RevenueCat for iOS can be installed either via CocoaPods, Carthage, or Swift Package Manager.
Already have 4.x installed? View our migration guide to 5.x โ
Install via Swift Package Managerโ
You can use Swift Package Manager to add RevenueCat to your Xcode project.
Use a mirror of the main repository by selecting File ยป Add Packages Dependencies...
and entering the repository URL (https://github.com/RevenueCat/purchases-ios-spm.git
) into the search bar (top right).
This will integrate far more quickly than using the main repository directly.
Set the Dependency Rule to Up to next major
, and the version number to 5.0.0 < 6.0.0
.
When "Choose Package Products for purchases-ios" appears, only select RevenueCat
and RevenueCatUI
and click "Add Package".
Click "Add Package". The library should have been added to the Package Dependencies section and you should now be able to import RevenueCat
into your source files.
Install via CocoaPodsโ
To always use the latest release, add the following to your Podfile:
- Podfile
pod 'RevenueCat'
Alternatively, pin to a specific minor version:
- Ruby
pod 'RevenueCat', '~> 5.2'
And then run:
- Terminal
pod install
This will add RevenueCat.framework
to your workspace.
Install via Carthageโ
To always use the latest release, add the following to your Cartfile:
- Cartfile
github "revenuecat/purchases-ios"
Alternatively, pin to a specific minor version:
- Text
github "revenuecat/purchases-ios" ~> 5.2.3
Carthage with XCFrameworksโ
If you're using Carthage version >= 0.37, you can use RevenueCat as an XCFramework instead of a Universal Framework. This makes setup easier, since you don't have to set up build phases at all.
To use XCFrameworks with Carthage, you need to pass in --use-xcframeworks
.
- Terminal
carthage update --use-xcframeworks
More information on using XCFrameworks with Carthage is available at https://github.com/carthage/Carthage/#building-platform-independent-xcframeworks-xcode-12-and-above
Under certain configurations, when debugging your app, using po
to print objects to the console might result in an error \"Couldn't IRGen Expression\"
. If you run into this, one workaround is to add a single, empty Objective-C file to your project, and create a bridging header. There's more information on this issue here
Carthage with regular frameworksโ
Run:
- Text
carthage update
Import the SDKโ
You may need to add an empty Swift file and a bridging header to your project before compiling.
You should now be able to import RevenueCat
.
- Swift
- Objective-C
import RevenueCat
@import RevenueCat;
// or
#import "Purchases.h"
Don't forget to enable the In-App Purchase capability for your project under Project Target -> Capabilities -> In-App Purchase
Next Stepsโ
- Now that you've installed the SDK in your iOS app, get started by configuring an instance of Purchases โ