私はAndroidプロジェクトでmbedtlsを使用しようとしています。それはCMakeを便利に使用しています。それをそのまま使用し、そのままJNIラッパーを含む余分なCファイルを追加するのが最も簡単な方法です。JNIファイルを外部のAndroid Cライブラリにリンクするにはどうすればよいですか?
私は./app/mbedtls
にソースをダウンロードして./app/build.gradle
にこれを追加しました:
defaultConfig {
...
externalNativeBuild {
cmake {
arguments "-DENABLE_TESTING=OFF" // Testing requires Perl which I don't have.
}
}
}
...
externalNativeBuild {
cmake {
path "mbedtls/CMakeLists.txt"
}
}
Gradleのビルドが(やや驚くほど!)が正常に終了していること、それが実際にどのlibx.aファイルを生成しませんが、やった後、 。
は、私はまた、これを含むファイル./app/CMakeLists.txt
作成しました:
cmake_minimum_required(VERSION 3.4.1)
add_library(mbedtls_jni SHARED src/main/cpp/mbedtls_jni.cpp)
をそして私は、そのファイルを作成しています。しかし、どうすればそのファイルをリンクして1つのライブラリにまとめることができますか? mbedtlsを変更することなく理想的です。