Android Studio使用NDK生成SO库并在工程中使用

本文详细介绍了在Windows 10环境下,如何使用Android Studio 3.5结合NDK-r16b配置NDK环境变量,创建Empty工程,生成SO库并将其集成到项目中。步骤包括配置NDK环境变量、新建工程、关联NDK、编写Java文件、编译生成头文件、实现C代码、创建Android.mk和Application.mk文件,最后在Android Studio中调用SO库的方法并验证其功能。
摘要由CSDN通过智能技术生成

环境:Window 10、 Android Studio 3.5、 ndk-r16b

配置NDK环境变量:
首先Win+R键输入cmd,确定后打开命令行,输入ndk-build检查是否配置NDK环境变量
ndk-build
如果没有出现上图的提示,则说明电脑没有配置NDK环境变量,可以按照下面的步骤配置一下

右键电脑 > 属性 > 高级系统设置 > 环境变量 > 系统变量 > 新建,输入变量名NDK_HOME,变量值则是下载的NDK位置
在这里插入图片描述
确定后在系统变量中找到Path,选择编辑
在这里插入图片描述
然后选择新建,输入%NDK_HOME%,将刚才新建的NDK_HOME添加进来
在这里插入图片描述
确定后再打开命令行工具,输入ndk-build就会看到最上边的正确配置提示了。

下面通过一个简单的工程介绍如何在Android Studio生成一个so库并在代码中使用
一、新建一个Empty工程
注意记下包名和路径
创建工程
二、关联NDK
打开File > Project Structure > SDK Location,选择NDK位置
选择NDK
三、新建java文件并生成对应的class文件
在当前包下新建一个java文件,这里命名为JavaToC.java,名字可以根据需要更换,只需和后面的Android.mk文件中的名字对应即可:
在这里插入图片描述
打开之后编辑,首先加载so库,这个库的名字需要和后面Android.mk文件中定义的so库的名字相同,注意不要写错了,不然找不到对应的库,程序运行会报错;其次定义了一个native方法,这个方法的具体实现会放在c里,并被包含到so库中:

package com.test.jnitest;
public class JavaToC {
   
    static{
   
        // ToCJniTest就是后面会生成的so库的名字
        System.loadLibrary("ToCJniTest"
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值