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 que les services Google Play doivent être téléchargés. Je sais que cela se produit car j'ai codé ce test dans ma MainActivity
dans la méthode onResume()
.
Je souhaite savoir comment installer les services Google Play dans mon émulateur, car je devrai bientôt tester mes cartes.
Découvrez Configuration des services Google Play qui indique:
Pour développer une application à l'aide des API de services Google Play , vous devez configurer votre projet avec le SDK de services Google Play.
Si vous n'avez pas encore installé le SDK des services Google Play, allez le chercher maintenant en suivant le guide/ Ajout de packages SDK .
Pour tester votre application lorsque vous utilisez le SDK des services Google Play, vous devez utiliser:
- Un appareil Android compatible fonctionnant sous Android 2.3 ou supérieur et incluant Google Play Store.
- L'émulateur Android avec un AVD qui exécute la plate-forme Google API basée sur Android 4.2.2 ou supérieur.
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 Google Services en tant qu'apks distincts des images système purement api 16 et 17, mais ils ne fonctionnent plus vraiment après cela (les services écrasent et la lecture ne s'ouvre pas). Il semble donc qu'il ne soit pas possible de les faire fonctionner sur une image AVD pure, car elles doivent être installées avec un accès root. Il en va de même pour la mise à jour de l'image système de Google Services sur AVD avec Google API préinstallée: impossible de mettre à jour à cause de certificats incompatibles, impossible de désinstaller même avec adb, faute d'accès.
Il existe désormais une solution encore meilleure: utiliser une image AVD avec les services Google Play intégrés. Il vous permettra d'utiliser les services Google, y compris Google Play. Vous pourrez également le mettre à jour sans recréer une image AVD.
Ouvrez le gestionnaire AVD et choisissez créer un nouveau périphérique. Vous devez utiliser la définition de périphérique avec l'icône Play Store.
Ensuite, choisissez l'image système pour cela. Vous devez en choisir un avec Google Play et PAS avec Google API.
Puis lancez le nouvel appareil.
Vous pouvez mettre à jour les services de lecture comme indiqué sur la capture d'écran ou manuellement sur l'appareil.
Voici comment faire fonctionner l’API v2 d’Android Google Maps sur votre émulateur.
Créer un nouvel émulateur
ce sont les paramètres qui fonctionnent pour moi. Je ne sais pas pour les différents.
Démarrer l'émulateur
installer com.Android.vending-1.apk et com.google.Android.gms-1.apk via la commande ADB install
La réponse plus longue se trouve dans mon billet de blog sur ce problème https://medium.com/nemanja-kovacevic/how-to-make-Android-google-maps-v2-work-in-Android-emulator-e384f5423723
Je suis tombé sur une autre solution pour utiliser les services de 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 de Google Play. Ils ont juste besoin de vous inscrire pour commencer le téléchargement et vous devez installer Virtual Box. Pour le moment, ils prennent en charge les Android 16 et 17, mais d’autres sont en route.
La clé est de sélectionner la cible de votre émulateur, par exemple: API Google (version 18) . Si vous sélectionnez, par exemple, juste Jellybean 18 (sans API), vous ne pourrez pas testez les applications nécessitant des services Google tels que map . N'oubliez pas 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.
Dans la version actuelle (Android Studio 0.5.2), il existe désormais un type de périphérique pour "API Google x86 (Google Inc.) - API de niveau 19".
Accédez à https://university.xamarin.com/resources/working-with-Android-emulators . Faites défiler jusqu'à la section "Installation des services Google Play". Marchez pas à pas par là.
Directement plagarisé à partir de xamarin ici afin que je ne sois pas fâché pour la liaison et sans solution. En publiant cela au fur et à mesure que je trouvais le hit dans la pile avant de trouver la solution qui fonctionnait de manière globale sur la page xamarin.
Vous pouvez maintenant exécuter des applications dépendant de Google Maps dans le lecteur Android Xamarin.
J'ai récemment essayé de développer l'application Google MAP API V2 et de l'exécuter avec un émulateur, mais à chaque fois, l'erreur "Google Play Servcies n'est pas installé sur ce téléphone" . De mon point de vue, je pense même que Google MAP API V2 ne travaillez pas sur l'émulateur.
Solution
Ensuite, j’ai essayé de reproduire le même exemple sur votre Sony Experia et de nouveau, cela m’a montré la même erreur… .. Ensuite, j’ai installé les services de Google Play sur mon mobile et, étonnamment, cela a commencé à fonctionner .. :)))
Je l'ai fait travailler par
Si votre émulateur x86 cette méthode fonctionne votre moi.
Téléchargez et installez http://opengapps.org/app/opengapps-app-v16.apk . Et sélectionnez nano pack
Plus d'infos http://opengapps.org/app/
Si vous avez installé Android Studio (à savoir 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 celle-ci . Configuration de l'émulateur AVD - configuration de l'émulateur pour SDK4.0 avec GoogleAPI afin que l'application Carte puisse fonctionner - Dans Android Studio
Mais malheureusement, la méthode ci-dessus ne fonctionnait pas bien de mon côté. Et n'a pas pu créer Emulator avec API Level 17 (SDK 4.2). J'ai donc suivi ce post qui a bien fonctionné de mon côté. La raison en est que la fenêtre de création d’Android Studio Emulator a des options/fonctionnalités limitées.
Services Google Play dans l'émulateur, implémentation du bouton de connexion Google Plus, etc.
Je sais que c'est une vieille question, mais je suis arrivé ici parce que j'avais un problème similaire à celui de tout le monde. Je l'ai résolu en lisant un peu plus près!
Je n'avais pas remarqué qu'il y avait deux images système possibles parmi lesquelles choisir, une qui contenait des API Google et une qui n'en contenait pas (sur mon ordinateur portable, le menu était trop petit pour que je puisse lire le texte (avec Google API) ajouté.
C'est stupide de rater ça, mais quelqu'un d'autre pourrait avoir un petit écran comme moi, et rater ceci: D