mise à jour des services Google Play dans Emulator

137

J'ai traversé de nombreuses questions comme celle-ci sur Google Play, j'utilise l' API Android 4.2.2 17 .

Mon application nécessite les services Google play 8.1, elle se compile correctement et lorsqu'elle s'exécute sur l'émulateur, elle affiche le message `` Vous devez mettre à jour vos services Google play '' ,

Quand je clique sur mettre à jour rien ne se passe,

Comment puis-je mettre à jour les services Google Play sans télécharger la dernière version de l'API?

Johnny
la source
1
Peu probable que rien ne se passe. Il est plus probable que vous obteniez une erreur dans la console d'exécution similaire à android.content.ActivityNotFoundException: No Activity found to handle Intent....
Kato
1
Depuis 2017, la réponse acceptée n'est plus correcte. Le conseil de @ user345280 concernant l'onglet dans la fenêtre de l'émulateur devrait être la réponse acceptée.
Anthony Chuinard
J'ai rencontré ce problème il y a quelques jours et aucune des réponses n'a résolu mon problème. J'ai posté ma solution en bas, peut-être que cela aidera quelqu'un qui vient ici à 2019.
Ban Markovic

Réponses:

86

Mise à jour du 18-déc-2017

Vous pouvez mettre à jour les services Google Play via l'application Play Store dans votre émulateur, comme vous le feriez sur un appareil Android physique à partir de l'API 24.

vérifier les nouvelles fonctionnalités de l'émulateur ajoutées avec la mise à jour stable d'Android Studio v 3.0

Assistance Google Play - De Google: nous savons que de nombreux développeurs d'applications utilisent les services Google Play, et il peut être difficile de maintenir le service à jour dans les images système de l'émulateur Android. Pour résoudre ce problème, nous proposons désormais des versions des images système Android qui incluent l'application Play Store. Les images Google Play sont disponibles à partir d'Android Nougat (API 24) . Avec ces nouvelles images d'émulateur, vous pouvez mettre à jour les services Google Play via l'application Play Store dans votre émulateur, comme vous le feriez sur un appareil Android physique. De plus, vous pouvez désormais tester les flux d'installation, de mise à jour et d'achat de bout en bout avec le Google Play Store.


Quick Boot - Quick Boot vous permet de reprendre votre session d'émulateur Android en moins de 6 secondes

Compatibilité Android CTS

Améliorations des performances - Avec les dernières versions de l'émulateur Android, nous allouons désormais de la RAM à la demande, au lieu d'allouer et d'épingler la mémoire à la taille maximale de RAM définie dans votre AVD.

Capteurs virtuels

Prise en charge Wi-Fi

Localisation GPS et bien d'autres ...

OU

Mettez à jour ce SDK Build-Tools et l'émulateur Android au dernier et ce message d'alerte ne reviendra pas,

Paramètres -> Android SDK -> SDK Tools (onglet) -> Android SDK Build-Tools

entrez la description de l'image ici

Amit Vaghela
la source
27
cela ne fonctionne tout simplement pas, les images fraîchement téléchargées sont livrées avec des services Google Play hors de données
FRR
4
? Tous les émulateurs (avec les API google) sont livrés avec une version des services google play, la question est de savoir comment le mettre à jour vers la dernière version. Le téléchargement d'une API plus ancienne vous permet d'obtenir une version un peu plus récente, mais toujours pas la dernière. (quelque chose que vous n'avez pas mentionné dans votre réponse)
FRR
6
Veuillez arrêter de publier des liens vers votre réponse sous les messages d'autres personnes.
meagar
4
Semble qu'il manque dans la dernière API 27
JPM
10
Cette réponse ne semble pas pertinente pour la question car ils posent des questions sur "Android 4.2.2 API 17", mais la réponse mise à jour n'est pertinente que pour l'API> = 24.
Liron Yahdav
77

Utilisez un émulateur sur lequel Play Store est installé. La mise à jour des services de jeu serait aussi simple que sur un appareil réel.

Depuis que Google a introduit les images Google Play Store dans Android SDK Tools 26.0.0, les émulateurs sont désormais fournis avec Google Play Store installé .

entrez la description de l'image ici

À partir de 26.0.3

  • Ajoute un nouvel onglet dans la fenêtre étendue pour les images Google Play Store qui affiche la version des services Play et un bouton pour vérifier les mises à jour des services Play.

paramètres de l'émulateur

user345280
la source
17
Je n'ai pas cet onglet "Google Play" dans ma fenêtre étendue. Quel pourrait être le problème?
K.Os
11
Utilisez-vous un émulateur avec Playstore installé? Vérifiez si le gestionnaire sdk -> plates-formes sdk -> Android 8 -> l'image système Google Play ... est installé. Télécharge le. Créez un nouvel émulateur en utilisant cette image.
user345280
5
Cela fonctionne sur Android Studio 2.3.3. Créez un nouvel AVD, choisissez Nexus 5ou Nexus 5X(lignes avec l'icône Google Play), appuyez sur suivant puis sur Télécharger Android 8.0 (Google Play)ou Android 7.0 (Google Play). Notez le (Google Play)présent au nom du SDK. @ user345280 voudra peut-être modifier la réponse et ajouter cette information.
Rafael Oliveira
2
Merci @RafaelOliveira J'essayais depuis des lustres d'utiliser un Pixel et je me demandais pourquoi il ne pouvait pas voir mon image Google Play ... ça doit être un Nexus 5 ou 5X!
hughjdavey
12
Cette réponse ne semble pas pertinente pour la question car ils posent des questions sur "Android 4.2.2 API 17", mais cette réponse n'est pertinente que pour l'API> = 24.
Liron Yahdav
18

Basé sur la documentation Google ,

Si vous souhaitez tester votre application sur l'émulateur, développez le répertoire pour Android 4.2.2 (API 17) ou une version supérieure, sélectionnez les API Google et installez-la. Créez ensuite un nouvel AVD avec les API Google comme cible de la plate-forme.

Essayez de naviguer vers les paramètres -> applications dans votre émulateur, puis recherchez les services Google Play. Vérifiez le numéro de version et utilisez-le dans votre build.gradle. Pour le mettre à jour avec la dernière version, vous pouvez le voir dans cette documentation et question SO .

Abielita
la source
2
Bon conseil, mais de toute façon vous ne pouvez pas utiliser une ancienne version de Play Services pour tester des fonctionnalités qui nécessitent une version plus récente.
andreszs
17

Vous devez installer l'image Google Play, le SDK Android -> Plates-formes SDK -> vérifier les détails du package show -> installer Google Play. entrez la description de l'image ici

Houssin Boulla
la source
16

L'exécution de l'application sur un appareil virtuel avec une image système, "Google Play API" au lieu de "Google API" résoudra votre problème en douceur.

  • Les appareils virtuels Nexus 5x et Nexus 5 prennent en charge l'image de l'API Google Play.

  • L'API Google Play est fournie avec Nougat 7.1.1 et O 8.0.

Suivez simplement les étapes simples ci-dessous et assurez-vous que votre PC est connecté à Internet.

  1. Créez un nouvel appareil virtuel en sélectionnant Créer un appareil virtuel (coin inférieur gauche) dans le Gestionnaire d'appareils virtuels Android.

  2. Sélectionnez le matériel «Nexus 5x» ou «Nexus 5».

  3. Téléchargez l'image système «Nougat» avec Google Play ou «O» avec Google Play. «O» est la dernière version d'Android 8.0.

  4. Cliquez sur Suivant et Terminer.

  5. Exécutez à nouveau votre application sur le nouvel appareil virtuel et cliquez sur l'option «Mettre à niveau maintenant» qui s'affiche avec le message d'avertissement.

  6. Vous serez dirigé vers le Play Store et vous pourrez facilement mettre à jour vos services Google Play.

Vérifiez que votre application fonctionne bien!

  • Remarque : si vous prévoyez d'utiliser les API des services Google Play, vous devez utiliser l'image système des API Google.
Michel
la source
2
Hmm il n'y en a pas Google Play API.
jlively
1
Merci beaucoup. Cela a fonctionné pour moi. Je n'avais pas pu obtenir de connexion pour fonctionner depuis la mise à niveau vers Android Studio 3.0.
pvella
7
Cette réponse ne semble pas pertinente à la question car ils posent des questions sur "Android 4.2.2 API 17", mais cette réponse n'est pertinente que pour l'API> = 24.
Liron Yahdav
8

les réponses sur cette page m'ont échappé jusqu'à ce que je trouve l' option Afficher les détails du package

entrez la description de l'image ici

abbood
la source
7

Ma réponse n'est pas de mettre à jour le service Google Play mais de contourner le problème. Obtenez la version du service de lecture de l'émulateur à l'aide du code suivant

getPackageManager().getPackageInfo("com.google.android.gms", 0 ).versionName);

Par exemple, si la valeur est "9.8.79", utilisez la version inférieure la plus proche disponible com.google.android.gms: play-services: 9.8.0 '

Cela résoudra votre problème. Obtenez l'historique des versions sur https://developers.google.com/android/guides/releases#november_2016_-_v100

Ganesh Kanna
la source
1
Pouvez-vous expliquer ce que vous entendez par «utiliser la version la plus proche»? Comment «utiliser» cela? Si je sais que mon émulateur Android Studio utilise la version 8.0.87, que dois-je faire exactement avec ces informations? Y a-t-il quelque chose dans les fichiers manifestes ou gradle que je dois définir?
Marc
vous pouvez utiliser 7.8
Ganesh Kanna
2

Je sais que c'est une réponse tardive, mais j'ai eu le même problème ces deux derniers jours, et aucune des solutions ci-dessus n'a fonctionné pour moi. Mon application prend en charge min sdk 16, Jelly Bean 4.1.x , donc je voulais tester mon application sur un émulateur avec 16 version api Android et j'avais besoin des services Google Play.

En bref, la solution qui a fonctionné pour moi est:

  • créer un nouvel émulateur Nexus 5X (avec prise en charge du Play Store) - Jelly Bean 4.1.x, 16 niveaux d'API (SANS API Google)
  • télécharger manuellement les apks de Google Play Store et des services Google Play (il est nécessaire que les deux apks aient une version similaire, ils doivent commencer par le même numéro, par exemple 17.x)
  • faites glisser et déposez ces apks dans un nouvel émulateur
  • félicitations, vous avez mis à jour les services Google Play sur votre émulateur 4.1.x

Voici les étapes et les erreurs que j'ai rencontrées lors du problème.

J'ai donc créé un nouvel émulateur dans mon AVD. J'ai choisi Nexus 5X (avec le support Play Store). Après cela, j'ai choisi le niveau de l'API Jelly Bean 16 (avec les API Google). Lorsque j'ai ouvert la boîte de dialogue de mon application s'affiche avec un message Vous devez mettre à jour vos services Google Play . Lorsque j'ai cliqué sur le bouton Mettre à jour, rien ne s'est passé. J'ai mis à jour tout le nécessaire dans le gestionnaire de SDK, mais rien n'a fonctionné. Je n'ai pas installé Google Play Store sur mon émulateur, même si j'ai choisi Nexus 5X qui est livré avec Play Store préinstallé. Je n'ai donc pas pu trouver l'onglet Google Play Store dans les contrôles étendus (points d'arbre à côté de mon émulateur).

Parce que rien n'a fonctionné, j'ai décidé d'essayer d'installer les services Google Play manuellement, en téléchargeant l'APK et en le faisant glisser dans l'émulateur. Lorsque j'ai essayé cela, j'ai rencontré un problème. L'APK n'a pas pu s'installer. Erreur: INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES . J'ai pensé que c'était le problème parce que j'avais choisi le niveau d'API Jelly Bean 16 (avec les API Google) . Alors j'ai fait un nouvel émulateur

Nexus 5X (avec prise en charge du Play Store) - Niveau API Jelly Bean 16 ( SANS API Google)

Cela m'a permis d'installer mon service Google Play manuellement. Mais lorsque j'exécute mon application, elle ne voulait toujours pas l'ouvrir. Le problème était que mon émulateur manquait Google Play Store. Je l'ai donc installé manuellement comme le service Google Play. Mais une fois l'installation réussie, la boîte de dialogue a commencé à apparaître toutes les secondes avec un message Malheureusement, les services Google Play se sont arrêtés . Le problème était que la version de mon Google Play Store était 17.x et le service Google Play était 19.x. Donc, à la fin, j'ai installé le service Google Play avec la version 17.x, et tout a fonctionné.

Ban Markovic
la source
Comment avez-vous téléchargé et installé des apks?
CoolMind
@CoolMind vient de les télécharger depuis apkmirror.com (recherche dans google google play services apk apkmirror). Lorsque vous les téléchargez, faites simplement glisser et déposez les fichiers apk dans votre émulateur.
Ban Markovic
Merci! J'y ai aussi pensé, mais je n'étais pas sûr. Je vais essayer. Avez-vous utilisé la version 17 ou plus?
CoolMind
1
Pas de problème, j'espère que vous résoudrez votre problème. J'ai utilisé 17 versions de GPS, mais je pense que vous pouvez utiliser n'importe quelle version plus récente que vous voulez. Voici l'article avec un peu plus d'informations concernant ma solution medium.com/@banmarkovic/…
Ban Markovic
1
Je ne sais pas si j'ai bien compris tout ce que vous avez dit. Mais j'éviterais les versions armeabi-v7a des apks et des émulateurs, et j'essaierais tout avec uniquement l'architecture x86 (apks et émulateur).
Ban Markovic
1

J'avais le même problème. Évitez simplement d'utiliser un émulateur avec le SDK 27. Le SDK 26 fonctionne bien!

Estevão Lucas
la source
0

J'ai fait face au même problème. J'ai mis à jour mon studio Android et utilisé la cible API 25 comme Android 7.1.1 et X86 et tout fonctionnait bien. J'utilise les services Google Play et Firebase pour mon projet

Mahesh N
la source
0

2020, l'erreur Google Play services obsolète. Nécessite 12451000 mais trouvé 11743470

il vous suffit de mettre à jour les services Google Play à partir de Google Play après vous être connecté avec un compte valide.

PS: J'ai essayé différentes versions d'émulateur, mais toutes sont nécessaires pour mettre à jour les services Google Play.

Bogdan M
la source