今天(2020.03.24)剛接觸flutter, 這個(gè)問題困擾了大概4個(gè)小時(shí), 最后在一個(gè)韓國(guó)人的博客里找到解決方案, 實(shí)在離譜.
問題描述
Flutter和Android Studio都是最新版, 安裝好之后運(yùn)行
flutter doctor
報(bào)告里有這么一條:
? Android license status unknown.
google搜了一下, 通常的解決方案是執(zhí)行
flutter doctor --android-licenses
復(fù)制, 執(zhí)行, 不料卻提示:
A newer version of the Android SDK is required. To update, run:
/Users/***/Android/sdk/tools/bin/sdkmanager --update
繼續(xù)復(fù)制, 執(zhí)行, 這下卻提示/Users/***/Android/sdk/tools/bin/sdkmanager: 無此目錄或文件.
實(shí)際上sdkmanager在一個(gè)相鄰的目錄里, 不過并沒用, 因?yàn)榧词钩晒Ω轮? 再?gòu)?fù)制到該位置, 再次執(zhí)行flutter doctor --android-licenses也還是繼續(xù)提示需要更新, 到這里就是個(gè)死循環(huán).
解決方案
這里顯然并不屬于"通常情況", 最后生效的解決方案如下:
打開Android Studio - Configure - SDK Manager, 之后在打開的界面里, 一共三個(gè)子界面, 即SDK Platforms, SDK Tools和SDK Update Sites.
切到SDK Tools這個(gè)子界面, 在界面底部略靠上的位置, 找到Hide Obsolete Packages選項(xiàng), 該項(xiàng)默認(rèn)勾選, 將其取消勾選.
在新出現(xiàn)的包列表里, 找到Android SDK Tools (Obsolete), 勾選.
然后右下角Apply, 安裝完成后點(diǎn)擊Finish, 之后點(diǎn)擊OK, 退出Android Studio.
這次再運(yùn)行flutter doctor, 提示為
! Some Android licenses not accepted. To resolve this, run: flutter doctor --android-licenses
按照提示執(zhí)行flutter doctor --android-licenses, 然后全部接受.
最后再執(zhí)行flutter doctor, 確認(rèn)問題解決.