我打算将 android google maps v2
与 android emulator/android studio 0.4.0
一起使用。要求之一是将项目 google-play-services_lib
的版本低于/等于 emulator
级别。我的模拟器适用于 api lv 17
。问题是,如何下载比 android sdk manager
下载的旧版本的 google-play-services_lib
?
最佳答案
我意识到这是一个老问题,但我今天遇到了同样的问题(对于真实设备而不是模拟器)并找到了解决方案。
我知道您可以添加代码来提示用户升级到最新版本(请参阅@nathan-walters 的评论)但是,由于复杂的原因,在我的情况下,我需要使用用户已经拥有的任何版本安装在他们的设备上(如果有的话),因此更喜欢使用旧版本的客户端库 (google-play-services_lib) 进行编译/构建
为了进一步研究,我解压了 Android SDK 管理器用来查找和安装“附加”包的 xml,包括最新版本的 Google Play 服务。
如果您有兴趣从这里开始:https://dl-ssl.google.com/android/repository/addon.xml
对于为您提供 google-play-services_lib 库的当前版本(截至 2014 年 11 月 10 日):
https://dl-ssl.google.com/android/repository/google_play_services_6171000_r21.zip
旧版本位于 google 服务器上的同一位置(尽管它们随时可能消失),因此如果您准备将当前安装的库移到一边并手动解压缩旧 zip,那么您可以安装旧版本.我发现了以下内容:
- https://dl-ssl.google.com/android/repository/google_play_services_3159130_r09.zip
- https://dl-ssl.google.com/android/repository/google_play_services_3225130_r10.zip
- https://dl-ssl.google.com/android/repository/google_play_services_3265130_r12.zip
- https://dl-ssl.google.com/android/repository/google_play_services_4030530_r13.zip
- https://dl-ssl.google.com/android/repository/google_play_services_4132530_r14.zip
- https://dl-ssl.google.com/android/repository/google_play_services_4242030_r15.zip
- https://dl-ssl.google.com/android/repository/google_play_services_4323030_r16.zip
- https://dl-ssl.google.com/android/repository/google_play_services_4452030_r17.zip
- https://dl-ssl.google.com/android/repository/google_play_services_5077000_r18.zip
- https://dl-ssl.google.com/android/repository/google_play_services_5089000_r19.zip
- https://dl-ssl.google.com/android/repository/google_play_services_6111000_r20.zip
- https://dl-ssl.google.com/android/repository/google_play_services_6171000_r21.zip
- https://dl-ssl.google.com/android/repository/google_play_services_6587000_r22.zip
- https://dl-ssl.google.com/android/repository/google_play_services_7095000_r23.zip
- https://dl-ssl.google.com/android/repository/google_play_services_7327000_r24.zip
- https://dl-ssl.google.com/android/repository/google_play_services_7571000_r25.zip
- https://dl-ssl.google.com/android/repository/google_play_services_7895000_r26.zip
- https://dl-ssl.google.com/android/repository/google_play_services_8115000_r27.zip
- https://dl-ssl.google.com/android/repository/google_play_services_8298000_r28.zip
- https://dl-ssl.google.com/android/repository/google_play_services_8487000_r29.zip
- https://dl-ssl.google.com/android/repository/google_play_services_9080000_r30.zip
同样的技术可以让您针对在旧版本模拟器中硬连线的不可升级的旧版本 Google map (Google Play 服务)进行测试。我还没有针对模拟器测试所有这些版本,但已经在模拟器中成功测试了谷歌地图,以获得基于 Google API (API 19) 的 AVD。
Google 偶尔会尝试更新模拟器。这是一个问题跟踪线程,讨论客户端库和模拟器之间的版本不兼容问题以及谷歌修复这些问题的各种尝试:https://code.google.com/p/android/issues/detail?id=57880
[更新:]
@btrue see answer below现在有一个比我的答案好多更好的答案
前往:
<your path to android sdk>/extras/google/m2repository/com/google/android/gms/play-services/
您可以在其中找到包含 AAR 格式的旧版本的目录 - 只需重命名为 .zip 即可提取。
关于java - 如何下载较旧的 google play 服务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20982533/