Comment télécharger les services Google Play dans un émulateur Android?

88

Je souhaite utiliser l'API des services Google Play dans mon application, mais lorsque j'ouvre l'émulateur pour tester mon application, il m'envoie un message indiquant "Les services Google Play doivent être téléchargés". Je sais que cela se produit parce que j'ai codé ce test dans mon MainActivitydans la méthode onResume().
Je souhaite savoir comment installer les services Google Play dans mon émulateur, car je devrai bientôt tester mes cartes.

Witalo Benicio
la source
1
Utilisez simplement la dernière version AVD imagede Google Google play serveicesintégrée. Vérifiez la mise à jour duSDK manager
Ujjwal Singh

Réponses:

79

Consultez la section Configuration des services Google Play qui dit:

Pour développer une application à l'aide des API des services Google Play , vous devez configurer votre projet avec le SDK des services Google Play.

Si vous n'avez pas encore installé le SDK des services Google Play, procurez-vous-le maintenant en suivant le guide Ajouter des packages SDK .

Pour tester votre application lors de l'utilisation du SDK des services Google Play, vous devez utiliser:

  • Un appareil Android compatible qui exécute Android 2.3 ou version ultérieure et inclut Google Play Store.
  • L'émulateur Android avec un AVD qui exécute la plate-forme des API Google basée sur Android 4.2.2 ou supérieur.
Govil
la source
11
Il y a eu des mises à jour, le site des développeurs a cité: "L'émulateur Android avec un AVD qui exécute la plate-forme d'API Google basée sur Android 4.2.2 ou supérieur."
WindsurferOak
J'ai essayé d'utiliser l'API Android (version 4.3) et cela n'a pas fonctionné, donc la clé est d'utiliser l'API Google (version 4.3). Comme il s'agissait du même numéro de version, je ne savais pas pourquoi il ne fonctionnait pas au début.
Skitterm
11
J'utilise Google APIS ver. 22 avec Intel x86_64. Ne marche pas.
Yar
4
L'important ici est ce que @Skitterm a écrit. L'AVD doit avoir des API Google comme cible. Il est intéressant de noter que la sélection d'une cible d'API inférieure à 23 (Marshmallow) conduit l'appareil à essayer de mettre à jour les services Google Play, ce qui échoue toujours pour moi.
BoneGoat
Quelqu'un a-t-il déjà fait fonctionner cela? Il semble que l'utilisation d'une image Android avec l'API Google ne fonctionne pas avec Google Play.
LewlSauce
55

Pour api 21+, vous pouvez utiliser l'image système avec Google Play comme je le décris ci-dessous.

Pour api 19+ (Android 4.4 Kitkat), vous pouvez utiliser l'image système x86 avec Google Api (j'ai pu l'utiliser).

Pour api 17+ (Android 4.2.2), vous pouvez ESSAYER d'utiliser l'image système ARM avec Google Api (cela n'a pas fonctionné pour moi).

J'ai pu installer Google Play et les services Google en tant qu'apks séparés pour les api 16 et 17 de l'image système pure, mais ils ne fonctionnent pas vraiment après cela (les services écrasent et ne fonctionnent pas). Il semble donc qu'il n'est pas possible de les faire fonctionner sur une image AVD pure car ils doivent être installés avec un accès root. Il en va de même pour la mise à jour des services Google sur l'image système AVD avec l'API Google préinstallée - impossible de mettre à jour en raison de certificats incompatibles, impossible de désinstaller même en utilisant adb car vous n'y avez pas accès.


Comment configurer l'image système AVD avec Google Play

Il existe désormais une solution encore meilleure: utiliser l'image AVD avec les services Google Play intégrés. Cela vous permettra d'utiliser les services Google, y compris Google Play. Vous pourrez également le mettre à jour sans recréer l'image AVD.

Ouvrez le gestionnaire AVD et choisissez créer un nouvel appareil. Vous devez utiliser la définition de l'appareil avec l'icône Play Store.

1

Ensuite, choisissez l'image système pour cela. Vous devez en choisir un avec Google Play et NON avec l'API Google.

2

Puis lancez un nouvel appareil.

3

Vous pouvez mettre à jour les services Play comme indiqué sur la capture d'écran ou manuellement sur l'appareil.

4

B-GangsteR
la source
Quelle version de studio Android doit-on utiliser pour avoir cette option?
ronenmiller
1
@ronenmiller J'utilise la dernière version stable, maintenant c'est la 2.3.3. Mais cela ne devrait pas dépendre de la version d'Android Studio. Cela dépend de la version de l'image système Android, et peut-être de la version d'Android Virtual Device Manager, mais je ne suis pas sûr de la dernière. Je mets toujours à jour tout à la dernière version stable.
B-GangsteR
N'est pas disponible le 3.1.3
Emaborsa
@Emaborsa avez-vous choisi l'image avec Google Play ou Google API? J'utilise Android Studio 3.1.4 maintenant et tout fonctionne correctement.
B-GangsteR
@ B-GangsteR Oui je l'ai fait
Emaborsa
16

C'est ainsi que vous faites fonctionner l'API Google Maps v2 d'Android sur votre émulateur.


Créer un nouvel émulateur

  • pour l'appareil, choisissez «5.1 '' WVGA (480 x 800: mdpi)»
  • pour la cible, choisissez "Android 4.1.2 - API niveau 16"
  • pour "CPU / ABI" choisissez "ARM"
  • laisser le repos aux valeurs par défaut

ce sont les paramètres qui fonctionnent pour moi. Je ne sais pas pour les différents.


Démarrez l'émulateur


installez com.android.vending-1.apk et com.google.android.gms-1.apk via la commande d'installation ADB


La réponse la plus longue est sur mon article de blog sur ce problème https://medium.com/nemanja-kovacevic/how-to-make-android-google-maps-v2-work-in-android-emulator-e384f5423723

Nemanja Kovacevic
la source
2
Je sais que c'est vieux maisFailure [INSTALL_FAILED_UPDATE_INCOMPATIBLE]
Laser Hawk
2
J'ai fait: Android Studio (2.2.3); Outils -> Android -> AVD Manager; Créer un périphérique virtuel ...; 5.1 "WVGA, Suivant; Nougat (7.1.1), Suivant; Terminer. L'émulateur résultant n'avait pas d'icône Google Play Store.
William Entriken
Si votre intérêt n'est pas relatif à l'architecture, je préfère émuler mes projets sur CPU / ABI x86-x84, en utilisant le GPU de la machine d'hébergement. L'émulation est assez différente en termes de réactivité.
tedebus
1
les liens sont rompus
Alberto M
1
Salut Alberto, la situation a changé au cours des 5 années suivant cette réponse, donc cela ne résoudra probablement pas votre problème.
Nemanja Kovacevic
6

Je suis tombé sur une autre solution pour utiliser les services Google Play sur un émulateur. Les gars de http://www.genymotion.com/ fournissent des émulateurs très rapides sur lesquels vous pouvez installer les services Google Play. Ils ont juste besoin de vous pour vous inscrire pour commencer le téléchargement et vous devez installer Virtual Box. Pour le moment, ils sont compatibles avec Android 16 et 17, mais d'autres sont en route.

Karol
la source
17
Ils le faisaient jusqu'à ce que Google leur dise d'arrêter de fournir un service infiniment meilleur que Google ne l'a jamais fait, et les force à arracher le Play Store de leurs images.
Reck
5
Said Oh !, est allé créer un nouvel émulateur pour tester les tablettes sur mon application genymotion existante, lire votre commentaire et détester les gens que je ne connais pas une seconde.
Juan Cortés
genymotion était un excellent émulateur mais il semble que cela ne fonctionne pas avec les cartes maintenant :(
KansaiRobot
3

Dans la version actuelle (Android Studio 0.5.2), il existe désormais un type d'appareil pour "API Google x86 (Google Inc.) - Niveau d'API 19".

Mike Vosseller
la source
3

La clé est de sélectionner la cible de votre émulateur, par exemple: API Google (ver 18) . Si vous sélectionnez, par exemple, uniquement Jellybean 18 (sans API), vous ne pourrez pas tester les applications qui nécessitent des services Google tels que la carte. Gardez à l'esprit que vous devez d'abord télécharger l'API Google de votre version préférée avec Android SDK Manager.

C'est une bonne pratique et c'est bien mieux que de jongler avec la plupart des solutions de contournement.

Josh
la source
2

J'ai récemment essayé de développer l'application google MAP API V2 et j'ai essayé de l'exécuter via un émulateur, mais à chaque fois, cela m'a montré l'erreur "Google Play Servcies n'est pas installé dans ce téléphone". De mon point de vue, même je pense que google MAP API V2 ne fonctionne pas sur l'émulateur.

Solution

Ensuite, j'ai essayé d'exécuter le même exemple sur mon Sony Experia vous et encore une fois il m'a montré la même erreur. Ensuite, j'ai installé les services Google Play sur mon mobile et étonnamment, cela a commencé à fonctionner .. :)))

Ishan Trikha
la source
2

Je l'ai fait fonctionner par

  • Installation des services Google Play via le gestionnaire de SDK Android
  • Utilisation d'un appareil Galaxy Nexus (4,65 ", 720 x 1280: xhdpi)
  • Cibler l'API Google Android 4.2.2 niveau 17
kelsmj
la source
2

Accédez à https://university.xamarin.com/resources/working-with-android-emulators . Faites défiler jusqu'à la section "Installation des services Google Play". Étape par étape, marchez par là.

Directement plagarisé à partir de xamarin ici afin que je ne sois pas désolé pour la liaison et ne pas inclure la solution. Publier ceci alors que j'ai trouvé le hit dans la pile avant de trouver la solution qui fonctionnait à tous les niveaux sur la page xamarin.

  1. Démarrez le lecteur Xamarin Android et exécutez l'une des images fournies, ce qui suit suppose que vous avez démarré l'image KitKat Nexus 4. Téléchargez le fichier .zip approprié des services Google Play depuis www.teamandroid.com/gapps/. Assurez-vous de télécharger l'image appropriée à votre version d'Android.
  2. Faites glisser le fichier .zip sur l'émulateur en cours d'exécution et déposez-le pour installer le composant, ici nous le montrons sur Mac OS X, mais le même mécanisme est utilisé sous Windows. Vous recevrez une invite pour installer le package sur l'émulateur qui indique que l'image sera redémarrée
  3. Une fois qu'il redémarrera, vous recevrez une notification indiquant que l'installation est terminée, et l'image aura désormais Google Maps, Google+ et la prise en charge du Google Play Store. Notez que certaines choses ne fonctionnent pas correctement et que vous pouvez obtenir quelques erreurs de la part de certains services, mais vous pouvez les ignorer en toute sécurité et continuer les instructions.
  4. Ensuite, vous devrez associer un compte Google afin de pouvoir mettre à jour les services à l'aide du Google Play Store. Il devrait vous le demander, mais si ce n'est pas le cas, vous pouvez accéder aux paramètres Google et ajouter un nouveau compte. Une fois que vous avez ajouté le compte, vous pouvez ensuite mettre à jour les applications Google en ouvrant l'application Google Play Store et en accédant aux paramètres à partir du menu de la barre latérale.
  5. Sélectionnez Paramètres, puis faites défiler les informations sur le numéro de version de build et appuyez deux fois dessus jusqu'à ce qu'il vous dise qu'il est à jour ou qu'il va télécharger et installer une nouvelle version.
  6. Éteignez l'appareil (appuyez et maintenez le bouton d'alimentation dans la barre d'outils à droite) et redémarrez-le. Une fois qu'il redémarre, il doit indiquer qu'il doit mettre à jour les services Google Play, en appuyant sur la notification, vous ouvrirez le Google Play Store et installerez la dernière version

Vous pouvez désormais exécuter des applications qui dépendent de Google Maps dans Xamarin Android Player.

Joe Healy
la source
0

Pour obtenir la dernière configuration et les dernières informations, si vous avez installé Android Studio (c'est-à-dire 1.5) et que vous essayez de cibler le SDK 4.0, vous ne pourrez peut-être pas localiser et configurer l'émulateur et AVD avec SDK-vX.XX (avec les API Google).

Voir les étapes suivantes pour télécharger la bibliothèque requise et commencer par cela. Configuration de l'émulateur AVD - Configuration de l'émulateur pour SDK4.0 avec GoogleAPI afin que l'application Map puisse fonctionner - Dans Android Studio

Mais malheureusement, la méthode ci-dessus n'a pas bien fonctionné de mon côté. Et n'a pas été en mesure de créer un émulateur avec le niveau d'API 17 (SDK 4.2). J'ai donc bien suivi ce post qui a bien fonctionné de mon côté. La raison semble que la fenêtre de création de l'émulateur Android Studio a des options / fonctionnalités limitées.

Services Google Play dans l'émulateur, implémentation du bouton de connexion Google Plus, etc.

Muhammad Hannan
la source
0

Je sais que c'est une vieille question, mais je suis arrivé ici parce que j'avais un problème similaire à tout le monde ci-dessus. Je l'ai résolu en lisant un peu plus près!

Je n'avais pas remarqué qu'il y avait 2 images système possibles parmi lesquelles je pouvais choisir, l'une contenant des API Google et l'autre non (sur mon ordinateur portable, le menu était trop petit pour que je puisse lire le texte (avec les API Google) ajouté.

C'est une chose stupide à manquer, mais quelqu'un d'autre pourrait avoir un petit écran comme moi et manquer ceci: D

Russ Wheeler
la source