反应原生 |安装应用程序失败。请使用 SDK 管理器接受所有必要的 SDK 许可证

Posted

技术标签:

【中文标题】反应原生 |安装应用程序失败。请使用 SDK 管理器接受所有必要的 SDK 许可证【英文标题】:React Native | Failed to install the app. Please accept all necessary SDK licenses using SDK Manager 【发布时间】:2019-11-29 03:58:24 【问题描述】:

我试图开始运行我的 react native 项目。但是我在运行react-native run-android 命令时遇到了这个错误。我尝试了一堆我在网上找到的解决方案,但都没有奏效。


info Starting JS server...
info Installing the app...

> Configure project :app
Checking the license for package Android SDK Build-Tools 28.0.3 in /home/dipanshuchaubey/Android/Sdk/licenses
Warning: License for package Android SDK Build-Tools 28.0.3 not accepted.
Checking the license for package Android SDK Platform 28 in /home/dipanshuchaubey/Android/Sdk/licenses
Warning: License for package Android SDK Platform 28 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.
     build-tools;28.0.3 Android SDK Build-Tools 28.0.3
     platforms;android-28 Android SDK Platform 28
  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

  Using Android SDK: /home/dipanshuchaubey/Android/Sdk

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 3s

error Failed to install the app. Please accept all necessary SDK licenses using SDK Manager: "$ANDROID_HOME/tools/bin/sdkmanager --licenses". Run CLI with --verbose flag for more details.
Error: Command failed: ./gradlew app:installDebug -PreactNativeDevServerPort=8081

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.
     build-tools;28.0.3 Android SDK Build-Tools 28.0.3
     platforms;android-28 Android SDK Platform 28
  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

  Using Android SDK: /home/dipanshuchaubey/Android/Sdk

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

3 秒后构建失败

at checkExecSyncError (child_process.js:616:11)
at execFileSync (child_process.js:634:15)
at runOnAllDevices (/home/dipanshuchaubey/Documents/practice/native/node_modules/@react-native-community/cli-platform-android/build/commands/runAndroid/runOnAllDevices.js:75:39)
at buildAndRun (/home/dipanshuchaubey/Documents/practice/native/node_modules/@react-native-community/cli-platform-android/build/commands/runAndroid/index.js:137:41)
at /home/dipanshuchaubey/Documents/practice/native/node_modules/@react-native-community/cli-platform-android/build/commands/runAndroid/index.js:103:12
at processTicksAndRejections (internal/process/task_queues.js:89:5)
at async Command.handleAction (/home/dipanshuchaubey/Documents/practice/native/node_modules/react-native/node_modules/@react-native-community/cli/build/cliEntry.js:160:7)

如何解决这个问题。

提前谢谢你:)

【问题讨论】:

您是否尝试打开 Android Studio 并按要求接受许可? 您可以运行“$ANDROID_HOME/tools/bin/sdkmanager --licenses”并接受许可 【参考方案1】:

在您的 Android Studio 中转至 Configure>SDK Manager

选择 SDK 工具 选项卡并安装 Google Play 许可库

【讨论】:

这是唯一对我有帮助的东西;非常感谢 谢谢 Ali Rehman,对我来说已经解决了 блэ, красаучик!) 出乎意料...只需点击一下,您就发现了问题【参考方案2】:

对于 linux 用户::

    导航到 PATH :: cd ~/Library/Android/sdk/tools/bin/ 或您的 Android 的路径 > sdk > tools > bin 然后运行 ​​sdkmanager 如下: ./sdkmanager --licenses

并接受您尚未接受(但需要)的许可。

更多详情请见Android Studio documentation

【讨论】:

【参考方案3】:

如果你使用的是 ubuntu,请这样做:--

1> 导航到 Android 工作室:- ~/Library/Android/sdk/tools/bin

2> 运行这个命令:- ./sdkmanager --licenses

【讨论】:

嘿,运行此命令后,我的输出为bash: /tools/bin/sdkmanager: No such file or directory @ArchanaSharma 检查您的主目录。 ~/Android/Sdk/tools/bin【参考方案4】:

打开 Android Studio,然后点击齿轮图标(配置)。按 SDK 管理器选项。应显示三个选项卡,按 SDK 工具选项卡。之后,确保更新了 Android SDK Build-Tools、Android SDK Platform-Tools 和 Android SDK Tools。检查它们并按应用。

完成后,转到终端并导航至您的 RN 项目。运行react-native start 然后react-native run-android

【讨论】:

这是唯一对我有帮助的东西;非常感谢!【参考方案5】:

运行react-native run-android时遇到同样的问题

导航到路径 Android/sdk/tools/bin/ 并运行此命令并不能解决我的问题。

./sdkmanager --licenses

这个命令给出这个错误

sdk manager license Exception in thread "main" java.lang.NoClassDefFoundError:

我的解决方案:-

注意:我没有导出 java 路径或给出 java 路径,只是安装了 java 和 javac。我下载了包含所有 sdk 的 android studio 包。在单击 android studio 的工具选项卡时执行以下步骤之前,我还没有看到 SDK 管理器和 AVD 管理器选项卡

第 1 步:打开 Android 并转到 File/Setting 并单击 Android SDK

第 2 步:当我第一次打开时,只安装了 SDK API 级别 30,然后选择 API 级别 29 并选择应用。它下载 API 29。

第3步:进入中间的SDK Tools选项卡,选择Android SDK Command Line Tools并应用然后下载

第 4 步:重新启动系统。然后您将看到 SDK Manager 选项卡,您可以运行您的项目。

【讨论】:

【参考方案6】:

通过下载 sdk 28 而不是当前的 29 解决了这个问题 ly for android 10....

所以查看下载的是哪个版本的sdk,下载28个版本的sdk

【讨论】:

【参考方案7】:

在新环境中启动新的 react-native 项目时,我多次偶然发现这个问题。大多数情况下,运行 sdkmanager --licenses 不会这样做,因为它只会说您已经接受了所有许可证。

我的原生反应是这样说的:

Failed to install the following Android SDK packages as some licences have not been accepted.
     build-tools;28.0.3 Android SDK Build-Tools 28.0.3
     platforms;android-29 Android SDK Platform 29

但是,在 Android Studio > SDK Manager > SDK Tools 中,我注意到我没有安装 28.0.3 构建工具。检查“显示包详细信息”并在 SDK 构建工具下,确保您安装了正确的构建工具版本。

添加正确的版本后,我可以再次运行 sdkmanager --licenses,接受许可,并成功启动我的 RN 项目。

【讨论】:

以上是关于反应原生 |安装应用程序失败。请使用 SDK 管理器接受所有必要的 SDK 许可证的主要内容,如果未能解决你的问题,请参考以下文章

反应原生 iOS 应用程序失败,XPC 连接中断错误

反应原生 iOS 代码推送失败

无法安装应用程序反应原生android

反应原生深度链接与 Facebook SDK 冲突

如何在反应原生应用程序中安装 facebook sdk?

反应原生 Agora Sdk