You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu 18.04无Android Studio安装Flutter时模拟器权限问题求助

解决Ubuntu 18.04下Flutter模拟器启动权限&崩溃问题

我之前在Ubuntu 18.04上折腾过完全不依赖Android Studio搭建Flutter环境的场景,刚好碰到过和你一模一样的问题,给你几个亲测有效的解决步骤:

1. 彻底修复AVD目录的权限问题

你用sudo启动模拟器导致的最大问题就是AVD配置文件和镜像文件的所有权变成了root,后续普通用户启动自然会有写入权限错误,这是核心原因:

  • 先检查AVD目录的所有权:
    ls -la ~/.android/avd/
    
    如果看到文件所有者是root,就执行下面的命令把权限改回当前用户:
    sudo chown -R $USER:$USER ~/.android/
    
  • 同时把Android SDK目录的权限也同步修正:
    sudo chown -R $USER:$USER ${ANDROID_HOME}
    

2. 调整模拟器启动参数,绕过CPU特性和沙箱限制

Ubuntu 18.04的系统环境和新版Android模拟器存在一些兼容性问题,直接用默认参数启动容易崩溃,试试带这些参数启动:

${ANDROID_HOME}/emulator/emulator -avd pixel -accel on -gpu auto -no-sandbox -cpu host

参数解释:

  • -accel on:强制开启硬件加速(前提是你已经在BIOS里开启了VT-x/AMD-V虚拟化)
  • -gpu auto:让模拟器自动选择最合适的GPU渲染模式,避免显卡兼容性问题
  • -no-sandbox:绕过Ubuntu沙箱限制,解决root启动提示的沙箱不支持问题(现在我们用普通用户启动,这个参数依然有效)
  • -cpu host:让模拟器直接复用主机CPU的特性,绕过CPU特性检测失败的报错

3. 确保KVM权限真正生效

你说加入kvm组没用,大概率是没有让组权限在当前会话生效:

  • 先确认kvm组已添加当前用户:
    grep kvm /etc/group
    
    能看到你的用户名在kvm组里就没问题
  • 让组权限立即生效(不用重新登录):
    newgrp kvm
    
  • 验证权限:
    ls -la /dev/kvm
    
    输出里如果有crw-rw----+ 1 root kvm,说明当前用户已经有kvm的读写权限了

4. 更新模拟器和系统镜像

提示“模拟器需更新”是真的有必要,旧版模拟器在Ubuntu 18.04上bug很多:

  • 更新SDK管理器和模拟器:
    sdkmanager --update
    
  • 重新下载对应版本的系统镜像(比如你用的Android 30的Google APIs镜像):
    sdkmanager "system-images;android-30;google_apis;x86_64"
    
  • 如果之前的AVD有问题,可以删除重建:
    avdmanager delete avd -n pixel
    avdmanager create avd -n pixel -k "system-images;android-30;google_apis;x86_64"
    

5. 用Flutter连接正常运行的模拟器

等模拟器完全启动进入系统后,再用Flutter命令连接:

  • 先检查设备是否被识别:
    flutter devices
    
  • 直接运行Flutter项目即可:
    flutter run
    
    不用再用flutter emulators --launch,这个命令有时候会自动加一些冲突的参数,手动启动模拟器更稳定

内容的提问来源于stack exchange,提问作者user5688956

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.08 07:57:29