The Xamarin documentation is a bit unclear on this. If I build my app with only armeabi ticked in the build preferences, will my app:
- Be available for v7a devices in the Play Store?
- Run on v7a devices?
If it does run, are there any features like using threads that will lead to unexpected behaviour or crashes?
I've got a simple app and am trying to keep it small. Also, I don't have a v7a device to do a quick experiment.
Clarification:
While there seems to be clear acceptance that it is "safe, but not so performant" to compile an Android app with only the amreabi library (see this excellent post: Why use armeabi-v7a code over armeabi code?), the Xamarin docs on CPU architecture, that I assume applies to their compiled .so libraries, says:
it is important to remember that the armeabi runtime used by Xamarin.Android is thread safe. If an application that has armeabi support is deployed to an armeabi-v7a device, many strange and unexplainable exceptions will occur.
I have since been able to test my app that is just compiled with armeabi on a v7a device and haven't run into any "strange and unexplainable exceptions" YET.
Update:
Looks like the Xamarin docs has since been updated and now (2014-07-14) reads:
it is important to remember that the armeabi runtime used by Xamarin.Android is not thread safe. If an application that has armeabi support is deployed to an armeabi-v7a device, many strange and unexplainable exceptions will occur.