在 android 许可证上构建反应原生应用程序失败



我是第一次潜入反应原生世界,我正在尝试按照本文从头开始设置Windows开发环境。一切都很好,直到我尝试运行react-native run-android.我已经接受了所有许可证sdkmanager --licenses但仍然收到许可证错误:

> Configure project :app
Checking the license for package Android SDK Build-Tools 27.0.3 in C:Program FilesAndroidAndroid Studiolicenses
Warning: License for package Android SDK Build-Tools 27.0.3 not accepted.
Checking the license for package Android SDK Platform 27 in C:Program FilesAndroidAndroid Studiolicenses
Warning: License for package Android SDK Platform 27 not accepted.

FAILURE: Build failed with an exception.
* What went wrong:
A problem occurred configuring project ':app'.
> Failed to install the following Android SDK packages as some licences have not been accepted.
platforms;android-27 Android SDK Platform 27
build-tools;27.0.3 Android SDK Build-Tools 27.0.3
To build this project, accept the SDK license agreements and install the missing components using the Android Studio SDK Manager.
Alternatively, to transfer the license agreements from one workstation to another, see http://d.android.com/r/studio-ui/export-licenses.html

然后我发现了这个评论,其中用户建议以下命令:$ANDROID_HOME/tools/bin/sdkmanager "build-tools;26.0.1" "platforms;android-26".我sdkmanager.bat "platforms;android-27" "build-tools;27.0.3"执行它以匹配我的 env 中的版本,经理确实下载了新的许可证,但错误仍然存在。

我不知道如何接受上述许可证。有什么建议吗?

您可以使用此命令yes | sdkmanager --licenses

或者您可以将此命令用于 Macyes | sudo ~/Library/Android/sdk/tools/bin/sdkmanager --licenses

或对于窗口:cmd.exe ""/K"%LocalAppData%Androidsdktoolsbinsdkmanager.bat --licenses"

打开 Android Studio->SDK Manager,然后选择 Android 8.1 (Oreo( 按 OK 然后接受许可证并安装

对我来说:

  • ANDROID_HOME值是(对我来说(D:\Android,CLI 在末尾自动添加"平台工具"哦路径
  • 在许可证文件夹中,我已经删除了所有这些并运行了yes | sdkmanager --licenses
  • 我将许可证文件夹复制到平台工具目录中
  • 我再次检查JAVA_HOME和ANDROID_HOME的值是否正确。我必须重新启动计算机才能应用此更改

如果您在启动时遇到 REGEX 错误(如 Expo(,只需进入 node_modules\metro-config\src\defaults\blacklist.js并将共享黑名单的第一行更改为:

*/node_modules[/\]react[/\]dist[/\].*/,*

CLI 发出尖叫声,因为每个括号中缺少第一个 \。

在命令行中:

我使用Nox Player来运行项目。

  • 启动诺克斯播放器
  • 亚行连接 127.0.0.1:62001
  • 亚行反向 TCP:8081
  • TCP:8081
  • React-native run-android

这对我有用。

最新更新