I need to bind library for Xamarin.iOS which has many dependencies, such as Firebase/Core and Firebase/Messaging.
Following that doc, I have created a proxy project, generated the fat release, used sharpie to create the ApiDefinitions, generated the dll with a Binding Project in Visual Studio for Mac, and finaly used it in a Xamarin.iOS project that successfully built.
But, the app crashes on startup, on any simulator or real iPhone, with the following logs :
-CMSessionMgr- CMSessionMgrHandleApplicationStateChange: CMSession: Client com.maxim.myapp2 with pid '372' is now Foreground Running. Background entitlement: NO ActiveLongFormVideoSession: NO WhitelistedLongFormVideoApp NO
-CMSessionMgr- CMSessionMgrHandleApplicationStateChange: CMSession: Sending EndInterruption to com.maxim.myppev2 with pid '372' because client moved to ForegroundRunning and is not allowed to play in the background
[application<com.maxim.myappev2>:372] Death sentinel fired!
[application<com.maxim.myappev2>:372] Process exited: <RBSProcessExitContext; specific: <RBSProcessExitStatus; domain: signal (2); code: SIGSEGV (11)>>.
I think it comes from the Enable Bitcode option, which is not supported by Xamarin.
Indeed, the library I am binding has not this option, but one of its dependencies has :
iMac:Release-fat maxim$ otool -l FirebaseCore/FirebaseCore.framework/FirebaseCore | grep __LLVM
Is there any chance I can remove this native dependency library of Firebase and use the already binded one https://github.com/xamarin/GooglePlayServicesComponents/ ??
How could I do please ?
Source: Xamarin.ios Questions