我几乎在 Android Studio 中完成了一个包含 OpenCV 库的项目,我通过在 app/src/main 下创建一个新文件夹“jniLibs”来导入该库。现在有一个大问题,.apk 文件大小为 105 MB。对 App 模块使用 shrinkResources 和 minifyEnabled,尺寸降至 95 MB。也为 OpenCV 模块激活 shrinkResources 和 minifyEnabled,编译时返回错误。Gradle 找不到库的包!
这是我的 build.gradle(App)
apply plugin: 'com.android.application'
android {
compileSdkVersion 26
buildToolsVersion '26.0.2'
defaultConfig {
applicationId 'it.project'
minSdkVersion 19
targetSdkVersion 26
versionCode 1
versionName "1.0"
}
buildTypes {
release {
shrinkResources true
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
sourceSets.main {
jniLibs.srcDir 'src/main/jniLibs'
jni.srcDirs = []
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:appcompat-v7:26.0.2'
compile 'com.android.support:design:26.0.2'
compile 'com.google.code.gson:gson:2.7'
compile project(':openCVLibrary330')
}
这是 build.gradle(library)
apply plugin: 'com.android.library'
android {
compileSdkVersion 26
buildToolsVersion "26.0.2"
defaultConfig {
minSdkVersion 19
targetSdkVersion 26
}
}
我怎样才能激活 gradle 来清理库代码呢?
在这种 gradle 构建的情况下,我得到一个 95 MB 的 apk。但是也为库激活 minify 我得到了错误。无法解析 org.opencv.core ecc ecc