Я создаю функцию jni в android для создания файла checkSum с помощью BoringSSL.Использование Prebuilt библиотеки в Android Studio
Итак, я построил boringssl для совместной работы библиотеки для использования. Предварительная библиотека в студии Android.
Вывод сборки следующим образом.
Я скопировал * .so файл в моем проекте SRC/главная/jniLibs/Библиотека и BoringSSL включают в себя папку в SRC/главная/JNI
Я ссылается этот проект и применить к моим проектам.
https://github.com/googlesamples/android-ndk/tree/master/hello-libs
Мой build.gradle файл, как это. Я использую Gradle-экспериментальное: 0.7.0 (и Window10, Android Studio 2.1.2)
apply plugin: 'com.android.model.application'
model {
repositories {
libs(PrebuiltLibraries) {
boringssl {
headers.srcDir "src/main/jni/include/openssl"
binaries.withType(SharedLibraryBinary) {
sharedLibraryFile = file("src/main/jniLibs/lib/libcrypto.so")
sharedLibraryFile = file("src/main/jniLibs/lib/libssl.so")
}
}
}
}
android {
compileSdkVersion = 24
buildToolsVersion = '24.0.1'
defaultConfig {
applicationId = 'yein.a'
minSdkVersion.apiLevel = 19
targetSdkVersion.apiLevel = 24
versionCode = 1
versionName = '1.0'
}
ndk {
moduleName = 'hello-libs'
ldLibs.addAll(['android', 'log'])
}
sources {
main {
jni {
dependencies {
library 'boringssl' linkage 'shared'
}
}
jniLibs{
source{
srcDir "src/main/jniLibs/lib"
}
}
}
}
productFlavors{
create("arm"){
ndk.abiFilters.add("armeabi-v7a")
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles.add(file('proguard-android.txt'))
}
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:24.1.1'
}
Это моя структура проекта.
Я думаю, что я правильно применить примеры проектов, потому что это не произошло Gradle ошибка синхронизации.
И когда я использую функцию MD5 для Android, полностью завершите имя функции, как это.
Но я нажимаю запустить его произошла ошибка, как это ...
Я искал много проект в гугле, GitHub, и, конечно, StackOverflow предыдущие ответы, но я до сих пор не решить мою проблему.
Я пробовал изменить версию градиента, но другая ошибка в градиенте произошла ошибка в автоматической сгенерированной функции jni, кроме gradle-experimental: 0.7.0.
Может ли кто-нибудь указать мне в правильном направлении или даже на решение?
Спасибо, что прочитали мой вопрос.
Hi @ 심 예인 У меня проблема, как и вы. Вы разрешаете это? Не могли бы вы поделиться со мной своим простым примером? Благодарю. –
Привет @PhanSinh Я просто поместил свой исходный код в Github [link] (https://github.com/yein28/Checksum). Этот проект получает значение md5 файла My APK. Я написал этот код несколько месяцев назад. Несколько месяцев назад он отлично работает, но я не уверен, что он все еще работает нормально. Я надеюсь, что этот код будет полезен для вас :) –
Чрезвычайно важно @ 심 예인. Я использую OpenSSl для AES для шифрования моих данных. Но теперь я обнаружил, что Google использует BoringSSL вместо OpenSSl с Android 6. Знаете ли вы? Вы работали с BoringSSL? –