Xamarin.iOS bindings for Mixpanel iOS v5.0.9.
This repository aims to target net9.0-ios and net10.0-ios which are currently the latest .NET iOS STS and LTS releases.
Xam.Plugin.Mixpanel.iOS is available via NuGet. https://www.nuget.org/packages/Xam.Plugin.Mixpanel.iOS/
Include Mixpanel
using Xam.Plugin.Mixpanel.iOS;And then follow the docs provided at the Mixpanel Developer Documentation (https://developer.mixpanel.com/docs/ios)
These build instructions are intended to be run on macOS.
- Navigate to the
Bindingdirectory - Run
FetchFramework.sh - Run
BuildDlls.sh - Fetch your
Xam.Plugin.Mixpanel.iOS.dllfrom theXam.Plugin.Mixpanel.iOS/bin/Release/net10-ios/directory.
- Navigate to the
Bindingdirectory - Run
FetchFramework.sh - Run
BuildNugetPackage.sh - Fetch your
Xam.Plugin.Mixpanel.iOS.x.y.z.nupkgandXam.Plugin.Mixpanel.iOS.x.y.z.snupkgfrom the `Xam.Plugin.Mixpanel.iOS/bin/Release/`` directory.
To update the Mixpanel SDK change the version within Binding/Cartfile to your desired SDK version and run the FetchFramework.sh script. This desired version is generally then latest version from mixpanel/mixpanel-iphone releases.
If there are API changes you will want to also run SharpieBind.sh and examine code output in the newly generated NewBinding_ApiDefinition.cs and NewBinding_StructsAndEnums.cs files. Desired API changes should be then modified in the ApiDefinition.cs and StructsAndEnums.cs files.
NOTE: The NewBinding_ files are not build ready and need to be modified manually.
- To generate new bindings - Xcode 16.2 (why Xcode 16.2? See below)
- To compile the project - Xcode 26.2
- Carthage
- Objective Sharpie
Objective Sharpie has fallen a little behind in its updates and as such it is not compatible with modern versions of Xcode. Essentially in order to create new bindings you need to have the iPhone 18.2 SDK, and this comes with Xcode 16.2. Attempting to create bindings in any newer versions will generate errors.
After the bindings are made you can use the latest Xcode (26.2 at the time of writing) to be compile the nuget packages. You can see this thread for more information. It may also be useful to watch this thread to get information about Objective Sharpie updates.
- Verify the
Verifystatements work as expected. - Figure out how to handle
MixpanelTypeCategorycorrectly.
Pull requests welcome!