Sto cercando di aggirare un problema fastidioso con Gradle che non consente alle librerie di avere diversi sdk min/target. La soluzione era aggiungere quanto segue a build.gradle.Android Studio Gradle Impossibile risolvere il simbolo 'applicationVariants'
android.applicationVariants.all{ variant ->
// This is an annoying hack to get around the fact that the Gradle plugin does not support
// having libraries with different minSdkVersions. Play Services has a min version of 9 (Gingerbread)
// but Android Maps Utils supports 8 (Froyo) still
variant.processManifest.doFirst {
File manifestFile = file("${buildDir}/exploded-bundles/ComGoogleMapsAndroidAndroidMapsUtils03.aar/AndroidManifest.xml")
if (manifestFile.exists()) {
println("Replacing minSdkVersion in Android Maps Utils")
String content = manifestFile.getText('UTF-8')
content = content.replaceAll(/minSdkVersion="8"/, 'minSdkVersion=\"9\"')
manifestFile.write(content, 'UTF-8')
println(content)
}
}
}
Tuttavia, quando lo faccio, ottengo un errore che non è possibile risolvere ApplicationVariants. Come posso risolvere questo?
L'IDE ti darà molti errori non corretti, se utilizzi Android Studio. Ignorali se si costruisce in modo pulito. Guardando il mio file di build, ottengo anche quell'errore per ApplicationVariants ma esso comunque si costruisce. – ashishduh
Huh, hai ragione. Fallo una risposta! – styler1972
Funziona bene per me. Ragazzi, potete aggiungere una risposta? @ styler1972 –