Ubuntu下VS Code与Android Studio的Android SDK路径冲突求助
解决VS Code启动Android Studio创建的AVD时SDK路径错误的问题
以下是针对性的解决步骤:
1. 配置ANDROID_SDK_ROOT环境变量
模拟器启动时优先读取ANDROID_SDK_ROOT而非ANDROID_HOME,即使已设置后者,仍需添加该变量:
- 打开终端,编辑你的shell配置文件(如
~/.bashrc或~/.zshrc),添加:export ANDROID_SDK_ROOT=/usr/lib/android-sdk export ANDROID_HOME=/usr/lib/android-sdk export PATH=$PATH:$ANDROID_SDK_ROOT/tools:$ANDROID_SDK_ROOT/platform-tools - 执行
source ~/.bashrc(或对应配置文件)使更改生效,然后重启VS Code确保它加载新的环境变量。
2. 修正VS Code的Android相关配置
除了dart.androidSdkPath,还需检查并设置Android插件的SDK路径:
- 打开VS Code设置(快捷键
Ctrl+,),搜索android.sdkPath,将其值设置为/usr/lib/android-sdk。 - 同时确认Flutter配置中的
flutter.sdk路径正确,Flutter会依赖该路径关联的SDK配置。
3. 重新配置Android Studio创建的AVD
即使AVD使用相对路径,仍可能因旧镜像关联导致路径错误:
- 打开Android Studio的AVD Manager,选中无法启动的AVD,点击
Edit(编辑)按钮。 - 在
System Image步骤,重新选择对应API版本的镜像(确保该镜像存在于/usr/lib/android-sdk/system-images目录下),完成后保存配置。 - 手动检查AVD配置文件:打开
~/.android/avd/[你的AVD名称].avd/config.ini,确认所有路径相关项无绝对路径残留,确保image.sysdir.1指向的相对路径在当前SDK目录下存在。
4. 清理缓存与重启相关服务
- 删除
~/.android/cache目录下的所有缓存文件,清除旧的路径缓存。 - 重启adb服务:
adb kill-server adb start-server - 关闭所有模拟器实例,重新尝试启动。
5. 确保VS Code加载正确的环境变量
如果VS Code是从桌面图标启动,可能未加载用户shell的环境变量:
- 尝试从终端执行
code命令启动VS Code,此时它会继承终端的环境变量,验证是否能正常启动AVD。 - 若有效,将环境变量配置到全局文件(如
/etc/profile或/etc/environment),确保桌面启动的程序也能读取到正确的路径。
内容的提问来源于stack exchange,提问作者Battlefury
相关产品推荐
相关产品推荐

