习惯了 ANT 在 Netbeans 中配置 Android 项目,我是 Android Studio 和 Gradle 的新手。
(在 Netbeans 和 Android Studio 中)我在 Gradle 对最新版本的 Android support-v4 库的依赖方面有些挣扎。只要版本设置低于 23.0.0,即 22 21 等,一切都很好,但是当使用 support-v4:23.xx 时,事情就会出错。
为了研究这个问题,我制作了一个仅包含一个 FragmentActivity 的极简项目。指定v4 23,找不到Activity或FragmentActivity的任何核心方法,例如getWindow()
我已经尝试过 mavenCentral() 和 mavenLocal()。
谢谢你的帮助。
编辑:下面添加的 build.gradle 内容。
import org.gradle.api.artifacts.*
apply plugin: 'base' // To add "clean" task to the root project.
subprojects {
apply from: rootProject.file('common.gradle')
}
task mergedJavadoc(type: Javadoc, description: 'Creates Javadoc from all the projects.') {
title = 'All modules'
destinationDir = new File(project.buildDir, 'merged-javadoc')
// Note: The closures below are executed lazily.
source {
subprojects*.sourceSets*.main*.allSource
}
}
buildscript {
repositories {
jcenter()
}
//Make sure that gradle is updated to this version
dependencies {
classpath 'com.android.tools.build:gradle:2.0.0'
}
}
repositories {
mavenLocal()
mavenCentral() //se viktig kommentar 030416
flatDir {dirs 'libs'}
}
apply plugin: 'com.android.application'
ext {
supportLibVersion = '23.2.1'
//versionName = '2.8.0'
}
android {
compileSdkVersion 23
buildToolsVersion = '23.0.3' //"21.1.2"
//publishNonDefault true
defaultConfig {
//minSdkVersion 15 //Spotify requires min14, Facebook min15
//targetSdkVersion 23
}
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
res.srcDirs = ['res']
}
}
buildTypes {
debug {
applicationVariants.all { variant ->
variant.outputs.each { output ->
output.outputFile = new File(output.outputFile.parent, output.outputFile.name.
replace(".aar", "-${versionName}.aar"))
}
}
}
}
}
dependencies {
//support
compile ('com.android.support:support-v4:23.2.1')
compile 'com.google.android.gms:play-services-appindexing:8.1.0'
}