tutorial studio libros instalacion herramientas espaƱol con basico avanzado aplicaciones android android-studio android-avd

libros - Android Studio AVD error lanzando



manual android studio avanzado (7)

Tengo un emulador Nexus 6P API23 descargado en mi PC con Ubuntu 15.10. Cuando intento lanzarlo, falla y aparece un cuadro de diálogo que dice:

(AVD config: Nexus 6P API 23 x86 - Gráficos de Hardware-GLES 2.0)

Cannot launch AVD in emulator. Output: libGL error: unable to load driver: nouveau_dri.so libGL error: driver pointer missing libGL error: failed to load driver: nouveau libGL error: unable to load driver: swrast_dri.so libGL error: failed to load driver: swrast X Error of failed request: GLXBadContext Major opcode of failed request: 155 (GLX) Minor opcode of failed request: 6 (X_GLXIsDirect) Serial number of failed request: 47 Current serial number in output stream: 46 libGL error: unable to load driver: nouveau_dri.so libGL error: driver pointer missing libGL error: failed to load driver: nouveau libGL error: unable to load driver: swrast_dri.so libGL error: failed to load driver: swrast X Error of failed request: GLXBadContext Major opcode of failed request: 155 (GLX) Minor opcode of failed request: 6 (X_GLXIsDirect) Serial number of failed request: 47 Current serial number in output stream: 46 libGL error: unable to load driver: nouveau_dri.so libGL error: driver pointer missing libGL error: failed to load driver: nouveau libGL error: unable to load driver: swrast_dri.so libGL error: failed to load driver: swrast X Error of failed request: BadValue (integer parameter out of range for operation) Major opcode of failed request: 155 (GLX) Minor opcode of failed request: 24 (X_GLXCreateNewContext) Value in failed request: 0x0 Serial number of failed request: 33 Current serial number in output stream: 34 QObject::~QObject: Timers cannot be stopped from another thread

He probado otros AVD y no funcionan.


En Debian Stretch (Android Studio 3.0.1 / Android Emulator 27.1.12) experimenté este mismo problema y apliqué la siguiente solución:

sudo apt-get install libstdc++6:amd64 cd ~/Android/Sdk/emulator/lib64/libstdc++ mkdir old mv libstdc* old ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6


He tenido el mismo error que usted y he logrado encontrar una solución. Esperemos que esto también solucione su problema.

En lugar de iniciar el emulador desde Android Studio, abra el terminal y el CD en el directorio de herramientas dentro de su directorio SDK de Android; el mío es ~/Android/Sdk/tools . Desde allí ejecuta el comando:

LD_PRELOAD=''/usr/$LIB/libstdc++.so.6'' DISPLAY=:0 ./emulator -avd <insert avd name here>

Ahora debería poder iniciar su aplicación con Android Studio presionando la flecha verde de ejecución y seleccionando el emulador que acaba de comenzar.

Para más información sobre por qué esto funciona, vaya here

Editar:

Después de pensar un poco más, probé este script y parece funcionar, para que pueda iniciar el emulador en Android Studio. Reemplaza el ejecutable del emulador con un script bash que lo llama como anteriormente. Tendrá que cambiar a la ruta de herramientas a la ubicación correcta. También sugiero hacer una copia de respaldo de su directorio de herramientas en caso de que algo salga mal:

#!/bin/bash TOOLS_PATH=''/home/user/Android/Sdk/tools'' UNEXPANDED_LIB=''$LIB'' for emul in ${TOOLS_PATH}/em* do cp ${emul} ${emul}-orig cat <<EOF > ${emul} #!/bin/bash LD_PRELOAD=''/usr/$UNEXPANDED_LIB/libstdc++.so.6'' ${emul}-orig "/$@" EOF done


Ingresando lo siguiente en la terminal (Ctrl-Alt-T) resolví esto por mí:

cd $Android/Sdk/tools/lib64/libstdc++ mv libstdc++.so.6 libstdc++.so.6.bak ln -s /usr/lib64/libstdc++.so.6

Esto aparentemente crea un enlace simbólico. Esta solución se tomó de la Línea 23 de https://code.google.com/p/android/issues/detail?id=197254#c23 .

Es posible que deba cambiar las rutas a los archivos dependiendo de su instalación (es decir, el original usó la ruta ANDROID_HOME / android-sdk-linux_x86 / mientras que mi instalación fue solo Android / Sdk /).


Mi caso: trabajo con Debian Jessie y Android Studio 2.2.3. Mi tarjeta gráfica es una ATI Radeon HD 6850 de Sapphire.

El emulador dice que hay un problema al cargar el controlador gráfico (" error libGL: no se puede cargar el controlador: r600_dri.so "). Como se explica here , parece que Google empaquetó con Android Studio una versión antigua de una biblioteca ( libstdc ++. So.6 ), y el emulador falla cuando intenta usar la tarjeta gráfica.

¿Solución? Muy fácil: utilizar las bibliotecas del sistema en lugar de las empaquetadas en Android Studio. ¿Cómo? Añadiendo "-use-system-libs" al final del comando. Asi que:

./emulator -avd EMULATOR_NAME -netspeed full -netdelay none -use-system-libs

La solución definitiva (si no desea utilizar el terminal) es establecer la variable de entorno ANDROID_EMULATOR_USE_SYSTEM_LIBS en 1 para su usuario / sistema. Con este cambio, cuando ejecute el emulador en Android Studio, también cargará las bibliotecas del sistema en lugar de las empaquetadas.

PD: la forma más sencilla que encontré para establecer la variable de entorno, es modificar el script que ejecuta Android Studio ( studio.sh , en mi caso, está dentro de / opt / android-stuido / bin ), y agregarlo al principio. :

export ANDROID_EMULATOR_USE_SYSTEM_LIBS=1

ACTUALIZACIÓN Diciembre de 2017: tuve el mismo problema con Debian Stretch y Android Studio 3.0.1 (la misma tarjeta gráfica). La misma solución funciona para mí.


También puede usar "Software" en la opción Emulated Performance Graphics, en la configuración de AVD


Tuve exactamente el mismo problema en Ubuntu 16.04 LTS y Android Studio 2.3.2 y resolví el problema haciendo lo siguiente en una ventana de terminal: (NOTA: Vi esto en otro lugar en línea pero no recuerdo dónde puedo hacerlo) no dar crédito cuando el crédito es debido)

sudo apt list "*nvidia-[0-9][0-9][0-9]"

mina devuelto: nividia-346 nividia-352 nividia-361 nividia-367 nividia-375

Luego corrí lo siguiente para cada uno que fue devuelto:

sudo apt install nvidia-375 sudo apt install nvidia-367 sudo apt install nvidia-361 sudo apt install nvidia-352 sudo apt install nvidia-346

Luego reinicie Ubuntu y todo funcionó bien.


Yo era ubuntu 16.04 Android Studio 3,

ln -s $Android/Sdk/emulator/lib64/libstdc++/libstdc++.so.6.0 $Android/Sdk/tools/lib64/libstdc++

Encontré mi libstdc ++. so.6 en ~ / Android / Sdk / emulator / lib64 / libstdc ++ / ,

pero Android Studio encontrará ~ / Android / Sdk / tools / lib64 / libstdc ++ /