#android #nativescript #angular2-nativescript
#Android #nativescript #angular2-nativescript
Вопрос:
Я разрабатываю приложение Nativescript и хотел бы запустить его на моем физическом устройстве Android (Huawei P10 lite) через USB.
Я загрузил инструменты CLI Android SDK и извлек его в свой ~/Android/
каталог, и я установил для своей переменной окружения ANDROID_HOME
значение /home/<username>/Android
. Когда я запускаю tns run android
, я ожидаю, что приложение запустится на моем телефоне, однако оно распечатывается:
✔ Ваша переменная среды ANDROID_HOME установлена и указывает на правильный каталог. ✔ Ваш adb из Android SDK установлен правильно. ✔ Найден совместимый Android SDK для компиляции. ✔ Javac установлен и настроен должным образом. ✔ Java Development Kit (JDK) установлен и настроен должным образом. ✔ Локальные сборки для iOS могут выполняться только в системе macOS. Для сборки для iOS в другой операционной системе вы можете использовать облачную инфраструктуру NativeScript. ✖ ПРЕДУПРЕЖДЕНИЕ: Android SDK не установлен или настроен неправильно. Вы не сможете запускать свои приложения в собственном эмуляторе. Чтобы иметь возможность запускать приложения в собственном эмуляторе Android убедитесь, что вы установили последнюю версию Android SDK и его зависимости, как описано в http://developer.android.com/sdk/index.html#Requirements Ваша среда настроена неправильно, и вы не сможете выполнять локальные сборки.
Нет никаких указаний на то, что именно не настроено должным образом. Итак, я не знаю, что мне попробовать дальше?
Я работаю в Ubuntu 18.04.5. Мой ~/Android/
каталог выглядит следующим образом
-rwxr--r-- android drwxr-xr-x bin/ drwxr-xr-x build-tools/ -rwxr--r-- emulator -rwxr--r-- emulator-проверить -rw-r--r-- .knownPackages библиотека drwxr-xr-x/ лицензии drwxr-xr-x/ -rwxr--r-- mksdcard -rwxr--r-- monitor -rw-r--r-- NOTICE.txt платформы drwxr-xr-x/ платформа drwxr-xr-x-tools/ drwxr-xr-x proguard/ -rw-r--r-- source.properties поддержка drwxr-xr-x/
Я настроил символические ссылки для adb
-> /home/<username>/Android/platform-tools/adb
и emulator
-> /home/<username>/Android/platform-tools/emulator
и разместил ссылки внутри ~/.bin/
каталога. Этот каталог проверяется при поиске команд терминала, и я могу успешно запускать их из любого каталога таким образом.
Комментарии:
1. Сообщение показывает, что Android sdk не установлен. его легко установить с помощью Android Studio.
2. @Yong Он говорит, что он не установлен или настроен неправильно. Оказывается, он не был настроен должным образом. Хотя спасибо за предложение.
Ответ №1:
Немного покопавшись, я разобрался в проблеме. Загруженные инструменты командной строки Android были извлечены из моего ~/Android/
каталога верхнего уровня. Инструменты CLI на самом деле должны быть помещены в ~/Android/tools/
каталог. После того, как я внес это изменение, tns doctor
не обнаружил проблем, и я смог успешно запустить tns run android
.
Моя ~/Android/
структура каталогов теперь выглядит следующим образом:
build-tools / .knownPackages лицензии/ платформы/ платформа-инструменты/ Инструменты/
~/Android/tools/
Каталог теперь выглядит так:
android bin/ эмулятор эмулятор-проверка библиотека/ mksdcard монитор NOTICE.txt proguard / источник.свойства поддержка/
Часть настройки Android, которую я пропустил, гласит
Архив, который вы только что извлекли, был папкой tools, поэтому в этом случае он был бы по адресу: /usr/local / android / sdk /tools
Где /usr/local/android/sdk
находится ~/Android
в моем случае.