如何构建可在Android上运行的本机(命令行)可执行文件?

我已经成功构建了使用本机(JNI)库的Android应用(GUI)。

但是,现在我想创建一个从命令行运行的可执行文件(root特权),并且根本不使用GUI。我该如何构建类似的东西?

回答:

从NDK r8d开始,这可以通过更简单的方式解决。

  1. 创建具有以下目录层次结构的项目:

        project/

jni/

Android.mk

Application.mk

*.c, *.cpp, *.h, etc.

  1. 使用以下内容填写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.

  1. 转到project/目录,然后键入

      ndk-build

结果将放置在中project/libs/<arch>/name-of-your-executable

以上是 如何构建可在Android上运行的本机(命令行)可执行文件? 的全部内容, 来源链接: utcz.com/qa/420241.html

回到顶部