3

我正在研究一个地图库,我正在使用 Google-Play-Services。到目前为止,一切都很好。问题是这样的:

  1. 我在我的地图库中包含 Google-Play-Services 库项目(使用:属性 -> android -> 添加库)。使用库中的客户端对其进行了测试(取消选中库复选框并启动 mainActivity)并且工作正常!
  2. 当我在示例客户端项目中包含我的地图库时,该客户端项目将无法访问 Google Play 服务,为什么?如果我在客户端项目中包含 Google Play 服务,我会得到:

    [2013-07-18 08:40:04 - Dex Loader] 无法执行 dex:多个 dex 文件定义 Lcom/google/android/gms/R$attr;

    [2013-07-18 08:40:04 - maps-sample-android] 转换为 Dalvik 格式失败:无法执行 dex:多个 dex 文件定义 Lcom/google/android/gms/R$attr;

Android 不会让我自己包含 Google Play 服务或从我的库项目中使用它,有没有办法解决这个问题?

4

2 回答 2

2

[2013-07-18 08:40:04 - Dex Loader] 无法执行 dex:多个 dex 文件定义 Lcom/google/android/gms/R$attr;

[2013-07-18 08:40:04 - maps-sample-android] 转换为 Dalvik 格式失败:无法执行 dex:多个 dex 文件定义 Lcom/google/android/gms/R$attr;

这些错误表明您有 2 个不同的 jar 文件,它们都试图声明相同的变量。也许您有 2 个不同版本的 google-play-services?

于 2014-06-17T12:02:14.790 回答
0

In your library project properties in the java build path (order and export tab) make sure that the Android dependancies box is ticked.

This will allow the library project to export the google play library with it.

You will then not need to add a reference to google play in the client project.

于 2013-07-18T13:33:27.927 回答