已通过sdkmanager接受Android许可,但Flutter检测不到(Mac环境)
解决Mac上Flutter提示Android许可未知问题(已通过sdkmanager接受许可)
确认Flutter识别的Android SDK路径
运行flutter doctor -v,查看输出中「Android SDK at」后的路径,对比你环境变量里的ANDROID_HOME或ANDROID_SDK_ROOT。如果两者不一致,说明Flutter使用的不是你之前操作的SDK目录。修正环境变量并生效
打开对应Shell的配置文件(zsh用户为~/.zshrc,bash用户为~/.bash_profile),添加或修改以下内容(替换为你的实际SDK路径):export ANDROID_SDK_ROOT=/Users/你的用户名/Library/Android/sdk export PATH=$ANDROID_SDK_ROOT/tools/bin:$PATH export PATH=$ANDROID_SDK_ROOT/platform-tools:$PATH保存后执行
source ~/.zshrc(对应你的Shell配置文件)使环境变量生效。针对Flutter指定的SDK重新接受许可
切换到Flutter识别的SDK路径的tools/bin目录下,运行许可接受命令:cd /path/to/flutter/recognized/sdk/tools/bin ./sdkmanager --licenses逐一输入
y接受所有未同意的许可。修复SDK目录权限
Mac上可能因权限问题导致Flutter无法读取许可状态,执行以下命令修复(替换为你的SDK路径):sudo chown -R $USER:$GROUP /Users/你的用户名/Library/Android/sdk重启终端并验证
关闭当前终端窗口,打开新终端运行flutter doctor,检查许可状态是否正常。
内容的提问来源于stack exchange,提问作者Ashaffah
相关产品推荐
相关产品推荐

