【问题标题】:Android FAT APK: How to force to use ARMv7Android FAT APK:如何强制使用 ARMv7
【发布时间】:2012-11-28 09:21:09
【问题描述】:

我从 NDK 示例中的 hello-gl2 示例构建了 FAT APK。 它有 2 个文件夹 armeabi 和 armeabi-v7a

我添加了以下方法

JNIEXPORT jstring JNICALL Java_com_android_gl2jni_GL2JNILib_status(JNIEnv * env, jobject obj)
{
   const char * result = "Hop";
   #ifdef __ARM__
      result = "__ARM__";
   #endif
   #ifdef __ARM_ARCH_5TE__
      result = "__ARM_ARCH_5TE__";
   #endif
   #ifdef __ARM_ARCH_7A__
      result = "__ARM_ARCH_7A__";
   #endif
   return env->NewStringUTF(result);
}

当应用程序运行时,它会调用该方法并在弹出对话框中显示返回值。 当我在具有 ARMv7 CPU 的设备上运行应用程序时,我收到 __ARM_ARCH_5TE__ 消息而不是 __ARM_ARCH_7A__

然后我删除APK中的armeabi文件夹并重新安装APK。我看到__ARM_ARCH_7A__消息

如果我只编译 armeabi-v7a APK,我会看到 __ARM_ARCH_7A__,但它在 ARMv6 设备上不起作用。

我希望编译将在 ARMv7 CPU 上运行 armeabi-v7a lib 和在 ARMv6 CPU 上运行 armeabi 的 FAT APK。

我做错了什么或错过了什么?

【问题讨论】:

    标签: android android-ndk arm armv7


    【解决方案1】:
    猜你喜欢
    • 1970-01-01
    • 2014-01-08
    • 2023-01-12
    • 2021-04-12
    • 2011-02-17
    • 1970-01-01
    • 2011-03-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多