NativeScript 在 Mac OS 上找不到 Android SDK

NativeScript can't find Android SDK on Mac OS

我已经安装了 NativeScript 并尝试执行 tns platform add android 但它不起作用。 ANDROID_HOME 路径正确,我已经安装了 SDK(API 22 和最新的)和工具 (25.0.2)。当我 运行 tns doctor 它说:

WARNING: The Android SDK is not installed or is not configured properly.
Cannot find a compatible Android SDK for compilation. To be able to build for Android, install Android SDK 22 or later.

You need to have the Android SDK Build-tools installed on your system. You can install any version in the following range: '>=25.0.2'.

You need to have Android SDK 22 or later and the latest Android Support Repository installed on your system.

当前版本的 NativeScript 2.5.2 要求某些工具位于 Android 主目录中,以便它可以检测到它们。最新版本的 Android SDK(2017 年 3 月)实际上删除了主要的 android 支持文件,并将几个二进制文件移动到其他目录中以进行清理。

不幸的是,这会导致 NativeScript 无法检测到您拥有 SDK。此版本的 SDK 在当前版本的 NativeScript 之后发布。

我能想到的解决这个问题的最简单方法是从命令行开始; sdkmanager然后选择下载旧的 25.2.3 工具。

手动执行此操作;您需要删除 sdk/tools 文件夹中的所有内容并下载:

https://dl.google.com/android/repository/tools_r25.2.3-windows.zip (Windows) https://dl.google.com/android/repository/tools_r25.2.3-macosx.zip (Macintosh) https://dl.google.com/android/repository/tools_r25.2.3-linux.zip (Linux)

然后将它们解压到 sdk/tools 目录中。

我使用 Android Studio 中的 SDK 管理器解决了这个问题,之前已经安装了它,安装所有要求,即

tools,platform-tools,android-25,build-tools-25.0.2,extra-android-m2repository,extra-google-m2repository,extra-android-support

安装后更改您的 ANDROID_HOME 环境变量以指向此 SDK 管理器。通常,它将位于 (/Users//Library/Android/sdk)

export ANDROID_HOME=/Users/<user_name>/Library/Android/sdk

通过 运行

确认 NativeScript 检测到您的更改
tns doctor