net7.0-ios Bindings for Amplitude (Website, Setup Instructions)
NuGet packages are published on nuget.org.
The versioning scheme of Tonestro.Maui.Amplitude.iOS
is derived from the versioning of amplitude/Amplitude-iOS
.
amplitude/Amplitude-iOS | Tonestro.Maui.Amplitude.iOS | Note |
---|---|---|
3.4.1 | 3.4.1.1 | First version of bindings for 3.4.1 |
3.4.1 | 3.4.1.17 | Bindings for 3.4.1 containing fixes |
This Tonestro.Maui.iOS binding does NOT support certificate pinning which would be enabled by setting AMPLITUDE_SSL_PINNING=1
.
This project does not include the ComodoRsaDomainValidationCA.der
file in the native library.
According to the docs of Amplitude, the frameworks AdSupport.framework
and CoreTelephony.framework
should be added to enable full support for all Amplitude features.
The native library bound by this binding includes both of them:
If initialization crashes and you get errors like [RCPurchases configureSubscriberAttributesManager]: unrecognized selector sent to instance
, please adapt your project configuration:
Add -gcc_flags "-ObjC"
to the MtouchExtraArgs
XML element of your project file. If you want to do the config change using the UI Editor, the change is given below:
This section explains how to create resp. adapt the bindings to bind to a newer version of Amplitude for iOS.
cd native
- Set the desired version of Amplitude for iOS in
Cartfile
- Execute
./create-xcframework.sh
After these steps, a xcframework was created in native
. This xcframework is referenced as NativeReference
in Tonestro.Maui.Amplitude.iOS.csproj
.
This section describes how to create ApiBindings.cs
.
cd native
- Execute
./generate-bindings.sh
- Copy
ApiBindings.cs
to../Tonestro.Maui.Amplitude.iOS