J'ai sélectionné cet émulateur à partir de la dernière version d'Android Studio AVD.
J'ai sélectionné la dernière version de l'API android 23. Comme il est dit "avec les API Google", j'ai pensé que cela inclurait en fait toutes les applications Google, y compris le Play Store, afin que je puisse installer des applications comme Facebook.
J'ai vu d'autres threads sur SO qui semblent maintenant obsolètes ( Comment installer l'application Google Play dans l'émulateur Android Studio? ), Celui-ci donne des instructions pour installer des applications Google basées sur des packages universels mais cela ne va que jusqu'à Android 4.3 API 18: http://wiki.rootzwiki.com/Google_Apps#Universal_Packages_2
J'aimerais celui pour l'API 23. Existe-t-il un moyen d'installer le package Google Apps sur l'émulateur?
Il semble étrange que l'émulateur Android officiel ne soit pas livré en standard avec toutes les applications Google en premier lieu ... Cela ne semble pas très favorable à Google et signifierait potentiellement que les développeurs devront acheter des appareils réels pour développer pour l'API 23 ?
Réponses:
J'ai dû le faire récemment sur l'émulateur API 23 et j'ai suivi ce guide . Cela fonctionne pour l'émulateur API 23, vous ne devriez donc pas avoir de problème.
Remarque: tout le mérite revient à l'auteur du billet de blog lié (pyoor). Je le poste juste ici au cas où le lien se romprait pour une raison quelconque.
....
Téléchargez le package GAPPS
Ensuite, nous devons extraire le package Google Apps approprié qui correspond à notre version Android AVD. Dans ce cas, nous utiliserons le package 'gapps-lp-20141109-signed.zip'. Vous pouvez télécharger ce fichier depuis BasketBuild ici .
Pour installer Google Play, nous devrons pousser les 4 APK suivants sur notre AVD (situé dans ./system/priv-app/):
GmsCore.apk, GoogleServicesFramework.apk, GoogleLoginService.apk, Phonesky.apk
Poussez les APK vers l'émulateur
Avec nos APK extraits, lançons notre AVD en utilisant la commande suivante.
Cela peut prendre plusieurs minutes la première fois que l'AVD est créé. Une fois démarré, nous devons remonter la partition système AVD en lecture / écriture afin que nous puissions pousser nos paquets sur l'appareil.
Ensuite, poussez les APK sur notre AVD:
Profit!
Et enfin, redémarrez l'émualateur à l'aide des commandes suivantes:
Une fois l'émulateur redémarré, nous devrions voir le package Google Play apparaître dans le lanceur de menu. Après avoir associé un compte Google à cet AVD, nous avons maintenant une version entièrement fonctionnelle de Google Play fonctionnant sous notre émulateur.
la source
Vous trouverez ci-dessous la méthode qui a fonctionné pour moi sur les émulateurs API 23-25 . L'explication est fournie pour l'API 24 mais fonctionne presque de la même manière pour les autres versions.
Crédits : Jon Doe , zaidorx , pjl .
Dans le gestionnaire AVD du studio Android (testé sur v2.2.3), créez un nouvel émulateur avec la cible "Android 7.0 (API Google)":
Téléchargez le dernier package Open GApps pour l'architecture de l'émulateur (CPU / ABI). Dans mon cas, c'était le cas
x86_64
, mais cela peut être autre chose en fonction de votre choix d'image lors de l'assistant de création de périphérique. Fait intéressant, l'architecture semble plus importante que la bonne version d'Android (c'est-à-dire que les gapps pour 6.0 fonctionnent également sur un émulateur 7.0).Extrayez les
.apk
fichiers à l'aide des chemins suivants (relatifs àopen_gapps-x86_64-7.0-pico-201#####.zip
):Notez que Ouvrir GApps utiliser la compression Lzip, qui peut être ouvert à l' aide de l'outil sur le site Web Lzip 1 , 2 , ou sur Mac en utilisant homebrew:
brew install lzip
. Puis par exemplelzip -d gmscore-x86_64.tar.lz
.Je fournis un fichier batch qui utilise
7z.exe
etlzip.exe
pour extraire.apk
automatiquement tous les s requis (sous Windows):Pour l'utiliser, enregistrez le script dans un fichier (par exemple
unzip_gapps.bat
) et mettez tout ce qui est pertinent dans un dossier, comme illustré ci-dessous:Mettez à jour le
su
binaire pour pouvoir modifier les autorisations des fichiers que nous téléchargerons plus tard. Un nouveausu
binaire se trouve dans le SuperSU par Chainfire package « Recovery flashable »zip
. Obtenez le zip, extrayez-le quelque part, créez un fichier de commandes avec le contenu suivant dans le même dossier, puis exécutez-le:Mettez tous les
.apk
fichiers dans un dossier et créez un fichier de commandes avec ces contenus 3 :Notez que le chemin
E:\...\android-sdk\tools\emulator.exe
doit être modifié en fonction de l'emplacement du SDK Android sur votre système.Exécutez le fichier de commandes ci-dessus (la console devrait ressembler à ceci par la suite):
Lorsque l'émulateur se charge, fermez-le, supprimez le périphérique virtuel, puis créez-en un autre en utilisant la même image système . Cela corrige l'application Play Store qui ne répond pas, "Les services Google Play se sont arrêtés" et des problèmes similaires. Cela fonctionne car dans les étapes précédentes, nous avons en fait modifié l'image système elle-même (jetez un œil à la date de modification le
android-sdk\system-images\android-24\google_apis\x86_64\system.img
). Cela signifie que tous les appareils créés à partir de maintenant avec l'image système auront des gapps installés!Démarrez le nouvel AVD. Si le chargement prend anormalement longtemps, fermez-le et démarrez-le à la place en utilisant:
Après le démarrage de l'AVD, vous verrez l'image ci-dessous - notez l'icône Play Store dans le coin!
3 - Je ne suis pas sûr que toutes ces commandes soient nécessaires, et peut-être que certaines d'entre elles sont exagérées ... cela semble fonctionner - c'est ce qui compte. :)
la source
/system/app/SdkSetup.apk
n'existait pas à mon image. Merci beaucoup, je devenais fou d'essayer de résoudre ce problème!Désormais, il n'est plus nécessaire de charger latéralement des packages d'exécuter des scripts pour obtenir le Play Store sur l'émulateur. À partir d'Android Studio 2.4, vous pouvez maintenant créer un AVD sur lequel Play Store est préinstallé. Actuellement, il n'est pris en charge que sur les AVD exécutant des images système Android 7.0 (API 24).
Source officielle
Remarque: les appareils compatibles sont indiqués par la nouvelle colonne Play Store.
la source
Android 7.0 (Google Play)
pas seulement les API Google. Actuellement, il n'est disponible que pour l'API 24, pas l'API 25. Une fois que vous avez installé l'image système, elle apparaîtra sous l'onglet Recommandé, pas dans l'onglet Images x86.Je voulais commenter la dernière réponse, mais sans connexion, il est seulement possible de faire une réponse:
Pour se débarrasser de l '"erreur de lecture seule", arrêtez simplement l'appareil immédiatement après qu'il soit prêt. Mon script ressemble à ceci:
la source
adb root
La ligne doit être ajoutée immédiatement après laadb wait-for-device
ligne pour éviter touteRead-only file system
erreur.Voici le script que j'ai utilisé sous Linux pour une instance de l'API Nexus 5 24 x86 SANS GoogleApis.
Celui-ci l'a fait pour moi.
IMPORTANT: pour empêcher l'application de planter, n'oubliez pas d'accorder les autorisations de localisation aux services Google Play.
Configuration-> Applications-> Config (icône d'engrenage) -> Autorisations de l'application-> Emplacement -> (menu en haut à droite) -> Afficher le système-> Activer les services Google Play
la source
Allez sur http://opengapps.org/ et téléchargez la version pico de votre plate-forme et la version Android. Décompressez le dossier téléchargé pour obtenir
1. GmsCore.apk
2. GoogleServicesFramework.apk
3. GoogleLoginService.apk
4. Phonesky.apk
Ensuite, recherchez votre emulator.exe. Vous le trouverez probablement dans
C: \ Users \ <YOUR_USER_NAME> \ AppData \ Local \ Android \ sdk \ tools
Exécutez la commande:
emulator -avd <VOTRE_EMULATEUR'S_NAME> -netdelay none -netspeed full -no-boot-anim -writable-system
Remarque: utilisez -writable-system pour démarrer votre émulateur avec une image système inscriptible.
Ensuite,
adb root
adb remount
adb push <PATH_TO GmsCore.apk> / system / priv-app
adb push <PATH_TO GoogleServicesFramework.apk> / system / priv-app
adb push <PATH_TO GoogleLoginService.apk> / system / priv-app
adb push <PATH_TO Phonesky.apk> / system / priv-app
Ensuite, redémarrez l'émulateur
adb shell stop
adb shell start
Pour vérifier l'exécution,
adb shell pm listez les packages et vous trouverez le package com.google.android.gms pour google
la source
Ce que vous devez faire est de mettre à jour le
config.ini
fichier de l'appareil et de télécharger à nouveau l'image système.Mettez à jour les valeurs suivantes dans
C:\Users\USER\.android\avd\DEVICE_ID\config.ini
(sous Windows) ou~/.android/avd/DEVICE_ID/config.ini
(sous Linux)Puis retéléchargez l'image système de l'appareil depuis Android Studio> Outils> AVD Manager
C'est tout. Redémarrez votre appareil et vous aurez le Play Store installé.
Cela a également été répondu ici: Comment installer l'application Google Play dans l'émulateur Android Studio?
la source
Résolu de manière simple: vous devez créer un nouvel émulateur, avant de l'ouvrir pour la première fois, suivez ces 3 étapes simples:
1- allez dans "C: \ Users [utilisateur] .android \ avd [votre dossier de périphérique virtuel]" ouvrez "config.ini" avec un éditeur de texte comme le bloc-notes
2- changer
"PlayStore.enabled = false" à "PlayStore.enabled = true"
3- changer
"mage.sysdir.1 = images-système \ android-30 \ google_apis \ x86"
à
"image.sysdir.1 = images-système \ android-30 \ google_apis_playstore \ x86"
la source
À partir de maintenant, l'installation des apks dans le
/system
répertoire semble fonctionner à l'aide de laadb push
commande.Un service caché remontait automatiquement le
/system
répertoire enread-only
mode.De toute façon, j'ai pu installer le Play Store dans une machine virtuelle normale (c'est-à-dire une machine virtuelle non Google-Api) en montant simplement le
system.img
fichier à partir de mon système d'exploitation et en copiant les fichiers.Les fichiers APK peuvent être extraits de n'importe quel appareil Android réel exécutant Google Apps à l'aide de la
adb pull
commande[Pour obtenir le chemin exact des apks, nous pouvons utiliser la commande
pm list packages -f
dans le shell adb]la source
apk
s d'exister dans le/system
répertoire. J'ai remarqué que pousser chacun desapk
s dans un dossier correct n'entraîne pas d'erreurs d'écriture. J'ai mis à jour ma réponse - pourriez-vous essayer si cela fonctionne pour vous maintenant?Je veux juste ajouter une autre solution pour les utilisateurs de React Native qui n'ont besoin que de l'application Expo.
la source