如何构建可在Android上运行的本机(命令行)可执行文件?
我已经成功构建了使用本机(JNI)库的Android应用(GUI)。
但是,现在我想创建一个从命令行运行的可执行文件(root特权),并且根本不使用GUI。我该如何构建类似的东西?
回答:
从NDK r8d开始,这可以通过更简单的方式解决。
- 创建具有以下目录层次结构的项目:
project/ jni/
Android.mk
Application.mk
*.c, *.cpp, *.h, etc.
- 使用以下内容填写Android.mk。最重要的是最后一行。检查NDK文档中其他变量的含义。
LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS)
LOCAL_MODULE := name-of-your-executable
LOCAL_SRC_FILES := a.cpp b.cpp c.cpp etc.cpp
LOCAL_CPPFLAGS := -std=gnu++0x -Wall -fPIE # whatever g++ flags you like
LOCAL_LDLIBS := -L$(SYSROOT)/usr/lib -llog -fPIE -pie # whatever ld flags you like
include $(BUILD_EXECUTABLE) # <-- Use this to build an executable.
- 转到
project/
目录,然后键入
ndk-build
结果将放置在中project/libs/<arch>/name-of-your-executable
。
以上是 如何构建可在Android上运行的本机(命令行)可执行文件? 的全部内容, 来源链接: utcz.com/qa/420241.html