(MAC)Android studio 3.5 NDK环境配置和第一个应用

1.第一步下载ndk,直接通过SDKManager下载NDK;

2.配置环境变量;

(1). pico .bash_profile

(2).  export PATH=${PATH}:/Users/xxx/xxx/androidstudio/android-sdk-macosx/ndk/21.0.6113669
export NDK_ROOT=/Users/xxx/xxx/androidstudio/android-sdk-macosx/ndk/21.0.6113669

最后保存( control+X) 选 Y;

3.在命令窗口执行,ndk-build;

 

出现这个说明,你配置成功了,到此第一步NDK环境配置好了。

 

4.配置External Tools

a.配置javah,用于生成头文件(可以用Whereis javah 查看具体的命令路径)(MAC)Android studio 3.5 NDK环境配置和第一个应用_第1张图片

Program:/usr/bin/javah

Arguments:-classpath . -jni -d $ModuleFileDir$/src/main/jni $FileClass$

working directory:$ModuleFileDir$/src/main/java

B.ndk-build,用于构建so包;

(MAC)Android studio 3.5 NDK环境配置和第一个应用_第2张图片

Program:/Users/czd/Downloads/androidstudio/android-sdk-macosx/ndk/21.0.6113669/ndk-build(ndk-build的路径)

working directory:$ModuleFileDir$/src/main

5.创建一个新的项目,新进一个JNIUtils类:

(MAC)Android studio 3.5 NDK环境配置和第一个应用_第3张图片

右键点击,使用javah -jni生成 .h头文件;

 

(MAC)Android studio 3.5 NDK环境配置和第一个应用_第4张图片

5.创建c文件,取名native-lib.c;

(MAC)Android studio 3.5 NDK环境配置和第一个应用_第5张图片

继承头文件的方法,返回一个字符串;(MAC)Android studio 3.5 NDK环境配置和第一个应用_第6张图片

6.新建Android.mk和Application.mk两个文件;

a.Android.mk

(MAC)Android studio 3.5 NDK环境配置和第一个应用_第7张图片

LOCAL_MODULE生成so文件的名称,LOCAL_SRC_FILES c文件的名称;这里可以配置多个:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := myLib
LOCAL_SRC_FILES := jnittest.c

include $(BUILD_SHARED_LIBRARY)
include $(CLEAR_VARS)
LOCAL_MODULE := myLib2
LOCAL_SRC_FILES := jnittest2.c
include $(BUILD_SHARED_LIBRARY)

b.Application.mk

6.配置build.gradle

(MAC)Android studio 3.5 NDK环境配置和第一个应用_第8张图片

7.使用ndk-build,生成so文件;

(MAC)Android studio 3.5 NDK环境配置和第一个应用_第9张图片

最终生成的so文件:

(MAC)Android studio 3.5 NDK环境配置和第一个应用_第10张图片

(备注:中途可能有个错误,需要修改android-ndk-r8c/build/core/add-application.mk第128行把__ndk_warning改为__ndk_info)

8.运行程序,到此第一个NDK简单的程序就完成了。(MAC)Android studio 3.5 NDK环境配置和第一个应用_第11张图片

你可能感兴趣的:(android)