android studio NDK使用,编译c生成.so实践记录

开发环境,Android studio 2.1.2,SDK环境和NDK环境

SDK不说了,NDK环境配置网上也有很多,这里就简单记录下:

1 下载NDK并安装到电脑 D:\android\android-ndk-r11c


2 android studio中右键项目进入菜单配置NDK



3 在项目的gradle.properties文件中加上 android.useDeprecatedNdk = true


为了方便生成头文件和so文件,我们可以在Android Studio → External Tools中设置两个命令,分别来生成头文件和生成.so文件





Program: $JDKPath$/bin/javah
Parameters: -encoding UTF-8 -d ../jni -jni $FileClass$
Working directory: $SourcepathEntry$\..\java





Program: D:\android\android-ndk-r11c\build\ndk-build.cmd
Parameters: NDK_LIBS_OUT=$ModuleFileDir$/src/main/jniLibs
Working directory: $ModuleFileDir$\src\main
(注意:NDK_LIBS_OUT=$ModuleFileDir$/src/main/jniLibs
这个含义是将生成的so文件放在jniLibs这个文件下,
如果不写这句话,什么都不填,则为默认的文件夹)





写一个测试类



右击这个类选择刚才写的javac命令,就会生成头文件



根据头文件写一个测试的.c文件

注意:打红框的地方要和头文件的名称和方法命名一样

写一个Android.mk文件
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)

LOCAL_MODULE := JniTest
LOCAL_SRC_FILES := TestJni.c
include $(BUILD_SHARED_LIBRARY)


然后右击jni文件夹选择我们的命令ndk-build





则生成了





build.gradle的配置




最后so已经生成,调用
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值