我要去使用Android google maps v2
與android emulator/android studio 0.4.0
。其中一個要求是將項目google-play-services_lib
與版本低於/等於emulator
級別。我的模擬器適用於api lv 17
。現在的問題是,如何下載的google-play-services_lib
比由android sdk manager
下載的舊版本?如何下載較舊的谷歌播放服務?
回答
我意識到這是一個老問題,但是今天我有同樣的問題(真正的設備不仿真器),並找到了解決辦法。
我知道您可以添加代碼來提示用戶升級到最新版本(請參閱@ nathan-walters的評論),但出於複雜的原因,在我的情況下,我需要使用用戶的任何版本已經安裝在他們的設備上(如果有的話),因此更願意使用舊版本的客戶端庫進行編譯/構建(google-play-services_lib)
因此,進一步研究,我解壓縮了Android SDK Manager用來查找並安裝包括最新版Google Play服務在內的'額外'套餐。
如果你有興趣從這裏開始:https://dl-ssl.google.com/android/repository/addon.xml
對於目前的版本(如2014年11月10日的),讓你的谷歌,播放services_lib庫:
https://dl-ssl.google.com/android/repository/google_play_services_6171000_r21.zip
老版本是谷歌服務器上的相同位置(儘管它們隨時可能會消失),所以如果您準備將當前安裝的庫移到一邊並手動解壓縮較舊的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 API(API 19)的AVD的Google Maps。
谷歌確實偶爾嘗試使模擬器保持最新狀態。這裏有一個問題跟蹤線程討論客戶端庫和仿真器和谷歌的各種嘗試,以解決他們之間的版本不兼容的問題: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備考舊版本目錄t - 只需重命名爲.zip即可提取。
太棒了。我認爲可以使用相同的技術來下載舊版本的支持庫? SDK管理器僅顯示最新版本。你是如何找到以前的文件名的? – friederbluemle
@friederbluemle - 爲每個以前的文件名查找正式版本號(即4132530)是命中與遺漏 - 我通過掃描各種網頁/谷歌搜索發現這些以前的文件名稱,談論每個版本。因此,我沒有努力搜索的差距。 – Mike
這就是我的想法。謝謝!任何指針如何獲得支持庫? – friederbluemle
其中一個要求是把項目谷歌播放services_lib版本低於/等於仿真器級別。
google-play-services_lib
與模擬器版本無關。
問題是,如何下載比android sdk manager下載的版本更舊的google-play-services_lib?
據我所知,有沒有辦法做到這一點。此外,正如已經指出的那樣,這不是必需的。
然後如果你的設備被打碎或任何你沒有能力來測試你的程序
這使得沒有任何意義。 google-play-services_lib
是庫。這不是Google Play服務本身,而是用於利用Google Play服務的客戶端庫。
但後來我需要使用支持庫,我想如何避免
正如已經指出的那樣,Android的支持包不依賴於播放服務SDK。播放服務SDK可以使用 Android的支持包(例如,SupportMapFragment
)的部分,但播放服務SDK不要求 Android的支持包。
有兩個原因可能需要老版本的Google Play服務SDK:進行全面的應用測試,並且因爲Android 4.2.2的模擬器圖像具有舊版本(3136130),並且不可升級。 –
@JayLieske:您指的是Google Play服務,而不是Google Play服務SDK(即「google-play-services_lib」)。 – CommonsWare
不,我需要較舊的SDK(庫項目),以便我的應用在啓動時不會因此錯誤而失敗: Google Play服務已過時。需要4030500,但找到了3136130 –
接受的答案太麻煩了。 Google實際上在SDK管理器中分發了舊版本。
在「Extras」下面有「Google Repository」。
在存儲庫中,GPS庫返回到版本3.1.36。
它們是AAR格式,它只是構建項目的一個zip。
將名稱更改爲* .zip,將其解壓縮,裏面是一個classes.jar,它是所有gps類的jar。
如果您不需要任何資源,則可以將jar文件添加到類路徑中。完成。
ls -l /Applications/Programming/adt-bundle-mac-x86_64-20140702/sdk/extras/google/m2repository/com/google/android/gms/play-services/
total 24
drwxr-xr-x+ 8 Norrin staff 272 Jan 13 01:08 3.1.36
drwxr-xr-x+ 8 Norrin staff 272 Jan 13 01:08 3.1.59
drwxr-xr-x+ 8 Norrin staff 272 Jan 13 01:08 3.2.25
drwxr-xr-x+ 8 Norrin staff 272 Jan 13 01:08 3.2.65
drwxr-xr-x+ 11 Norrin staff 374 Feb 10 20:09 4.0.30
drwxr-xr-x+ 8 Norrin staff 272 Jan 13 01:08 4.1.32
drwxr-xr-x+ 8 Norrin staff 272 Jan 13 01:08 4.2.42
drwxr-xr-x+ 8 Norrin staff 272 Jan 13 01:08 4.3.23
drwxr-xr-x+ 8 Norrin staff 272 Jan 13 01:08 4.4.52
drwxr-xr-x+ 8 Norrin staff 272 Jan 13 01:08 5.0.89
drwxr-xr-x+ 8 Norrin staff 272 Jan 13 01:08 6.1.11
drwxr-xr-x+ 8 Norrin staff 272 Jan 13 01:08 6.1.71
drwxr-xr-x+ 8 Norrin staff 272 Feb 4 13:43 6.5.87
-rw-r--r--+ 1 Norrin staff 703 Jan 13 01:08 maven-metadata.xml
-rw-r--r--+ 1 Norrin staff 32 Jan 13 01:08 maven-metadata.xml.md5
-rw-r--r--+ 1 Norrin staff 40 Jan 13 01:08 maven-metadata.xml.sha1
- 1. 下載谷歌播放服務JAR
- 2. 下載谷歌播放服務
- 3. Xamarin谷歌播放服務
- 4. 谷歌播放服務
- 5. 如何安裝谷歌播放服務?
- 6. 無法安裝谷歌播放服務:下載中斷
- 7. 谷歌播放服務9.2.1和谷歌服務插件
- 8. 谷歌播放服務的AdMob - super.onAdLoaded(),super.onAdFailedToLoad(...)
- 9. 谷歌播放服務的設計
- 10. 谷歌播放服務的無效
- 11. 正在下載谷歌播放主頁
- 12. 下載金額在谷歌播放
- 13. 谷歌播放導入下載庫
- 14. 下載谷歌播放APK由php
- 15. 谷歌Android播放舊的OpenSSL警告
- 16. 谷歌播放顯示較舊的APK版本文件
- 17. 谷歌播放服務9.2.0缺課
- 18. com.android.build.transform.api.TransformException with android谷歌播放服務
- 19. 谷歌播放服務不接受
- 20. 谷歌播放服務,未發現
- 21. 谷歌播放服務不工作
- 22. Admob谷歌播放服務遷移
- 23. 不支持谷歌播放服務
- 24. 錯誤執行谷歌播放服務
- 25. Libgdx最高分。谷歌播放服務
- 26. 谷歌播放服務安裝
- 27. 谷歌播放服務認證(oauth 2.0)
- 28. 谷歌播放服務缺失
- 29. 安裝谷歌播放服務
- 30. 安卓谷歌播放服務在AVD
所有的Android設備應該始終擁有最新版本的播放服務,因爲它們會自動升級。不需要使用較低版本進行測試。 –
然後如果你的設備壞了或者你沒有能力測試你的程序。其實如果你正確地設置模擬器和庫地圖也可以。但它沒有足夠的味道。只需要知道是否可以下載其他版本。或者,也許我對此有一些誤解。 – Jacob
如果你的設備壞了,你無法獲得新的谷歌播放服務,那麼你將無法獲得更新版本的谷歌播放服務的應用程序,所以這是一個模擬點 – tyczj