Dam*_*man 2 macos android android-sdk-tools nativescript angular2-nativescript
我已经安装了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.
Run Code Online (Sandbox Code Playgroud)
当前版本的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
Run Code Online (Sandbox Code Playgroud)
安装后,将ANDROID_HOME环境变量更改为指向此SDK管理器.通常,它将在(/ Users // Library/Android/sdk)
export ANDROID_HOME=/Users/<user_name>/Library/Android/sdk
Run Code Online (Sandbox Code Playgroud)
确认NativeScript通过运行检测到您的更改
tns doctor
Run Code Online (Sandbox Code Playgroud)