ubuntu上在androidstudio中启动emulator闪退的解决方法

阅读目录(Content)

平台
现象
解决
一、查看模拟器的信息
二、命令行运行模拟器

平台

Ubuntu14.04 64

现象

在AndrodStudio中点击模拟器的启动按钮后,模拟器界面弹出后,又立刻闪退。

解决

一、查看模拟器的信息

从上面可以看到模拟器的存放路径以及名称:

路径:/home/pengdonglin/.android/avd/4_WVGA_Nexus_S_API_24.avd

名称:4_WVGA_Nexus_S_API_24

架构:x86_64

二、命令行运行模拟器

在androidsdk的路径下面运行下面的命令:

./emulator/qemu/linux-x86_64/qemu-system-x86_64 -avd 4_WVGA_Nexus_S_API_24
此时出现了错误:

emulator: WARNING: encryption is off
WARNING: The Mesa software renderer is deprecated. Use Swiftshader (-gpu swiftshader) for software rendering.
failed to create drawable
getGLES2ExtensionString: Could not create GLES 2.x Pbuffer!
Failed to obtain GLES 2.x extensions string!
Could not initialize emulated framebuffer
warning: host doesn't support requested feature: CPUID.80000001H:ECX.sse4a [bit 6]
warning: host doesn't support requested feature: CPUID.80000001H:ECX.sse4a [bit 6]
warning: host doesn't support requested feature: CPUID.80000001H:ECX.sse4a [bit 6]
warning: host doesn't support requested feature: CPUID.80000001H:ECX.sse4a [bit 6]
emulator: emulator window was out of view and was recentered
emulator: ERROR: Could not initialize OpenglES emulation, use '-gpu off' to disable it.

从提示中有两种解决办法:

1、设置 -gpu swiftshader

2、设置 -gpu off

在运行模拟器的时候,加入上面任意一个,都可以解决问题,但是最终我们并不是从命令行运行模拟器,所以我们得把这上面的配置写到模拟器的启动配置文件中。

从模拟器的配置信息看:

这里已经设置了软件GLES 2.0,所以这里就需要在配置文件中修改模拟器的配置了,配置文件的路径:

~/.android/avd/4_WVGA_Nexus_S_API_24.avd/config.ini

下面是这个文件中关于GPU的配置:

hw.gps=yes
hw.gpu.enabled=yes
hw.gpu.mode=mesa

解决方法1:

hw.gpu.enabled=no
hw.gpu.mode=mesa

解决方法2:

hw.gpu.enabled=yes
hw.gpu.mode=swiftshader

使用上面的任意一个,模拟器都可以运行:

以上所述是小编给大家介绍的ubuntu上在androidstudio中启动emulator闪退的解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对呐喊教程网站的支持!

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。