如何修复android studio 2.3 NDK bug?

Ryd*_*ker 46 android android-ndk

我认为这是一个错误,因为在新的更新之前我没有任何问题.所以我不能使用gradle控制台调试我的应用程序,因为我有这个警告 -

"按需配置是一个孵化功能.NDK缺少"平台"目录.如果您使用NDK,请验证ndk.dir是否设置为有效的NDK目录.它当前设置为C:\ Users\Emily Thacker\AppData\Local\Android\Sdk \ndk-bundle.如果您没有使用NDK,请取消设置ANDROID_NDK_HOME或local.properties中的NDK变量以删除此警告."

我很确定我没有使用NDK,我不知道如何解决这个问题,这是我的local.properties

## This file is automatically generated by Android Studio.
# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
#
# This file should *NOT* be checked into Version Control Systems,
# as it contains information specific to your local configuration.
#
# Location of the SDK. This is only used by Gradle.
# For customization when using a Version Control System, please read the
# header note.
sdk.dir=C\:\\Users\\Emily Thacker\\AppData\\Local\\Android\\Sdk
Run Code Online (Sandbox Code Playgroud)

另外,我在目录中看不到ANDROID_NDK_HOME文件.

Car*_*arl 26

我能够防止这个烦人的消息; 这对我有用.

背景:

  1. 我根本没有使用NDK,也从未安装过NDK.

  2. 但是,正如xsveda在另一个答案中所提到的,这是一个Gradle错误,在此处记录:

    https://code.google.com/p/android/issues/detail?id=228424

    所以即使是"NDK无辜者"也可能成为它的受害者.

  3. 问题是Gradle正在计算NDK文件夹的位置,只需将字符串"/ ndk-bundle"添加到SDK文件夹位置,即使您从未安装过NDK也是如此.

  4. 在确定存在于特定位置的NDK文件夹的这种错误期望之后,每次构建时,Gradle都会向您发出警告,指出您"丢失"了该文件夹.这只是一个警告,并不会阻止您的构建完成,但它很烦人.

我如何停止令人生气的消息:

由于磁盘空间很便宜,我的时间对我来说很宝贵,我通过安装NDK来惹恼这个错误,即使我不打算使用它.

为此,您可以访问:

文件 - >项目结构 - > SDK位置

并查看Android NDK位置字段.如果尚未安装NDK,则此字段将为空.

在这种情况下,该字段下方将是用于安装NDK的链接.单击该链接并进行安装.这需要几分钟.

安装完成并关闭安装进度对话框后,NDK的位置将自动写入Android NDK位置字段.这将是这样的:

C:\ dev的\ astudiosdk\NDK束

单击"确定"按钮并再次构建.错误消失了.

请注意,您可以只在此字段中键入预期的文件夹; 我没试过.但我不知道这是否会引起其他问题,特别是如果你最终决定实际使用NDK.


小智 12

只需安装Android NDK即可.

这修复了我的错误和警告!

https://i.stack.imgur.com/Lsu8E.png

  1. 去T.ools -> Android -> SDK Manager
  2. 点击 SDK Tools
  3. 校验 NDK
  4. 申请并退出.

  • 您不必安装不需要的东西。 (4认同)

Gen*_* Bo 10

听起来像从Android Studio IDE更新SDK可能有所帮助

步骤是:

  1. Tools (top-menu item) > Android > SDK Manager
  2. 单击SDK工具选项卡
  3. 向下滚动到NDK复选框更新选项

屏幕截图:如何更新Android NDK?

  • 这并不能解决问题,只是下载 NDK,您可能没有任何充分的理由下载它。 (2认同)

Ole*_*ndr 8

修复了此问题,方法是ndk-bundle从SDK根文件夹中删除一个空文件夹(不知道为什么以及何时出现):

android SDK文件夹中的ndk-bundle文件夹

以下解释为什么它可以帮助解决Android bug跟踪器上的问题:

对于任何人仍然在插件3.0.0-alpha1或更高版本上遇到此问题.请提交新的错误并尝试回答#33中的所有问题.我们需要更多信息来调试问题,并向已关闭的bug添加注释是一种容易丢失的方法.

为了给出一些背景知识,插件会检查NDK目录是否有效.最有可能的是,您没有使用NDK.我们自动假设它在{sdk}/ndk-bundle中.如果{sdk}/ndk-bundle不存在,将被忽略.如果您看到'NDK缺少"平台"目录.',则表示存在{sdk}/ndk-bundle,但不是{sdk}/ndk-bundle/platforms目录.这意味着由于某种原因你有一个损坏的NDK.如果您不使用它,可以安全删除{sdk}/ndk-bundle.

  • 抱歉,但我从未有过,并且既没有ANDROID_NDK_HOME也没有ndk-bundle。该解决方案不起作用。 (3认同)
  • 也为我工作。这是最简单的解决方案,如果您的SDK目录中有空的“ ndk-bundle”文件夹,则使用它最有意义。 (2认同)

Har*_*wal 7

你可以尝试一下:

android studio中已经有一个复选框.

Android Studio - >首选项 - >编译器 - > Gradle - >命令行选项 - >按需配置

取消选中它,然后再次同步gradle

在此输入图像描述

  • 已经为我检查了按需配置. (4认同)
  • @RyderThacker取消选中它,然后再次同步gradle (2认同)

小智 6

我遇到了这个问题:

NDK is missing a "platforms" directory.
If you are using NDK, verify the ndk.dir is set to a valid NDK directory.  It is currently set to /Users/<user_name>/Library/Android/sdk/ndk-bundle.
Run Code Online (Sandbox Code Playgroud)

我通过platformsndk-bundle文件夹中创建一个空文件夹来解决它。喜欢:path/to/your/Android/sdk/ndk-bundle/platforms

如果您没有 ndk-bundle 文件夹。按照以下步骤安装 NDK安装 NDK 截图):

  • 打开 Preferences
  • Android SDK从左侧菜单转到。
  • 选择SDK Tools
  • 检查 NDK。
  • 申请并确定。

摇篮版本:6.3

Android Studio 版本:Android Studio 4.1.1 Build #AI-201.8743.12.41.6953283,2020年11月5日构建

PS:我从以下位置手动安装了 gradle:https ://docs.gradle.org/current/userguide/installation.html