我正在尝试开发一个简单的Android应用程序,我正在尝试使用sqlcipher,它在内部使用.so库.我已经阅读了有关如何在Android应用程序中使用sqlcipher的文档.我已按照步骤进行编译,没有任何错误.但是,在运行时它会抛出UnsatisfiedLinkError
.
谷歌搜索它,我发现,gradle不支持.so库,但我在这里发现了一个我正在尝试使用的黑客.但它会在gist的第40行抛出编译时错误,
tasks.withType(com.android.build.gradle.PackageApplicationTask) { pkgTask ->
pkgTask.jniDir new File(buildDir, 'native-libs')
}
Run Code Online (Sandbox Code Playgroud)
话
无法在Project'MyProject'上找到属性'com'
我在这里发布build.gradle文件中的代码.
buildscript {
repositories {
maven { url 'http://repo1.maven.org/maven2' }
}
dependencies {
classpath 'com.android.tools.build:gradle:0.4'
}
}
apply plugin: 'android'
dependencies {
compile files('libs/android-support-v4.jar')
compile files('libs/commons-codec.jar')
compile files('libs/guava-r09.jar')
compile files('libs/sqlcipher.jar')
}
targetCompatibility = 1.6
sourceCompatibility = 1.6
android {
target = 'android-14'
compileSdkVersion 17
buildToolsVersion "17.0.0"
defaultConfig {
minSdkVersion 9
targetSdkVersion 16
}
}
task copyNativeLibs(type: Copy) …
Run Code Online (Sandbox Code Playgroud)