我下载了最新的Android SDK工具24.4.1版本。我使用命令行安装sdk。有人问我时,我输入了y

您是否接受许可证'android-sdk-license-c81a61d9' [y/n]: y 安装成功之后。

但是当使用Gradle 3.1进行构建时,会显示如下内容

您没有接受以下SDK组件的许可协议: [Android SDK Platform 23, Android SDK Build-Tools 23.0.1]。 在构建项目之前,您需要接受许可协议,并使用Android Studio SDK管理器完成缺失组件的安装。 或者,要了解如何将许可协议从一个工作站转移到另一个工作站,请访问http://d.android.com/r/studio-ui/export-licenses.html

我检查了~/。android和android工具所在的/opt/android-sdk。两者都不包含名为license的文件夹。


当前回答

我通过打开Android SDK管理器并为它所抱怨的版本(API 24)安装SDK构建工具来解决这个问题。

我之前也使用命令行进行了更新,我怀疑Android SDK管理器有更完整的方法来解决依赖关系,包括许可证。

其他回答

你可以通过启动Android Studio来接受许可协议,然后进入:

帮助>检查更新…

当您安装更新时,它会要求您接受许可协议。接受许可协议并安装更新,您就万事俱备了。

如果你的React Native应用有这个问题,除了上面提到的步骤,确保你有本地。在你的应用程序的android目录(AppName/android)中指向你的“sdk”目录的properties文件:

sdk.dir=/PATH_TO_SDK/

如果你想使用IDE来接受许可,我发现打开Android Studio并创建一个新的基础项目来触发许可协议也很容易。一旦我创建了一个项目,下面的许可对话框就出现了,我需要同意:

通过Android Studio接受Android SDK许可

对于使用android Studio的Windows用户:

转到sdkmanager.bat文件的位置。默认情况下,它位于%LOCALAPPDATA%文件夹中的Android\sdk\tools\bin。 在标题栏中输入cmd打开一个终端窗口 类型 sdkmanager.bat——许可证 接受所有带有'y'的许可

更新macOS Sierra 10.12.6 - Android Studio for Mac 2.3.3

通常在下面找到sdkmanager文件:

/Users/YOUR_MAC_USER/Library/Android/sdk/tools/bin

./sdkmanager --licenses

警告:File /Users/ metro。Josevaler **强文本**io/.android/repositories.cfg无法加载。 6个SDK包许可证中的6个不接受。 检查未被接受的许可证(y/N)?Y

要验证问题是否已经解决,只需重复许可证问题中涉及的操作。