如何使用Android Gradle构建适用于Android Google APIs 4.2.2而非Android 4.2.2的应用程序?

27
如何在Gradle中构建Android Google APIs SDK而不是通用的Android SDK?
我需要在项目中使用Google Maps API,因此需要更改构建目标。现有的示例只提供版本号为“17”的构建版本。
您有什么想法吗?

你想使用已弃用的 API v1 还是新的 API v2? - MaciejGórski
我使用这个:https://developers.google.com/maps/documentation/android/v1/reference/com/google/android/maps/MapActivity所以基本上是v1。 - Sebastian
你刚开始做项目吗?那样的话,你不会让v1正常工作。 - MaciejGórski
不,这是一个旧项目。我有API密钥。 - Sebastian
尝试一下这个,也许会有帮助:https://dev59.com/RFsW5IYBdhLWcg3wDzrs#36776374 - andrewwang1TW
1个回答

90
我明白了:
1)使用Android SDK管理器获取所需Android版本的Google API(在Android Studio中启动它,它与旧版Eclipse SDK管理器分开)
2)
- 转到“文件 > 项目结构 > SDK” - 单击加号并选择“Android SDK” - 弹出窗口将出现,请导航到您的Android Studio安装文件夹并选择“sdk”子文件夹 - 另一个弹出窗口将出现:选择“Google APIs(#.#.#)”
3)在同一项目结构窗口中:选择“Android #.#.# Google APIs”项目SDK,然后单击应用/确定
4)现在,在您的build.gradle文件中替换

android {
    ...
    compileSdkVersion 17
    ...
}

android {
    ...
    compileSdkVersion "Google Inc.:Google APIs:17"
    ...
}

6)重新启动Android Studio。

对我来说,这在谷歌API 16上有效。 如果您仍然遇到问题:

  • 转到“文件>项目结构>SDK”
  • 选择您的Google API>类路径
  • 确保Google APIs jar文件在其中 (例如Android Studio/sdk/add-ons/addon-google_apis-google-16/libs/maps.jar)
  • 如果没有,请手动添加它们(我必须为API 17执行此操作)
  • 重新启动Android Studio

当我移植早期的Eclipse Android库项目时,这对我很有用。我所要做的就是从Eclipse项目文件“project.properties”中复制属性字符串“target”,使其与我使用的带有Google API“Google Inc .:Google APIs:15”的SDK相匹配。 - Yoraco Gonzales
9
我正在处理一个使用Google Maps API v1的旧遗留项目,而这是网络上唯一适用于我(在使用Android Studio 0.5.4时)的解决方案。 - R. Campos
由于谷歌提供的SDK版本不符合要求,我必须使用其他版本。幸好你帮我找到了 compileSdkVersion 应该与 Vendor:Target Name:API Level 相等。 - Ankit Popli

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接