Search code examples
androidandroid-ndkandroid-manifest

Is there a way to specify processor architecture requirement in the Android manifest?


I'm using a native library in my Android project that is compiled to armeabi-v7. My project targets Android SDK 8. When I try to run it with my phone unplugged, auto-targetting picks an Android 2.2 (armeabi) virtual device instead of the 4.03 (armeabi-v7) and tries to install it on that, but that throws a Failed to install apk on device 'emulator! error.

I cannot find a way to specify the required processor architecture, which seems strange considering you can specify the Android SDK version, hardware requirements (like hardware keyboard) with <uses-configuration>, many more hardware requirements and even OpenGL version with <uses-feature> in the AndroidManifest.xml.

Is there a way to specify that?


Solution

  • No, there is not way of doing this which is strange, I agree. There's one way of specifying the architecture (setting APP_ABI := armeabi-v7a in Application.mk) but this is only taken into account when building the native libraries, not when selecting an appropriate emulator.