颤动运行错误:您尚未接受许可协议

Mne*_*oee 10 android android-sdk-tools flutter

我正在开发谷歌扑动的 Android和ios应用程序.
当我添加一个新的依赖就像shared_preferencespubspec.yaml,然后再执行flutter run在终端,我得到这个错误:

  • 出了什么问题:配置项目':shared_preferences'时出现问题.
    您尚未接受以下SDK组件的许可协议:[Android SDK Platform 27].

我知道为什么会这样!因为我系统上最新的Android SDK平台是26.它试图下载sdk 27​​然后失败.没问题!我去了位于这里的图书馆缓存文件夹:

C:\用户\应用程序数据\漫游\酒吧\缓存\主持\ pub.dartlang.org\shared_preferences-0.3.1 \机器人

并编辑build.gradle文件并更改compileSdkVersion 27compileSdkVersion 26.有用.
到目前为止,我必须为所有新的依赖项执行此操作,
是否有任何方法,例如为所有依赖项定义全局build.gradle文件?所以不需要buil.gradle单独编辑每个s.

小智 51

这对我来说解决了问题,

  1. 打开android studio(如果有项目则关闭)>>配置>>外观和行为>>Android SDK
  2. 转到SDK 工具选项卡
  3. 安装Android SDK 命令行工具(最新)

在此处输入图片说明

然后打开cmd运行 flutter doctor

  • 安装 Android SDK 命令行工具(最新)后,您现在可以运行“flutter doctor --android-licenses”并一一接受所有这些。 (4认同)
  • 是的,这对我有用。我本来想添加一个帖子,但我在这里找到了它。我正在使用 Ubuntu 20.04 LTS & Android Studio v4.2.1 & Flutter v2.2.0 (3认同)

Mar*_*nio 30

我认为回答这个问题有点晚了,但我认为这对像我这样刚开始使用 Flutter 的人很有用。

就我而言(在我的机器上),我执行了以下步骤:

  1. 以管理员身份执行命令提示符。
  2. 运行命令flutter doctor --android-licenses并接受所有许可证。
  3. 运行命令flutter doctor -v检查问题是否已解决。
  4. 为确保一切正常,请以普通用户(您的用户)身份执行命令提示符并flutter doctor -v再次执行。

在此处输入图片说明

  • 以管理员身份运行 cmd 对我来说是关键。如果你不以管理员身份运行,虽然我对所有人都说是,但它仍然显示许可证不被接受 (2认同)

Muh*_*kur 17

试试这些:

  1. 打开你的终端
  2. 类型 flutter doctor --android-licenses
  3. y接受每个许可证。

  • 对于 CI 系统 - 使用 `yes | flutter doctor --android-licenses` 以避免提示 (7认同)
  • @DanielGomezRico 因为它对很多人不起作用 (2认同)

Tus*_*dey 10

首先确保您的设备上安装了Android SDK.另请参阅是否安装了2个Android SDK!

然后只需在终端或CMD上键入flutter doctor --android-licenses 然后按y直到获取所有权限.


小智 8

    \n
  1. 打开Android Studio
  2. \n
  3. 文件 \xe2\x86\x92 设置 \xe2\x86\x92 外观和行为 \xe2\x86\x92 Android SDK \xe2\x86\x92 SDK 工具 \xe2\x86\x92 检查表 Android SDK 命令行工具(最新)\ xe2\x86\x92 应用 \xe2\x86\x92 下载。\n在此输入图像描述
  4. \n
\n

3. 完成。\n4. 打开cmd并运行yes | flutter doctor --android-licenses

\n


Ahm*_*ssy 7

对我来说,flutter doctor --android-licenses由于某种原因没有工作。

唯一能解决所有问题的cmd是这样的:

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

  • 我白花了4个小时。最后,这对我有用。谢谢! (2认同)

Har*_*ath 6

如果您在 Windows 中以管理员身份打开命令提示符并运行以下命令。

flutter doctor --android-licenses
Run Code Online (Sandbox Code Playgroud)

然后输入y所有 (y/n) 以接受协议。