If you actually need any of the information we’re relaying to you today, our deepest sympathies; but if you are so bedevilled as to have to come up with some plan that makes sense for developing a cross-platform native-requiring library, the nice people at Skyscanner have done an impressive amount of legwork researching and documenting the alternatives for you. Shocking spoiler: They all suck.
TL;DR: C++ sucks the least.
When the cross-platform development tools failed to provide the functionality we needed (check part one), we decided to try a lower-level solution that is supported by both platforms; C++. In Android, we’re able to interface C++ code through the Android Native Development Kit (NDK) and the Java Native Interface (JNI) framework. As for iOS, this is possible with Objective-C++, a language variant that allows source files to include both Objective-C and C++. Hooray!!