Android NDK x86和x86_64 ABI

问题描述 投票:0回答:1

我最近在Android Studio中创建了一个简单的“Hello World”Android NDK项目,并尝试使用gradle / cmake / clang构建系统。

我创建了一个包含main方法的main.c文件:

#include <stdio.h>

int main()
{
    printf("Hello, world");
    return 0;
}

我的cmakelist.txt文件将使用Android NDK工具链编译此文件,以生成我命名为ndk_example_c的可执行文件:

add_executable( # Sets the name of the library.
        ndk_example_c

        # Provides a relative path to your source file(s).
        main.c
        )

gradle / cmake为4个默认ABI生成4个二进制文件:

  • Rmpfha
  • arm64-V8A
  • 86
  • x86_64的

我设法使用adb shell在Android设备上运行arm abi可执行文件。但是,我希望能够在Windows或Linux上运行x86和x86_64可执行文件,但二进制文件似乎不是标准的可执行文件。

所以,我的问题是:gradle生成的x86和x86_64二进制文件的目标平台/操作系统是什么?有人设法运行它们吗?

谢谢,

android gradle cmake android-ndk
1个回答
1
投票

x86或... 64最有用的目标平台是Android模拟器,您可以通过AVD运行而无需离开Android Studio。还有其他仿真器,可以提供更好的性能或附加功能。

这些Android APK的另一个平台是ChromeBook。有一个独立的effort将Android带到任何PC。请注意,您可能需要对应用进行一些调整才能在大屏幕上看起来不错。

最后,存在一些采用Atom CPU的Android设备。像华硕ZenFone 2这样的手机现在并不常见,但你可以找到一些使用x86的机顶盒。

© www.soinside.com 2019 - 2024. All rights reserved.