![]() |
VOOZH | about |
dotnet add package Kebechet.Maui.RevenueCat.iOS --version 5.72.0.1
NuGet\Install-Package Kebechet.Maui.RevenueCat.iOS -Version 5.72.0.1
<PackageReference Include="Kebechet.Maui.RevenueCat.iOS" Version="5.72.0.1" />
<PackageVersion Include="Kebechet.Maui.RevenueCat.iOS" Version="5.72.0.1" />Directory.Packages.props
<PackageReference Include="Kebechet.Maui.RevenueCat.iOS" />Project file
paket add Kebechet.Maui.RevenueCat.iOS --version 5.72.0.1
#r "nuget: Kebechet.Maui.RevenueCat.iOS, 5.72.0.1"
#:package Kebechet.Maui.RevenueCat.iOS@5.72.0.1
#addin nuget:?package=Kebechet.Maui.RevenueCat.iOS&version=5.72.0.1Install as a Cake Addin
#tool nuget:?package=Kebechet.Maui.RevenueCat.iOS&version=5.72.0.1Install as a Cake Tool
👁 NuGet Version
👁 NuGet Downloads
The versioning scheme of Maui.RevenueCat.iOS is derived from the versioning of revenuecat/purchases-ios.
| revenuecat/purchases-ios | Maui.RevenueCat.iOS | Note |
|---|---|---|
| 3.4.1 | 3.4.1.0 | First version of bindings for 3.4.1 |
| 3.4.1 | 3.4.1.17 | Bindings for 3.4.1 containing fixes |
First version of our Maui binding was just changed Xamarin.RevenueCat.iOS binding working for .NET MAUI. It was binding around RevenueCat ios 4.9.0, but this native library contained bitcode which is no longer accepted by AppStore.
Porting of binding from Xamarin to Maui required several changes:
ApiDefinitions - commitIntPtr → NativeReference in ApiDefinitions - commit
NoBindingEmbedding = false - commitBecause of a problem with bitcode I have decided to create completely new binding from scratch. Here are steps I have done:
purchases-ios v4.19.0RevenueCat.xcframework/ios-arm64 folder on MAC desktop.cd ~/Desktopsharpie xcode -sdks and use the iphoneosXX.Y version you havesharpie bind -framework ios-arm64/RevenueCat.framework -sdk iphoneos18.4 -scope ios-arm64/RevenueCat.framework/Headers
ApiDefinitions.cs and StructsAndEnums.cs filesRevenueCat: framework requires SDK 'iphoneosXX.Y' which is not installed. You may need a newer Xcode. In my case it was iphoneos16.4
Xcode 14.3.1 contains iphoneos16.4.xip file and after extraction right click on extracted Xcode file and Show Package ContentsContents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs and copy iPhoneOsXX.Y.sdk (if it is just link/alias then copy the iPhoneOs.sdk and rename it to iPhoneOsXX.Y.sdk in my case iPhoneOS16.4.sdk)Show Package Contents → navigate again to: Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs and paste the copied iPhoneOSXX.Y.sdk theresharpie xcode -sdks and the new SDK you copied should be now there as wellsharpie command to generate ApiDefinitions.cs and StructsAndEnums.cs files againVerify attributes - commitiOS (. Because all of them contain this string (AutoGeneratedName = true)RCAttribution and RCAttribution_RevenueCat_Swift_3714 I put together - commit
byte[] 😅RevenueCatVersionNumber use this for interface name: [BaseType(typeof(NSObject))] [DisableDefaultCtor] interface RCConstants and above the variable put [Static] attributeINativeObject inheritance for interfaces that were used in dictionaries and was of type NSObject - commit
cannot be used as type parameter 'TValue' in the generic type or method 'NSDictionary<TKey, TValue>'NSUrlRequest for NSMutableUrlRequest - commitTrampolines.g.cs(433,25,433,26): error CS1026: ) expectedNSObject methods - commit
isEqual and DescriptionDebugDescription - commitNSOperation methods - commitName - commit
[Obsoleted] remove all new line characters \n.xcframework remove all *.swiftmodule directorieslang++ exited with code 1: error : Undefined symbols for architecture arm64
"_OBJC_CLASS_$_FakeASIdManager", referenced from:
objc-class-ref in registrar.o
"_OBJC_CLASS_$_FakeAfficheClient", referenced from:
objc-class-ref in registrar.o
"_OBJC_CLASS_$_FakeTrackingManager", referenced from:
objc-class-ref in registrar.o
"_OBJC_CLASS_$_NetworkOperation", referenced from:
objc-class-ref in registrar.o
"_OBJC_CLASS_$_PaymentQueueWrapper", referenced from:
objc-class-ref in registrar.o
"_OBJC_CLASS_$_ProductsFetcherSK1", referenced from:
objc-class-ref in registrar.o
"_OBJC_CLASS_$_PurchasesReceiptParser", referenced from:
objc-class-ref in registrar.o
"_OBJC_CLASS_$_StoreKit1Wrapper", referenced from:
objc-class-ref in registrar.o
"_OBJC_CLASS_$_StoreKitRequestFetcher", referenced from:
objc-class-ref in registrar.o
"_OBJC_CLASS_$_TrackingManagerProxy", referenced from:
objc-class-ref in registrar.o
FakeASIdManager from ApiDefinitions.cs file - commit.xip file and move it's content to /Applications folderThe connection cannot continue because the remote iOS SDK was not found or is corrupted.
rm -rf ~/Library/Caches/Xamarin/XMA/SDKs/dotnet/.NET 7 and with VS2022 v17.7 IT IS NOT POSSIBLE TO BUILD THE PACKAGE WITH EMBEDDED NATIVE LIBRARY (even with connected MAC).
VS2022 v17.8.4 with latest MAUI it works correctlyThis repository is licensed with the license.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net9.0-ios18.0 net9.0-ios18.0 is compatible. net10.0-ios net10.0-ios was computed. |
Showing the top 2 NuGet packages that depend on Kebechet.Maui.RevenueCat.iOS:
| Package | Downloads |
|---|---|
|
Kebechet.Maui.RevenueCat.InAppBilling
Serves as an abstraction around RevenueCat Android and iOS SDKs https://docs.revenuecat.com/docs |
|
|
MZikmund.Uno.RevenueCat
Serves as an abstraction around RevenueCat Android and iOS SDKs for Uno Platform https://docs.revenuecat.com/docs |
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 5.72.0.1 | 410 | 5/12/2026 |
| 5.72.0 | 106 | 5/12/2026 |
| 5.34.0.1 | 2,777 | 8/18/2025 |
| 5.34.0 | 259 | 8/11/2025 |
| 4.31.9.6 | 1,456 | 1/11/2025 |
| 4.31.9.6-preview4 | 170 | 1/11/2025 |
| 4.31.9.6-preview3 | 157 | 1/11/2025 |
| 4.31.9.6-preview2 | 154 | 1/11/2025 |
| 4.31.9.6-preview1 | 168 | 1/11/2025 |
| 4.31.9.5 | 203 | 1/11/2025 |
| 4.31.9.4 | 212 | 1/11/2025 |
| 4.31.9.3 | 2,207 | 9/30/2024 |
| 4.31.9.2 | 290 | 8/7/2024 |
| 4.31.9.1 | 2,688 | 1/18/2024 |
| 4.31.9.1-preview1 | 178 | 1/18/2024 |
| 4.31.9 | 253 | 1/17/2024 |
| 4.31.9-preview31 | 192 | 1/17/2024 |
| 4.31.9-preview30 | 185 | 1/17/2024 |
| 4.31.9-preview23 | 192 | 1/17/2024 |
| 4.31.9-preview22 | 195 | 1/17/2024 |
Fix for 5.72.0: link-time crash from unexported native classes (StoreKit2PromotionalOfferPurchaseOptions, RedirectLoggerSessionDelegate) and bgen failure from combined platform-availability attributes ([Watch, TV, Mac, iOS]). Bindings regenerated via .github/workflows/generate-ios-bindings.yml.