Seleccioné este emulador de la versión más reciente de Android Studio AVD.
He seleccionado la última versión de la API de Android 23. Como dice "con las API de Google", pensé que en realidad incluiría todas las aplicaciones de Google, incluida Play Store, para poder instalar aplicaciones como Facebook.
He visto otros hilos en SO que parecen estar desactualizados ahora ( ¿Cómo instalar la aplicación Google Play en el emulador de Android Studio? ), Este da instrucciones para instalar aplicaciones de Google basadas en paquetes universales, pero solo llega hasta Android 4.3 API 18: http://wiki.rootzwiki.com/Google_Apps#Universal_Packages_2
Me gustaría el de API 23. ¿Hay alguna forma de instalar el paquete de Google Apps en el emulador?
Parece extraño que el emulador oficial de Android no venga de serie con todas las aplicaciones de Google en primer lugar ... Esto no parece un gran apoyo para Google y podría significar que los desarrolladores tendrán que comprar dispositivos reales para desarrollar para API 23 ?
Respuestas:
Tuve que hacer esto recientemente en el emulador API 23 y seguí esta guía . Funciona para el emulador API 23, por lo que no debería tener ningún problema.
Nota: Todo el crédito es para el autor de la publicación del blog vinculada (pyoor). Lo estoy publicando aquí en caso de que el enlace se rompa por algún motivo.
....
Descarga el paquete GAPPS
A continuación, debemos desplegar el paquete de aplicaciones de Google apropiado que coincida con nuestra versión de Android AVD. En este caso, usaremos el paquete 'gapps-lp-20141109-signed.zip'. Puede descargar ese archivo de BasketBuild aquí .
Para instalar Google Play, necesitaremos enviar los siguientes 4 APK a nuestro AVD (ubicado en ./system/priv-app/):
GmsCore.apk, GoogleServicesFramework.apk, GoogleLoginService.apk, Phonesky.apk
Envíe APK al emulador
Con nuestros APK extraídos, lancemos nuestro AVD usando el siguiente comando.
Esto puede tardar varios minutos la primera vez que se crea el AVD. Una vez iniciado, necesitamos volver a montar la partición del sistema AVD como lectura / escritura para que podamos enviar nuestros paquetes al dispositivo.
A continuación, envíe los APK a nuestro AVD:
¡Lucro!
Y finalmente, reinicia el emualador usando los siguientes comandos:
Una vez que se reinicia el emulador, deberíamos ver el paquete de Google Play aparecer dentro del menú de inicio. Después de asociar una cuenta de Google con este AVD, ahora tenemos una versión completamente funcional de Google Play ejecutándose bajo nuestro emulador.
fuente
A continuación se muestra el método que funcionó para mí en API 23-25 emuladores . La explicación se proporciona para API 24, pero funciona de manera casi idéntica para otras versiones.
Créditos : Jon Doe , zaidorx , pjl .
En el administrador AVD de Android Studio (probado en v2.2.3), cree un nuevo emulador con el objetivo "Android 7.0 (API de Google)":
Descargue el último paquete Open GApps para la arquitectura del emulador (CPU / ABI). En mi caso lo fue
x86_64
, pero puede ser otra cosa dependiendo de su elección de imagen durante el asistente de creación de dispositivos. Curiosamente, la arquitectura parece más importante que la versión correcta de Android (es decir, los gapps para 6.0 también funcionan en un emulador 7.0).Extraiga los
.apk
archivos utilizando las siguientes rutas (relativas aopen_gapps-x86_64-7.0-pico-201#####.zip
):Nota que Open gapps utilizar la compresión Lzip, que se puede abrir mediante la herramienta en el sitio web Lzip 1 , 2 , o en Mac usando homebrew:
brew install lzip
. Entonces, por ejemplolzip -d gmscore-x86_64.tar.lz
.Estoy proporcionando un archivo por lotes que utiliza
7z.exe
ylzip.exe
para extraer todos los mensajes de.apk
correo electrónico requeridos automáticamente (en Windows):Para usar esto, guarde el script en un archivo (por ejemplo
unzip_gapps.bat
) y coloque todo lo relevante en una carpeta, como se muestra a continuación:Actualiza el
su
binario para poder modificar los permisos de los archivos que luego subiremos. Sesu
puede encontrar un nuevo binario en el paquete SuperSU by Chainfire "Recovery flashable"zip
. Obtenga el zip, extráigalo en algún lugar, cree un archivo por lotes con el siguiente contenido en la misma carpeta y finalmente ejecútelo:Coloque todos los
.apk
archivos en una carpeta y cree un archivo por lotes con estos contenidos 3 :Tenga en cuenta que la ruta
E:\...\android-sdk\tools\emulator.exe
debe modificarse de acuerdo con la ubicación del SDK de Android en su sistema.Ejecute el archivo por lotes anterior (la consola debería verse así después):
Cuando se cargue el emulador, ciérrelo, elimine el dispositivo virtual y luego cree otro usando la misma imagen del sistema . Esto corrige la aplicación Play Store que no responde, "Los servicios de Google Play se han detenido" y problemas similares. Funciona porque en los pasos anteriores en realidad hemos modificado la imagen del sistema en sí (echar un vistazo a la fecha de cambio de
android-sdk\system-images\android-24\google_apis\x86_64\system.img
). Esto significa que todos los dispositivos creados a partir de ahora con la imagen del sistema tendrán gapps instalados.Inicie el nuevo AVD. Si tarda inusualmente en cargarse, ciérrelo y en su lugar inícielo usando:
Después de que comience el AVD, verá la imagen a continuación: ¡observe el ícono de Play Store en la esquina!
3 - No estoy seguro de que todos estos comandos sean necesarios, y quizás algunos de ellos sean excesivos ... parece que funciona, que es lo que cuenta. :)
fuente
/system/app/SdkSetup.apk
no existía en mi imagen. Muchas gracias, ¡me estaba volviendo loco tratando de resolver esto!Ahora no es necesario cargar ningún paquete o ejecutar scripts para obtener Play Store en el emulador. A partir de Android Studio 2.4, ahora puede crear un AVD que tenga Play Store preinstalado. Actualmente, solo es compatible con los AVD que ejecutan imágenes del sistema de Android 7.0 (API 24).
Fuente oficial
Nota: Los dispositivos compatibles se indican mediante la nueva columna Play Store.
fuente
Android 7.0 (Google Play)
, no solo las API de Google. Actualmente solo está disponible para API 24, no para API 25. Una vez que instale la imagen del sistema, aparecerá en la pestaña Recomendado, no en la pestaña Imágenes x86.Quería comentar la última respuesta, pero sin iniciar sesión solo es posible hacer una respuesta:
Para deshacerse del "error de solo lectura", simplemente detenga el dispositivo inmediatamente después de que esté listo. Mi guión tiene el siguiente aspecto:
fuente
adb root
La línea debe agregarse inmediatamente después de laadb wait-for-device
línea para evitarRead-only file system
errores.Aquí está el script que usé en linux para una instancia Nexus 5 API 24 x86 SIN GoogleApis.
Este lo hizo por mí.
IMPORTANTE: para evitar que la aplicación se bloquee, recuerde otorgar permisos de ubicación a los servicios de Google Play.
Configuración-> Aplicaciones-> Configuración (icono de engranaje) -> Permisos de aplicaciones-> Ubicación -> (Menú superior derecho) -> Mostrar sistema-> Habilitar los servicios de Google Play
fuente
Vaya a http://opengapps.org/ y descargue la versión pico de su plataforma y la versión de Android. Descomprima la carpeta descargada para obtener
1. GmsCore.apk
2.
GoogleServicesFramework.apk 3. GoogleLoginService.apk
4. Phonesky.apk
Luego, ubique su emulator.exe. Probablemente lo encontrará en
C: \ Users \ <YOUR_USER_NAME> \ AppData \ Local \ Android \ sdk \ tools
Ejecute el comando:
emulator -avd <YOUR_EMULATOR'S_NAME> -netdelay none -netspeed full -no-boot-anim -writable-system
Nota: Utilice -writable-system para iniciar su emulador con la imagen del sistema grabable.
Luego,
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
Luego, reinicie el emulador
adb shell stop
adb shell start
Para verificar la ejecución,
adb shell pm enumere los paquetes y encontrará el paquete com.google.android.gms para google
fuente
Lo que debe hacer es actualizar el
config.ini
archivo del dispositivo y volver a descargar la imagen del sistema.Actualice los siguientes valores en
C:\Users\USER\.android\avd\DEVICE_ID\config.ini
(en Windows) o~/.android/avd/DEVICE_ID/config.ini
(en Linux)Luego, vuelva a descargar la imagen del sistema para el dispositivo desde Android Studio> Herramientas> AVD Manager
Eso es todo. Reinicia tu dispositivo y tendrás la Play Store instalada.
Esto también se ha respondido aquí: ¿Cómo instalar la aplicación Google Play en el emulador de Android Studio?
fuente
Resuelto de manera fácil: debes crear un nuevo emulador, antes de abrirlo por primera vez sigue estos 3 sencillos pasos:
1- vaya a "C: \ Users [usuario] .android \ avd [carpeta de su dispositivo virtual]" abra "config.ini" con un editor de texto como el bloc de notas
2- cambiar
"PlayStore.enabled = false" a "PlayStore.enabled = true"
3- cambiar
"mage.sysdir.1 = imágenes del sistema \ android-30 \ google_apis \ x86"
a
"image.sysdir.1 = imágenes del sistema \ android-30 \ google_apis_playstore \ x86"
fuente
A partir de ahora, la instalación de las aplicaciones en el
/system
directorio parece estar funcionando con eladb push
comando.Algún servicio oculto estaba volviendo a montar automáticamente el
/system
directorio enread-only
modo.De cualquier manera, pude instalar Play Store en una máquina virtual normal (es decir, una máquina virtual que no es de Google-Api) simplemente montando el
system.img
archivo desde mi sistema operativo y copiando los archivos.Los archivos APK se pueden extraer de cualquier dispositivo Android real que ejecute Google Apps mediante el
adb pull
comando[Para obtener la ruta exacta de los apks, podemos usar el comando
pm list packages -f
dentro del shell de adb]fuente
apk
que existieran varias copias de s en el/system
directorio. Noté que empujar cada uno de losapk
correos electrónicos a una carpeta correcta no da como resultado errores de escritura. He actualizado mi respuesta, ¿podría intentarlo si funciona para usted ahora?Solo quiero agregar otra solución para los usuarios de React Native que solo necesitan la aplicación Expo.
fuente