我正在寻找在 Android 4.1 (Jelly Bean) 上运行本机 ARM 可执行文件的方法。例如,编译经典的 C 程序
// hello.c
#include <stdio.h>
int main() {
printf("Hello world");
}
到 ARMv7a 可执行文件,比如hello
使用 Android NDK,然后在 Android shell 中运行它。/data/local
我尝试了网络上建议的方法,例如将可执行文件推送到
adb push hello /data/local
更改权限以允许其执行
adb shell chmod 755 /data/local/hello
然后在 shell 中使用
adb shell /data/local/hello
最后一步失败并出现错误:
/data/local/hello: not found
但显然文件在那里。我怀疑问题在于 Jelly Bean 的外壳不再允许执行外星二进制文件。谁能证实这一点并给我一个解决方案?