Wie lade ich Google Play Services in einem Android-Emulator herunter?

87

Ich möchte die Google Play Services-API in meiner Anwendung verwenden. Wenn ich jedoch den Emulator zum Testen meiner Anwendung öffne, wird eine Meldung mit der Meldung "Google Play Services muss heruntergeladen werden" gesendet. Ich weiß, dass dies auftritt, weil ich diesen Test in meiner MainActivityMethode codiert habe onResume().
Ich möchte wissen, wie ich Google Play Services in meinem Emulator installieren kann, da ich bald meine Karten testen muss.

Witalo Benicio
quelle
1
Verwenden Sie einfach das neueste AVD imagevon Google, das Google play serveiceseingebettet hat. Überprüfen Sie für das Update von derSDK manager
Ujjwal Singh

Antworten:

78

Schauen Sie sich das Einrichten von Google Play Services an, in dem Folgendes steht:

Um eine App mithilfe der Google Play Services-APIs zu entwickeln , müssen Sie Ihr Projekt mit dem Google Play Services-SDK einrichten.

Wenn Sie das SDK für Google Play-Dienste noch nicht installiert haben, lesen Sie die Anleitung zum Hinzufügen von SDK-Paketen .

Um Ihre App bei Verwendung des Google Play Services SDK zu testen, müssen Sie Folgendes verwenden:

  • Ein kompatibles Android-Gerät, auf dem Android 2.3 oder höher ausgeführt wird und das den Google Play Store enthält.
  • Der Android-Emulator mit einer AVD , auf der die Google APIs-Plattform auf Basis von Android 4.2.2 oder höher ausgeführt wird.
Govil
quelle
11
Auf der Entwicklerseite wurden Updates veröffentlicht: "Der Android-Emulator mit einer AVD, auf der die Google APIs-Plattform auf Basis von Android 4.2.2 oder höher ausgeführt wird."
WindsurferOak
Ich habe versucht, die Android-API (Version 4.3) zu verwenden, aber es hat nicht funktioniert. Daher ist der Schlüssel die Verwendung der Google-API (Version 4.3). Da es sich um dieselbe Versionsnummer handelte, war mir zunächst nicht klar, warum sie nicht ausgeführt wurde.
Skitterm
11
Ich verwende Google APIS ver. 22 mit Intel x86_64. Funktioniert nicht.
Yar
4
Wichtig ist hier, was @Skitterm geschrieben hat. Die AVD muss Google-APIs als Ziel haben. Interessanterweise führt die Auswahl eines niedrigeren API-Ziels als 23 (Marshmallow) dazu, dass das Gerät versucht, die Google Play-Dienste zu aktualisieren, was für mich immer fehlschlägt.
BoneGoat
Hat jemand das jemals zum Laufen gebracht? Es scheint, dass die Verwendung eines Android-Bildes mit Google API mit Google Play nicht funktioniert.
LewlSauce
50

Für API 21+ können Sie das System-Image mit Google Play verwenden, wie unten beschrieben.

Für API 19+ (Android 4.4 Kitkat) können Sie das System-Image x86 mit Google Api verwenden (ich konnte es verwenden).

Für API 17+ (Android 4.2.2) können Sie versuchen, System Image ARM mit Google Api zu verwenden (es hat bei mir nicht funktioniert).

Ich konnte Google Play und Google Services als separate Apks für die reinen System-Image-APIs 16 und 17 installieren, aber danach funktionieren sie nicht mehr wirklich (Services Crush and Play werden nicht geöffnet). Es scheint also nicht möglich zu sein, sie auf einem reinen AVD-Image arbeiten zu lassen, da sie mit Root-Zugriff installiert werden sollten. Das Gleiche gilt für das Aktualisieren von Google Services auf einem AVD-Systemabbild mit vorinstallierter Google API. Kann aufgrund inkompatibler Zertifikate nicht aktualisiert werden. Kann nicht einmal mit adb deinstalliert werden, da kein Zugriff möglich ist.


So richten Sie das AVD-Systemabbild mit Google Play ein

Jetzt gibt es eine noch bessere Lösung: Verwenden von AVD-Bildern mit integrierten Google Play Services. Damit können Sie Google Services einschließlich Google Play verwenden. Sie können es auch aktualisieren, ohne ein AVD-Image neu zu erstellen.

Öffnen Sie den AVD-Manager und wählen Sie Neues Gerät erstellen. Sie sollten die Gerätedefinition mit dem Play Store-Symbol verwenden.

1

Wählen Sie dann das System-Image dafür. Sie sollten eine mit Google Play und NICHT mit Google API auswählen .

2

Starten Sie dann ein neues Gerät.

3

Sie können die Play Services wie im Screenshot gezeigt oder manuell auf dem Gerät aktualisieren.

4

B-GangsteR
quelle
Welche Android Studio-Version sollte man verwenden, um diese Option zu haben?
Ronenmiller
1
@ronenmiller Ich benutze die letzte stabile Version, jetzt ist es 2.3.3. Es sollte jedoch nicht von der Android Studio-Version abhängen. Es hängt von der Android System Image-Version und möglicherweise von der Version des Android Virtual Device Managers ab, aber ich bin mir nicht sicher, ob es die letzte ist. Ich aktualisiere einfach immer alles auf die letzte stabile Version.
B-GangsteR
Ist nicht verfügbar am 3.1.3
Emaborsa
@Emaborsa Haben Sie ein Bild mit Google Play oder Google API ausgewählt? Ich benutze jetzt Android Studio 3.1.4 und alles funktioniert gut.
B-GangsteR
@ B-GangsteR Ja, ich habe
Emaborsa
17

Auf diese Weise können Sie Android Google Maps API v2 auf Ihrem Emulator verwenden.


Erstellen Sie einen neuen Emulator

  • Wählen Sie für das Gerät "5.1 '' WVGA (480 x 800: mdpi)".
  • als Ziel wählen Sie "Android 4.1.2 - API Level 16"
  • für "CPU / ABI" wählen Sie "ARM"
  • Überlassen Sie die Standardeinstellungen

Dies sind die Einstellungen, die für mich funktionieren. Ich weiß es nicht für andere.


Starten Sie den Emulator


Installieren Sie com.android.vending-1.apk und com.google.android.gms-1.apk über den ADB-Installationsbefehl


Die längere Antwort finden Sie in meinem Blogbeitrag zu diesem Problem unter https://medium.com/nemanja-kovacevic/how-to-make-android-google-maps-v2-work-in-android-emulator-e384f5423723

Nemanja Kovacevic
quelle
2
Ich weiß, das ist alt, aberFailure [INSTALL_FAILED_UPDATE_INCOMPATIBLE]
Laser Hawk
2
Ich habe: Android Studio (2.2.3); Tools -> Android -> AVD Manager; Virtuelles Gerät erstellen ...; 5.1 "WVGA, Next; Nougat (7.1.1), Next; Finish. Der resultierende Emulator hatte kein Google Play Store-Symbol.
William Entriken
Wenn Ihr Interesse nicht mit der Architektur zusammenhängt, emuliere ich meine Projekte lieber auf einer x86-x84-CPU / ABI mit der GPU des Hosting-Computers. Die Emulation unterscheidet sich in Bezug auf die Reaktionsfähigkeit erheblich.
Tedebus
1
Links sind kaputt
Alberto M
1
Hallo Alberto, die Situation hat sich in den 5 Jahren nach dieser Antwort geändert, sodass dies Ihr Problem wahrscheinlich nicht beheben wird.
Nemanja Kovacevic
6

Ich bin auf eine andere Lösung gestoßen, um die Google Play-Dienste auf einem Emulator zu verwenden. Die Jungs unter http://www.genymotion.com/ bieten sehr schnelle Emulatoren, auf denen Sie Google Play Services installieren können. Sie müssen sich nur anmelden, um mit dem Herunterladen zu beginnen, und die virtuelle Box muss installiert sein. Im Moment bieten sie Android 16 und 17 an, aber weitere sind unterwegs.

Karol
quelle
17
Früher pflegten sie, bis Google ihnen sagte, sie sollten keinen unendlich besseren Service mehr anbieten als Google, und zwangen sie, den Play Store aus ihren Bildern herauszureißen.
Reck
5
Said Oh!, Ging, um einen neuen Emulator zum Testen von Tablets auf meiner vorhandenen Genymotion-App zu erstellen, der Ihren Kommentar las und Leute hasste, die ich keine Sekunde kenne.
Juan Cortés
Genymotion war ein großartiger Emulator, aber es scheint, dass es jetzt nicht mit Karten funktioniert :(
KansaiRobot
3

In der aktuellen Version (Android Studio 0.5.2) gibt es jetzt einen Gerätetyp für "Google APIs x86 (Google Inc.) - API Level 19".

Mike Vosseller
quelle
3

Der Schlüssel besteht darin, das Ziel Ihres Emulators auszuwählen, zum Beispiel: Google APIs (Version 18) . Wenn Sie zum Beispiel nur Jellybean 18 auswählen (ohne API) Sie keine Apps testen, für die Google-Dienste wie map erforderlich sind. Beachten Sie, dass Sie zuerst die Google-API Ihrer Lieblingsversion mit dem Android SDK Manager herunterladen müssen.

Dies ist eine gute Vorgehensweise und weitaus besser als das Jonglieren mit den meisten Problemumgehungen.

Josh
quelle
2

Ich habe kürzlich versucht, die Google MAP API V2-Anwendung zu entwickeln und sie über den Emulator auszuführen, aber jedes Mal wurde der Fehler "Google Play Servcies ist nicht auf diesem Telefon installiert" angezeigt. Aus meiner Sicht funktioniert sogar die Google MAP API V2 auf dem Emulator nicht.

Lösung

Dann habe ich versucht, das gleiche Beispiel auf meinem Sony Experia you auszuführen, und es zeigte mir wieder den gleichen Fehler. Dann habe ich Google Play Services auf meinem Handy installiert und erstaunlicherweise hat es angefangen zu funktionieren .. :)))

Ishan Trikha
quelle
2

Ich habe es geschafft

  • Installieren der Google Play Services über den Android SDK Manager
  • Verwenden eines Galaxy Nexus-Geräts (4,65 ", 720 x 1280: xhdpi)
  • Targeting auf Android 4.2.2 Google API Level 17
kelsmj
quelle
2

Gehen Sie zu https://university.xamarin.com/resources/working-with-android-emulators . Scrollen Sie zum Abschnitt "Installieren von Google Play Services". Schritt für Schritt gehen Sie dort durch.

Hier direkt von Xamarin plagarisiert, damit ich mich nicht für das Verknüpfen und das Nichteinschließen von Lösungen verkratzt fühle. Posting dies, als ich den Treffer im Stapel fand, bevor ich die Lösung fand, die auf der Xamarin-Seite auf der ganzen Linie funktionierte.

  1. Starten Sie den Xamarin Android Player und führen Sie eines der mitgelieferten Images aus. Im Folgenden wird davon ausgegangen, dass Sie das KitKat Nexus 4-Image gestartet haben. Laden Sie die richtige ZIP-Datei für Google Play Services von www.teamandroid.com/gapps/ herunter. Stellen Sie sicher, dass Sie das für Ihre Android-Version geeignete Bild herunterladen.
  2. Ziehen Sie die ZIP-Datei auf den laufenden Emulator und legen Sie sie ab, um die Komponente zu installieren. Hier zeigen wir sie unter Mac OS X, aber der gleiche Mechanismus wird in Windows verwendet. Sie werden aufgefordert, das Paket auf dem Emulator zu installieren, um anzuzeigen, dass das Image neu gestartet wird
  3. Nach dem Neustart erhalten Sie eine Benachrichtigung, dass die Installation abgeschlossen ist. Das Bild verfügt nun über Google Maps, Google+ und Unterstützung für den Google Play Store. Beachten Sie, dass einige Dinge nicht richtig funktionieren und Sie möglicherweise einige Fehler von einigen Diensten erhalten, diese jedoch sicher schließen und die Anweisungen fortsetzen können.
  4. Als Nächstes müssen Sie ein Google-Konto zuordnen, damit Sie die Dienste über den Google Play Store aktualisieren können. Sie sollten dazu aufgefordert werden. Wenn dies nicht der Fall ist, können Sie in den Google-Einstellungen ein neues Konto hinzufügen. Sobald Sie das Konto hinzugefügt haben, können Sie die Google Apps aktualisieren, indem Sie die Google Play Store-Anwendung öffnen und die Einstellungen über das Seitenleistenmenü aufrufen.
  5. Wählen Sie Einstellungen, scrollen Sie nach unten zu den Informationen zur Build-Versionsnummer und tippen Sie zweimal darauf, bis Sie erfahren, dass sie entweder aktuell sind oder eine neue Version herunterladen und installieren.
  6. Schalten Sie das Gerät aus (halten Sie den Netzschalter in der Symbolleiste rechts gedrückt) und starten Sie es neu. Nach dem Neustart sollte angezeigt werden, dass die Google Play-Dienste aktualisiert werden müssen. Durch Tippen auf die Benachrichtigung wird der Google Play Store geöffnet und die neueste Version installiert

Jetzt können Sie Anwendungen, die von Google Maps abhängen, im Xamarin Android Player ausführen.

Joe Healy
quelle
0

Wenn Sie das Android Studio (dh 1.5) installiert haben und versuchen, auf SDK 4.0 zuzugreifen, können Sie den und den AVD-Emulator mit SDK-vX.XX (mit Google-APIs) möglicherweise nicht finden und einrichten.

Befolgen Sie die folgenden Schritte, um die erforderliche Bibliothek herunterzuladen und damit zu beginnen. AVD Emulator-Setup - Einrichten des Emulators für SDK4.0 mit GoogleAPI, damit die Kartenanwendung funktioniert - In Android Studio

Aber leider hat die obige Methode auf meiner Seite nicht gut funktioniert. Und konnte Emulator mit API Level 17 (SDK 4.2) nicht erstellen. Also folgte ich diesem Beitrag, der auf meiner Seite gut funktionierte. Der Grund dafür ist, dass das Erstellungsfenster des Android Studio Emulators nur über eingeschränkte Optionen / Funktionen verfügt.

Google Play Services im Emulator, Implementierung der Google Plus-Anmeldeschaltfläche usw.

Muhammad Hannan
quelle
0

Ich weiß, dass dies eine alte Frage ist, aber ich bin hierher gekommen, weil ich ein ähnliches Problem hatte wie alle oben. Ich habe es gelöst, indem ich etwas genauer gelesen habe!

Ich hatte nicht bemerkt, dass es zwei mögliche Systembilder gab, aus denen ich auswählen konnte, eines mit Google APIs und eines ohne (auf meinem Laptop war das Menü zu klein, um den angehängten Text (mit Google APIs) zu lesen.

Es ist eine dumme Sache, etwas zu verpassen, aber jemand anderes hat vielleicht einen kleinen Bildschirm wie ich und vermisst dies: D.

Russ Wheeler
quelle