2012-12-09 16 views
18

Niedawno zacząłem tworzyć aplikacje na system Android i miałem problemy podczas korzystania z Map Google w mojej aplikacji. Pobrałem Google Maps API v2 dla Androida i wykonałem już wszystkie wymagane czynności zgodnie z witryną Google Developers.Brakujące usługi Google Play od AVD

Mój problem polega na tym, że chociaż aplikacja działa, w miejscu, w którym powinny być wyświetlane mapy, znajduje się tekst informujący, że w moim urządzeniu brakuje usług Google Play.

Pobrałem już Usługi Google Play z pakietu SDK, zaimportowałem bibliotekę do mojego projektu i zaimportuję plik .JAR.

Używam Netbeans, a nie Eclipse, więc wiele rozwiązań, które znalazłem w Internecie, nie jest dla mnie przydatne. Mam nadzieję, że możesz mi w tym pomóc.

+4

Musi być tysiąc pytań o używanie Map Google na AVD i jeden problem, który widzę bardzo często, a ja sam byłem przekonany, że twój cel musi być ustawiony na "Google APIs (Google Inc.)", a nie jak " Android 2.2 ". Upewnij się, że robisz to, zanim będziesz się martwić o cokolwiek innego. – ninge

Odpowiedz

13

Niestety nie można używać emulatora do uruchamiania aplikacji korzystających z usług Google Play. Od http://developer.android.com/google/play-services/setup.html: "Usługi Google Play nie są obsługiwane w emulatorze Androida - aby korzystać z interfejsów API, musisz udostępnić urządzenie programistyczne, takie jak telefon lub tablet z Androidem".

+1

Kontrola lokalizacji w emulatorze jest bezużyteczna! :jot –

0

Tak, możesz używać map Google na emulatorze. Jednak nie jest to oficjalnie obsługiwane, więc wymaga trochę pracy. Miałem najlepszy sukces podążając za informacjami o tym link.

12

Z własnej strony http://developer.android.com/google/play-services/setup.html

google jeśli chcesz przetestować swoją aplikację na emulatorze , rozwiń katalog dla wersji Android 4.2.2 (API 17) lub wyższej wersji, wybierz Google APIs i zainstaluj. Następnie utwórz nowy AVD z interfejsami API Google jako docelową platformę . Uwaga: tylko Android 4.2.2 i nowsze wersje platformy API Google zawierają usługi Google Play.

4

miałem ten sam problem i okazało solution:

Oto aktualizowane gms i vending plików. Te same instrukcje jak wcześniej: Tworzenie nowego emulatora wszelkich CPU/ABI, cel zakaz google-API (wersje robocze 10-17) oraz emulacji GPU włączyć lub wyłączyć, a następnie zainstalować pliki:

adb install com.android.vending-20130716.apk 
adb install com.google.android.gms-20130716.apk 

Jeśli uaktualnienie istniejącego emulatora to może trzeba odinstalować poprzednie wersje przez:

adb uninstall com.android.vending 
adb uninstall com.google.android.gms 
1

Bellow linku zawiera rozwiązanie, które działa z Androidem 4.2.2 lub wyższej

How to install Google Play Services in Android Emulator

1.1 Uruchom emulator. Odłącz od komputera dowolne inne urządzenie z Androidem (na przykład smartfon). 1.2 Pobierz Te dwa pliki

com.android.vending-19032013.apk: http://www.mediafire.com/download.php?7jfar2v1bzx6v59 com.google.android.gms-19032013.apk: http://www.mediafire.com/download.php?4o9fz413uavlblf

1.3 Otwórz konsolę poleceń, przejdź do \ platform-tools

zainstalować dwa pliki powyżej komendą

adb install \ com.android.vending-19032013.apk adb install \ com.google.android.gms-19032013.apk

0

Jeśli ktoś nadal występuje z tym problemem, najpierw spróbuj utworzyć swój emulator, używając interfejsu API Google jako celu platformy. Po wykonaniu tych czynności zauważyłem, że moje Usługi Google Play nie były poprawną wersją emulatora.

Podczas próby zhackowania rozwiązania, natknąłem się na klasę GoogleApiAvailabilityhere. Google zrobił fenomenalne problemy ze zgodnością obsługi zadań.

GoogleApiAvailability.isGooglePlayServicesAvailable(Context) zwraca kod stanu całkowitą, która może być podawana bezpośrednio do getErrorDialog(Activity, errorCode, requestCode) która zwraca Dialog który działa doskonale zaraz po wyjęciu z pudełka. Jeśli Twoje Usługi Play są nieaktualne, okno dialogowe przekieruje Cię do aktualizacji ... Jeśli ich nie ma, przekieruje Cię do instalatora itp.

Pomyślałem, że udostępnię tę wspaniałą funkcję w przypadku każdy szuka poprawki, która działałaby w kodzie produkcyjnym, a także w testowaniu.

Powiązane problemy