android ndk初次搭建以及常见问题

环境搭建,安装lldb和最新ndk

一:新建myndk工程并创建JNITest类

二:javah 生成头文件h

打开as的terminal,进入到java的目录输入

-d jni表示在当前目录下创建jni文件夹,后面必须采用点分割的包名(com.XX.XX.XX),进入的路径和包名必须刚好配合,否则不能生成头文件,JNITest最后不能包含扩展名,回车后便可以在jni目录下生成

生成的头文件再根据需要rename

错误写法:

三:在jni目录下创建android.mk application.mk 并且关联到c++库

android.mk

LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)

LOCAL_MODULE := JNITest
LOCAL_SRC_FILES := test.c
include $(BUILD_SHARED_LIBRARY)

application.mk

APP_PLATFORM := android-21
APP_ABI :=armeabi-v7a

 左上角file ->Link C++ Project with Gradle下拉选择ndk-build,找到上述的mk文件后点确认,gradle自动生成

常见问题:此时打开头文件h会出现红字

解决方法:

1、新建test.c

2、test.c中加入include头文件

3、test.c中重载方法并加入测试代码

4、gradle刷新

五:编译运行

此时编译会出现

解决方法:JNITest类中加入so库引用

再次运行即可看到结果

六:JNITest加入新的方法

点击就会在test.c中生成

加入测试代码

activity中调用

运行大功告成

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章