播放服务粒度依赖性错误

时间:2014-12-10 13:23:38

标签: android google-play-services android-gradle

我尝试使用新的Granular Dependency for Google Play Service 6.5。+

在我的gradle中,我设置了:

dependencies {
    compile 'com.android.support:appcompat-v7:21.0.2'
    compile 'com.google.maps.android:android-maps-utils:0.3'
    compile 'com.google.android.gms:play-services-base:6.5.87'
    compile 'com.google.android.gms:play-services-location:6.5.87'
    compile 'com.google.android.gms:play-services-maps:6.5.87'
}

但我收回了这个错误:

Error:Execution failed for task ':app:processDebugResources'.
Error: more than one library with package name 'com.google.android.gms'
You can temporarily disable this error with android.enforceUniquePackageName=false
However, this is temporary and will be enforced in 1.0

我已经更新了所有SDK。

使用此新功能的正确方法是什么? 感谢。

解决

问题是 android-maps-utils 已经有Play Service 6.5。+,所以错误。

2 个答案:

答案 0 :(得分:10)

android-maps-utils库目前为already includes Google Play服务。您可以尝试以下方法之一:

  1. their issue tracker上打开一个问题,以便他们适应或帮助您(这也意味着其他人也可以从中受益)。

  2. 试试这个,我还没有对此进行测试,并且可能无效!我没有查看地图工具,看看他们实际使用了什么。

    compile('com.google.maps.android:android-maps-utils:0.3') {
        exclude group: 'com.google.android.gms'
    }
    

答案 1 :(得分:5)

这在maps-utils库的0.3.4版本中显然是fixed,但它要求我删除对play-services-maps和play-services-location的引用。我仍然可以使用播放服务和位置服务,所以我猜测maps-utils已经包含了那些。 我的gradle文件只包含:

compile 'com.google.maps.android:android-maps-utils:0.3.4'