跨库的版本不一致(Android Studio 0.5.1+;Gradle 0.9)

跨库的版本不一致(Android Studio 0.5.1+;Gradle 0.9),android,gradle,android-studio,build-process,google-maps-android-api-2,Android,Gradle,Android Studio,Build Process,Google Maps Android Api 2,我已经将我的Android Studio升级到版本0.5.1,负责将build.gradle文件应用到我的项目和模块中的过程 在介绍了最新版本的Google PlayServices(4.2.42)和(并非一直如此)之后,我面临以下编译错误: Information:[/Users/.../build/exploded-aar/com.google.maps.android/ android-maps-utils/0.3/AndroidManifest.xml:2, /Users/.../bu

我已经将我的Android Studio升级到版本0.5.1,负责将build.gradle文件应用到我的项目和模块中的过程

在介绍了最新版本的Google PlayServices(4.2.42)和(并非一直如此)之后,我面临以下编译错误:

Information:[/Users/.../build/exploded-aar/com.google.maps.android/
android-maps-utils/0.3/AndroidManifest.xml:2,
 /Users/.../build/exploded-aar/com.google.android.gms/play-services/4.2.42/
AndroidManifest.xml:3]
 Main manifest has <uses-sdk android:minSdkVersion='8'> 
but library uses minSdkVersion='9'
信息:[/Users/../build/aar/com.google.maps.android/
android地图utils/0.3/AndroidManifest.xml:2,
/Users/../build/aar/com.google.android.gms/play-services/4.2.42/
AndroidManifest.xml:3]
主要舱单已
但库使用minSdkVersion='9'
有没有人遇到过同样的问题? 有解决办法吗

非常感谢,, 西蒙尼

编辑:

似乎我不是唯一一个有这个问题的人

根据以下文件:

注:Google Play services 4.0.30(2013年11月发布)及更新版本 版本要求Android 2.3或更高版本。如果你的应用程序支持Android 2.2,您可以继续使用Google Play services SDK进行开发,但必须从SDK安装Google Play services for Froyo 经理

Android2.3是API级别9,因此这意味着您必须将minSdkVersion声明为9或更高版本。您可以通过build.gradle文件执行此操作:


如果您使用编译maven上的内容

dependencies {
compile 'com.google.maps.android:android-maps-utils:0.3+'
}


请注意,此版本依赖于play services 3+。我手动克隆了git repo,并将其更改为4.3++。问题解决了。根据此修复程序,将很快推送到希望的maven central。

如果您在另一个库中遇到问题,您可以修改此修复程序:

Android错误:

编辑: 该漏洞已被修复

您可以使用新的清单合并(默认情况下启用)

要更换minSdk,您需要以下内容:

<uses-sdk tools:replace="minSdkVersion" android:minSdkVersion="9" android:targetSdkVersion="19"/>


谢谢Scott,我早就知道了,这款应用的目标是Minsdk9版。从错误中可以看出,与Google PlayServices的Minsdk版本有关,当前为9,Google Mapsutils使用的版本为8。是否在build.gradle文件中将其设置为9?生成文件将覆盖您在AndroidManifest.xml中放置的任何内容。AndroidManifest.xml不包含任何sdk版本声明,所有内容都在build.gradle中作为defaultConfig{minSdkVersion 9 targetSdkVersion 19 versionCode 9 versionName“v2.0.0”}进行管理
<uses-sdk tools:replace="minSdkVersion" android:minSdkVersion="9" android:targetSdkVersion="19"/>