Flutter run error : You have not accepted the license agreements

霸气de小男生 提交于 2019-12-22 03:41:14

问题


I'm developing android and ios app with Google flutter.
when I add a new dependency like shared_preferences to pubspec.yaml and then execute flutter run in terminal, I got this error:

  • What went wrong: A problem occurred configuring project ':shared_preferences'.
    You have not accepted the license agreements of the following SDK components: [Android SDK Platform 27].

I know why it happens! because the latest Android SDK platform on my system is 26 . it trys to download sdk 27 and then fails. no problem! I go to library cached folder which located here :

C:\Users...\AppData\Roaming\Pub\Cache\hosted\pub.dartlang.org\shared_preferences-0.3.1\android

and edit build.gradle file and change compileSdkVersion 27 to compileSdkVersion 26. it works.
so far I have to do this for all new dependencies,
Is there any way such as defining a global build.gradle file for all dependencies? so no need to edit each buil.gradles individually.


回答1:


try these:

  1. Open your terminal
  2. type flutter doctor --android-licenses
  3. press y to accept every license.



回答2:


First make sure Android SDK is installed on your device. Also see if 2 Android SDK's are not Installed!

Then just simply type on Terminal or CMD flutter doctor --android-licenses Then press y until it acquires all permissions.




回答3:


For me , flutter doctor --android-licenses didn't work for some reason.

The only cmd that worked & solved it all was this:

(your android_sdk folder exact path)\tools\bin\sdkmanager --licenses




回答4:


I think is a little late to answer this question, but I think this can be useful for those who are starting in Flutter like me.

In my case (at my machine), I've executed the steps below:

  1. Execute command prompt as administrator;
  2. Run the command flutter doctor --android-licenses and accept all licenses;
  3. Run the command flutter doctor -v to check if the issue was solved;
  4. To make sure that is everything is ok, execute the command prompt as a regular user (your user) and execute flutter doctor -v again

I hope this helps.




回答5:


Open the command prompt then run flutter doctor --android-licenses and accept all the licenses given.




回答6:


C:\Users\bansal>flutter doctor --android-licenses

A newer version of the Android SDK is required. To update, run:

D:\android SDK\tools\bin\sdkmanager --update


来源:https://stackoverflow.com/questions/48604914/flutter-run-error-you-have-not-accepted-the-license-agreements

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!