我成功地构建了一个使用本机(JNI)库的Android应用程序(GUI).
但是,现在我想创建一个从命令行(root权限)运行的可执行文件,并且完全不使用GUI.我该如何建造这样的东西?
我成功地构建了一个使用本机(JNI)库的Android应用程序(GUI).
但是,现在我想创建一个从命令行(root权限)运行的可执行文件,并且完全不使用GUI.我该如何建造这样的东西?
对于NDK r8d,可以用更简单的方法解决这个问题.
创建具有以下目录层次 struct 的项目:
project/
jni/
Android.mk
Application.mk
*.c, *.cpp, *.h, etc.
填写Android.用下面的内容.最重要的是最后一行.判断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
位.