Ну, после долгого времени поддержка добавления предварительно созданных файлов .so в проект Android была добавлена в плагин Android Gradle 0.7.3. Но в отличие от меня многие люди по-прежнему используют хак/обходной путь для добавления предварительно созданных файлов .so, то есть zip файлы с использованием определенной иерархии, а затем переименовываются в .jar. Ниже приведено пошаговое руководство по правильному добавлению файлов .so.
Добавьте предварительно созданные .so файлы в проект с помощью плагина Android Gradle 0.7.3
Ответ 1
Итак, как вы можете добавить готовые .so файлы?
1) Обновите свою студию android до 0.4.0
2) Замените "distributionUrl =" в gradle -wrapper.properties на "distributionUrl = http://services.gradle.org/distributions/gradle -1.9-all.zip"
3) Добавьте/замените раздел buildscript с расширением build build:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.7.3'
}
}
4)
5) Добавьте в свой build.gradle следующее:
android {
compileSdkVersion 18
buildToolsVersion "18.1.0"
defaultConfig {
minSdkVersion 10
targetSdkVersion 18
}
productFlavors {
x86 {
ndk {
abiFilter "x86"
}
}
arm {
ndk {
abiFilters "armeabi-v7a", "armeabi"
}
}
}
packagingOptions {
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/NOTICE'
exclude 'META-INF/LICENSE'
exclude 'META-INF/license.txt'
exclude 'META-INF/notice.txt'
}
}
6) Создайте свой проект.
Ответ 2
Наконец-то я получил этот код.
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.7.3'
}
}
apply plugin: 'android'
repositories {
mavenCentral()
}
android {
compileSdkVersion 19
buildToolsVersion "19.0.1"
defaultConfig {
minSdkVersion 14
targetSdkVersion 19
}
productFlavors {
x86 {
ndk {
abiFilter "x86"
}
}
arm {
ndk {
abiFilters "armeabi-v7a", "armeabi"
}
}
}
packagingOptions {
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/NOTICE'
exclude 'META-INF/LICENSE'
exclude 'META-INF/license.txt'
exclude 'META-INF/notice.txt'
}
}