web-dev-qa-db-fra.com

Comment mettre à jour les émulateurs des services Google Play pour Android Studio 2.2?

Il existe plusieurs variantes de cette question, mais la plupart sont très anciennes et ne répondent pas du tout à la question. Je ne demande pas comment installer Play Services, qui est installé dans les émulateurs de Studio 2.2. 

Le problème est que ces émulateurs utilisent une ancienne version des services de lecture.

Lorsque j'exécute une application de test utilisant Firebase pour faciliter la connexion à Google, je reçois cette boîte de dialogue d'alerte à partir d'un émulateur Nexus 5 API 23:

 enter image description here

Dans la méthode onCreate de mon activité de connexion, j'ai ce code:

int result = GooglePlayServicesUtil.isGooglePlayServicesAvailable(this);

    switch(result) {
        case ConnectionResult.SERVICE_VERSION_UPDATE_REQUIRED:
            Log.d(TAG,"SERVICE_VERSION_UPDATE_REQUIRED");
            break;
        case ConnectionResult.SUCCESS:
            Log.d(TAG, "Play service available success");
            break;
        default:
            Log.d(TAG, "unknown services result: " + result);

    }

Cela retourne toujours SERVICE_VERSION_UPDATE_REQUIRED.

En cliquant sur la mise à jour dans la boîte de dialogue d'alerte, rien ne peut être détecté. Dans le journal de débogage, ce message s'affiche lorsque le démarrage de Play Services échoue:

W/GooglePlayServicesUtil: Google Play services out of date.  Requires 9080000 but found 8489470

Mon application fonctionne correctement sur un véritable appareil Android.

Quelle chose simple me manque?

TIA

27
Jim In Texas

Cela peut ne pas être pertinent pour cette question maintenant, mais je voulais le poster ici pour les futurs explorateurs, afin qu'ils voient des terres au fond de la mer. Je me débattais avec ce service Google Play obsolète sur mon émulateur Nexus 5 x86 exécutant l’API 25 et essayant de recevoir une notification Firebase. J'utilise Firebase 10.0.1 qui nécessite les services Google Play 10.0.1. Mais sur mon émulateur, je recevais toujours le message 

W/GooglePlayServicesUtil: services Google Play obsolètes. Nécessite 1008400 mais trouvé 9874900

W/FA: échec de la connexion au service: ConnectionResult {statusCode = SERVICE_VERSION_UPDATE_REQUIRED, résolution = null, message = null}

J'avais longuement cherché un moyen de mettre à jour les services Google Play sur mon émulateur, et ce qui a été suggéré n'a jamais fonctionné. Enfin, j'ai essayé de créer un nouvel émulateur Nexus 5 x86_64 et API 24. Voilà! Il a Google Play Services 10.0.1 et mon application fonctionne maintenant. 

Cela me dépasse vraiment de savoir pourquoi l’image x86 n’a pas les derniers Serviecs Google Play et ne me permet pas de la mettre à jour de quelque manière que ce soit, alors que l’image x86_64 possède les derniers services Google Play.

J'espère que cela aidera quelqu'un aux prises avec des problèmes avec les services Google Play.

21
sukural

En ce qui concerne mon cas, j'ai essayé de rechercher des mises à jour sur Android Studio, ainsi que sur les services Google Play, puis j'ai redémarré Android Studio. Ensuite, la boîte de dialogue de mise à jour est apparue, ce qui me permet de mettre à jour les images de l'émulateur avec la version correcte des services Google Play.

 enter image description here

Attendez la fin de la mise à jour, puis créez de nouveaux fichiers AVD basés sur les images récemment mises à jour et tout est prêt à l'emploi.

8
Nicholas Lie

En supposant que vous utilisez les AVD par défaut d'Android, par opposition à Genymotion, vous devez simplement vous assurer que tout a été mis à jour.

C'est ce qui fonctionne pour moi. Si vous utilisez la version actuelle des services de jeu, version 9.6.1 ou supérieure, vérifiez les points suivants:

  1. La version de vos outils de construction est 24.0.3 ou supérieure.
  2. Dans le gestionnaire de SDK (onglet Plateformes SDK):
    • Si Nougat est testé, votre émulateur utilise les API Google.
    • Les API Google sont installées et mises à jour (Pour moi, "API Google, Android 24" - Révision 1.0.0)
  3. Dans le Gestionnaire de SDK (onglet Outils du SDK):
    • Android SDK Platform Tools est la version 24.0.3 ou supérieure
    • Android SDK Tools est la version 25.2.2 ou supérieure
    • Les services Google Play sont installés et utilisent la version 33 ou supérieure.
    • (Probablement facultatif) Le référentiel Google est installé et la version 36 ou supérieure

Après avoir assuré tout cela et redémarré Android Studio (car mieux vaut prévenir que guérir), créez un nouveau fichier AVD. J'utilise principalement les paramètres suivants: - Nougat (API 24) - ABI - x86_64 - Cible - Android 7.0 (avec Google API)

Cela fonctionne pour moi, car j’avais le même problème ce matin jusqu’à ce que j’ai tout mis à jour. Bonne chance :)

3
James Davis

Si les personnes recherchent toujours une réponse et n'ont trouvé aucune solution pour corriger ou mettre à jour les services Google Play sur leurs émulateurs, voici ce qui m'a aidé. J'avais suivi plusieurs SO messages qui recommandent l'utilisation des derniers outils de génération de SDK, mais j'ai manqué une mise à jour très importante. Autrement dit, à partir des plates-formes SDK, vous devez mettre à jour/télécharger 

Google Play Intel x86 Atom System Image

Une image vaut mieux que mille mots:  enter image description here

2
lini sax

Je ne demande pas comment installer Play Services, qui est installé dans les émulateurs de Studio 2.2.

Vous semblez demander comment le mettre à jour, auquel cas vous devez savoir comment l’installer.

Le problème est que ces émulateurs utilisent une ancienne version des services de lecture.

C'est ce que dit l'erreur, oui. 

Première possibilité: votre bibliothèque d'émulateur et/ou de SDK est obsolète et vous avez besoin d'un nouveau fichier AVD.

Possibilité deux: Allez télécharger le dernier APK pour Play Services et installez-le. Vous pouvez utiliser adb pour l’installer, par exemple. Genymotion vous permettra d'installer des fichiers APK en les faisant glisser sur l'émulateur. 

0
cricket_007

Ce qui a fonctionné pour moi est:

  1. Recherchez et installez les nouvelles mises à jour. Vous voulez en particulier vous assurer que vous installez la dernière version des services Google Play. De plus, vous pouvez vérifier la version des services Google Play que vous utilisez dans le gestionnaire de SDK.

  2. Supprimez tous vos émulateurs dans le gestionnaire AVD (Android Virtual Device).

  3. Créez un nouvel émulateur.

Devrait bien fonctionner après!

0
Adly Thebaud

Ces paquets ne fonctionneront que pour Android 4.2.2 et supérieur dans ces réponses, je prends un exemple de (API 17). Et cela fonctionnera.

Commençons par lancer le gestionnaire de SDK. Nous devrons d’abord nous assurer que Android 4.2.2 (API 17) et les versions ultérieures sont installés.

[shubham@localhost tools]$ ./Android sdk

Sinon, vérifiez l'élément de niveau supérieur «Android 4.2.2 (API 17)», cliquez sur «Installer 6 packages» et acceptez le contrat de licence.

Mise en place de l'image

Pour obtenir la bonne image pour votre gestionnaire de périphérique virtuel:

  • Ouvrez le gestionnaire de SDK Android
  • Ouvrez le groupe Android 4.2.2 (API 17)
  • Vérifier les API Google
  • Vérifier ARM Image système EABI v7a

    [! [Outil requis par Google Android sdk] [1]] [1]

Une fois installé, fermez le SDK Manager et lancez le gestionnaire AVD. Ici, nous devrons créer un nouveau fichier AVD qui utilise la plate-forme Android 4.2.2 et sur lequel les instantanés sont activés, de sorte que toutes les modifications apportées sont persistantes.

[shubham@localhost tools]$ ./Android avd

Ensuite, nous devons extraire le package Google Apps approprié. Sous Android 4.2.2 (API 17) et les versions ultérieures, nous devons utiliser le package approprié en suivant le lien ci-dessous.

[https://www.androidfilehost.com/?w=files&flid=5649][2]

Une fois téléchargé, extrayez l'archive. Pour installer Google Play, nous devons envoyer les 3 fichiers APK suivants à notre AVD (situé dans ./system/app/):

  • GoogleServicesFramework.apk
  • GoogleLoginService.apk
  • Phonesky.apk

Cependant, avant cela, nous devons apporter quelques modifications mineures à notre DAV. Lançons le nouveau disque créé à l’aide de la commande suivante. Notez que nous avons spécifié une taille de partition de 512 Mo. Cela permet de garantir que notre AVD dispose de suffisamment de capacité pour installer Google Play Store et ses dépendances.

[shubham@localhost tools]$ ./emulator -avd Test -partition-size 512 -no-boot-anim

Cela peut prendre plusieurs minutes la première fois que l’AVD est créé. Une fois démarré, nous devons remonter la partition de l’AVD et modifier les autorisations de «/ system/app /», car c’est là que nos packages seront installés.

[shubham@localhost platform-tools]$ ./adb remount
[shubham@localhost platform-tools]$ ./adb Shell chmod 777 /system/app

Et enfin, nous pouvons envoyer ces fichiers APK à notre AVD:

[shubham@localhost platform-tools]$ ./adb Push ~/system/app/GoogleServicesFramework.apk /system/app/
[shubham@localhost platform-tools]$ ./adb Push ~/system/app/GoogleLoginService.apk /system/app/
[shubham@localhost platform-tools]$ ./adb Push ~/system/app/Phonesky.apk /system/app/

Désormais, si votre émulateur est aussi lent que le mien, l'installation du package peut prendre quelques minutes. Vous saurez si l’installation n’est pas encore terminée si le processus de lancement s’interrompt à plusieurs reprises;)

Au bout de quelques minutes, le package Google Play devrait apparaître dans le lanceur de menus. Après avoir associé un compte Google à cet AVD, nous disposons maintenant d'une version entièrement fonctionnelle de Google Play fonctionnant sous votre émulateur.

Veuillez vous référer à ce lien: [ http://www.flinkd.org/2013/12/installing-google-play-on-the-Android-emulator-api-18/][3]

Cela devrait faire le travail. Pour plus d'informations et tutoriel, vous pouvez regarder ces tutoriels vidéo: - [ https://www.youtube.com/watch?v=Nq5mng20PC8[4]

      [1]: http://i.stack.imgur.com/Xn2cX.png
      [2]: https://www.androidfilehost.com/?w=files&flid=5649
      [3]: http://www.flinkd.org/2013/12/installing-google-play-on-the-Android-emulator-api-18/
      [4]: https://www.youtube.com/watch?v=Nq5mng20PC8
0
Shubham Sharma