Jak pobrać starsze usługi google play?
Zamierzam używać Androida google maps v2
z android emulator/android studio 0.4.0
. Jednym z wymagań jest umieszczenie w projekcie google-play-services_lib
wersji niższej / równej poziomowi emulator
. Mój emulator współpracuje z api lv 17
. Pytanie brzmi, jak pobrać starszą wersję google-play-services_lib
niż te pobrane przez android sdk manager
?
4 answers
Zdaję sobie sprawę, że to stare pytanie, ale miałem ten sam problem dzisiaj (dla prawdziwych urządzeń nie dla emulatora) i znalazłem rozwiązanie.
Wiem, że możesz dodać kod, aby poprosić Użytkownika o aktualizację do najnowszej wersji (zobacz komentarz @nathan-walters), ale ze skomplikowanych powodów, w moim przypadku muszę pracować z dowolną wersją, którą użytkownik już zainstalował na swoim urządzeniu (jeśli w ogóle) i dlatego wolę kompilować / budować ze starszą wersją biblioteki klienta (google-play-services_lib)
Kontynuując badania, rozpakowałem xml, którego Android SDK Manager używa do znalezienia i zainstalowania pakietów "dodatków", w tym najnowszej wersji usług Google Play.
Jeśli jesteś zainteresowany zacznij tutaj: https://dl-ssl.google.com/android/repository/addon.xml
Dla aktualnej wersji (stan na 10 listopada 2014), która daje bibliotekę dla google-play-services_lib pod adresem:
https://dl-ssl.google.com/android/repository/google_play_services_6171000_r21.zip
Starsze wersje znajdują się w tym samym miejscu na serwery google (chociaż mogą zniknąć w każdej chwili), więc jeśli jesteś gotowy, aby przenieść zainstalowaną bibliotekę na bok i ręcznie rozpakować starszy zip, możesz zainstalować starą wersję. Znalazłem ta sama technika pozwoli Ci przetestować na starszych wersjach Google Maps (usługi Google Play), które nie mogą być aktualizowane w starszych wersjach emulatora. Nie testowałem wszystkich tych wersji na emulatorze, ale pomyślnie przetestowałem Google Maps w emulatorze dla AVD opartego na Google API (API 19).
Google czasami próbuje uaktualnić emulator. Oto wątek śledzenia problemów omawiający problemy z niekompatybilnością wersji między Klientem biblioteka i emulator oraz różne próby ich naprawienia przez google: https://code.google.com/p/android/issues/detail?id=57880
[UPDATE:]
@btrue zobacz odpowiedź poniżej teraz ma dużo lepszą odpowiedź niż moja odpowiedź
Przejdź do:
<your path to android sdk>/extras/google/m2repository/com/google/android/gms/play-services/
Gdzie znajdziesz katalogi zawierające stare wydania w formacie AAR-wystarczy zmienić nazwę na .zamek do wyciągania.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 12:02:56
Zaakceptowana odpowiedź jest zbyt kłopotliwa. Google faktycznie rozpowszechnia stare wersje w Menedżerze SDK.
W sekcji " Dodatki "znajduje się " repozytorium Google".
W repozytorium znajduje się biblioteka GPS wracająca do wersji 3.1.36.
Są one w formacie AAR, który jest tylko zip projektu budowania.
Zmień nazwę na *.zip, Rozpakuj, w środku jest klasa.jar, czyli słoik wszystkich klas gps.
Jeśli nie potrzebujesz żadnych zasobów, możesz dodać plik jar do swojej ścieżki klasowej. Załatwione.
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
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-02-11 17:12:03
Możesz pobrać google play services for froyo
w SDK Manager
, który działa z SDK 8 i nowszymi, ale uzyskanie konkretnej wersji nie jest możliwe AFAIK. Aktualna usługa google play działa z 10 i więcej
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-01-07 21:45:17
Jednym z wymagań jest umieszczenie w projekcie google-play-services_lib wersji niższej / równej poziomowi emulatora.
google-play-services_lib
nie ma nic wspólnego z wersjami emulatorów.
AFAIK, nie ma na to sposobu. Ponadto, jak już wspomniano, nie jest to konieczne.Pytanie brzmi, jak pobrać starszą wersję google-play-services_lib niż te pobrane przez android sdk manager?
To nie ma żadnego sensu.Następnie, jeśli urządzenie zostało uszkodzone lub wszystko, czego nie możesz przetestować swojego programu
google-play-services_lib
jest biblioteką . Nie są to same usługi Google Play, ale biblioteka klienta do korzystania z usług Google Play.
Ale potem muszę użyć biblioteki wsparcia, czego chciałbym uniknąć
Jak zauważono, pakiet wsparcia dla Androida nie jest powiązany z zestawem SDK usług odtwarzania. Część zestawu SDK Play Services może używać pakietu wsparcia dla Androida (np. SupportMapFragment
), ale pakiet SDK Play Services nie wymaga pakietu wsparcia dla Androida.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-01-07 22:15:58