flutter doctorを実行したら「Android license status unknown.」と出てしまったときの対処法です。
ライセンスに同意すればいいだけかと思って、言われるままにコマンドを実行しても、そのライセンスが表示されない!
じゃ、どうすんの? ってはなし。
解決法1:ライセンスに同意する
まずは、[!]の次に表示されたメッセージを確認します。
「Run ‘flutter doctor –android-licenses‘ to accept the SDK licenses.」と言っているので、言われるまま以下のように実行します。
$ flutter doctor --android-licenses
このコマンドのあとに、次のような感じでライセンスが表示されたら、yで進んでacceptすればエラーはなくなります。
長文なので、何度かyを入力しながら進みます。
Review licenses that have not been accepted (y/N)?
解決法2:Android Studioで必要なSDKを入れる
上記のコマンを実行しても、別のエラーが出てライセンス表示がされないことがあります。
私の環境では、次のように表示されてライセンス認証ができません。
そういうときは、おそらくAndroid Studioで必要なSDKが入っていないことが原因なのかも。
というわけで、Android StudioのSDK Managerを開いて次のSDKがインストールされているか確認します。
- Android SDK Command-line Tools
- Android SDK Build-Tools
- Android SDK Platform-Tools
私の場合は、Command-line Toolsが入っていませんでした。たぶん、それが原因。
Android SDK Build-Toolsも、ちょっと古いようなので、ついでにUpdateしときます。
インストールが終わったら、再度flutter doctorを実行します。
今度は「Some Android licenses not accepted.〜」と、さっきとはメッセージは違うけど、再度「flutter doctor –android-licenses」を実行するように言っているので従います。
最後に「flutter doctor」で確認して、「accepted」なら成功です。