android studio 运行闪退,ubuntu上在androidstudio中启动emulator闪退的解决方法

本文主要介绍了在Ubuntu 14.04系统中,Android Studio的模拟器启动后闪退的问题及解决方案。通过查看模拟器信息,发现在启动配置文件中调整GPU设置可以解决问题。具体方法包括禁用GPU或者设置为SwiftShader模式。通过修改~/.android/avd/4_WVGA_Nexus_S_API_24.avd/config.ini文件,将hw.gpu.enabled设置为no或设置为swiftshader,成功运行模拟器。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

阅读目录(Content)

平台

现象

解决

一、查看模拟器的信息

二、命令行运行模拟器

平台

Ubuntu14.04 64

现象

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

解决

一、查看模拟器的信息

3d817ecffb76ac7860e8841a07848b9d.png

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

路径:/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

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

从模拟器的配置信息看:

45e579c786e4f00463ec0dea6e68daf2.png

这里已经设置了软件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

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

cb87959a059e1509774e448bad659e51.png

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

### 配置和使用 Android Studio 模拟器 #### 一、安装依赖项 为了确保模拟器能够正常工作,需要先确认系统已经安装了必要的依赖包。可以通过以下命令来更新并安装这些依赖: ```bash sudo apt-get update && sudo apt-get install -y build-essential libglu1-mesa-dev freeglut3-dev mesa-common-dev xvfb unzip openjdk-8-jdk git wget curl zlib1g-dev libc6-dev-i386 ``` #### 二、配置 KVM 支持 KVM (Kernel-based Virtual Machine) 是 Linux 内核中的全功能虚拟化模块,对于提高模拟器性能至关重要。 如果遇到模拟器启动失败的情况,可以尝试通过下面这条指令赋予当前用户对 `/dev/kvm` 的访问权限[^4]: ```bash sudo chown $USER:$USER /dev/kvm ``` #### 三、下载并安装 Android SDK 和 NDK 工具链 打开 Android Studio, 进入 `SDK Manager`, 确认已勾选下列组件: - Android SDK Platform-tools - Android Emulator - Intel x86 Emulator Accelerator (HAXM installer) 注意:如果是 AMD CPU,则不需要 HAXM;而是应该启用 SVM 功能,并选择 ARM 或者 Google 提供的 QEMU 加速支持。 #### 四、创建 AVD (Android Virtual Device) 进入 Tools -> AVD Manager 创建一个新的虚拟设备。建议选用较新的 API Level 及 System Image 来获得更好的兼容性和稳定性。同时也要留意所选 image 是否与主机系统的架构相匹配(比如 x86 vs arm64)。 #### 五、解决 GLIBC 库冲突问题 当发现由于 glibc 版本过高而导致模拟器崩溃时,可考虑降级 emulator 到更稳定的版本。具体做法是从官方渠道获取旧版 apk 文件手动替换现有程序文件夹下的对应部分[^2]。 另外一种方法是调整 LD_LIBRARY_PATH 环境变量指向特定路径下的共享库集合,从而绕过默认加载机制。这通常涉及到编辑 shell profile 脚本如 `.bashrc` 添加类似这样的行: ```bash export LD_LIBRARY_PATH=/path/to/custom/glibc/libraries:$LD_LIBRARY_PATH ``` #### 六、验证设置是否生效 最后一步是在终端里执行如下命令测试能否顺利开启指定名称的 avd 实例[^5]: ```bash ./emulator -avd Your_AVD_Name ``` 以上就是关于如何在 Ubuntu 上配置以及使用 Android Studio 模拟器的相关指导。希望上述信息能帮助到您!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值