安卓生成c语言动态库.so文件存放密钥

1、ndk环境

       

下载好箭头所指的插件

2.编写代码

编写JniUtil类

package com.svautolife.desaysv;

/**
 * Created by linmingxing on 2018/10/29 17:04
 */
public class JniUtil {
    static {
        System.loadLibrary("JniUtil");
    }

    public static native String getSslPwd();
}
编译项目

此时在app/build/intermediates/classes/debug/com/svautolife/desaysv位置会生成class文件

此时打开终端,进入app/src/main目录下输入命令:

java -d jni -classpath /Users/linmingxing/vehicle/Android_DesaySV/app/build/intermediates/classes/debug/com/svautolife/desaysv/JniUtil

此时会在jni文件夹中生成.h文件。在jni问价夹中再新建两个.mk文件和一个.c文件

将.h文件中的内容复制到.c文件中,并实现里面的方法。

Android.mk文件

 

Application.mk文件

 

build.gradle配置

添加模块名称muduleName

再次编译(build一下)项目。

打开终端,进入jni目录下,输入ndk-build进行编译。

若编译报错,则添加这个配置

此时jni下会出现libs和obj两个子文件夹。将自文件夹中的.so文件复制到jinLibs文件夹下对应的子文件夹中。

然后就可以使用

JniUtil.getSslPwd()调用动态库中的方法

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值