安卓生成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()調用動態庫中的方法

 

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