Понятие «скрипт на Huawei» объединяет три разные задачи: автоматизацию рутины через приложения, выполнение Shell-команд в Linux-окружении и написание кода для приложений HarmonyOS. Выбор инструмента зависит от цели: бытовые сценарии решаются без рут-прав, системные изменения требуют разблокировки загрузчика, а разработка — установки DevEco Studio.
В EMUI и HarmonyOS существуют ограничения на фоновую активность, которые ломают логику автоматических задач. Чтобы сценарии работали стабильно, нужно добавить приложение-исполнитель в белый список оптимизации батареи и разрешить автозапуск в настройках батареи. Без этого любые действия по расписанию или триггерам будут блокироваться системой через 10–15 минут после выключения экрана.
Типы скриптов на устройствах Huawei: автоматизация, терминал, разработка
Первый уровень — визуальная автоматизация. Приложения вроде MacroDroid, Tasker или Automate позволяют создавать алгоритмы «если-то» без кода. Они управляют Wi-Fi, Bluetooth, звуком, уведомлениями и запуском приложений. Это самый безопасный способ, не требующий прав суперпользователя и не аннулирующий гарантию.
Второй уровень — Shell-скрипты в Termux. Это полноценная Linux-среда с пакетным менеджером pkg, поддержкой Python, Node.js, Git и Bash. Здесь можно писать бэкап-скрипты, парсеры, ботов для Telegram или серверы синхронизации. Доступ к внутреннему хранилищу дается командой termux-setup-storage, а к системным разделам — только с Root.
Третий уровень — разработка под HarmonyOS. Скрипты здесь — это код на ArkTS (TypeScript-подобный язык) или JS для FA-моделей. Они компилируются в .hap/.app пакеты и устанавливаются как полноценные приложения. Это уже не «скрипты» в бытовом смысле, а полноценная разработка через DevEco Studio.
Автоматизация бытовых задач через MacroDroid и Tasker
MacroDroid проще для входа: интерфейс на русском, готовые шаблоны макросов и логика «Триггер — Действие — Ограничение». Пример: «При подключении к Wi-Fi «Home» — включить VPN, отключить мобильные данные, запустить музыку». В Tasker кривая обучения круче, но гибкость выше: переменные, массивы, циклы, сцены (кастомный UI) и плагины AutoApps.
Критический момент для обоих — настройка энергопотребления. Зайдите в Настройки → Батарея → Запуск приложений, найдите автоматор, отключите «Управлять автоматически» и включите «Автозапуск», «Вторичный запуск», «Запуск в фоне». Без этого система убьет процесс, и триггеры перестанут срабатывать.
☑️ Обязательные настройки для стабильной работы автоматизатора
⚠️ Внимание: На EMUI 12+ и HarmonyOS 3+ агрессивное управление памятью может убивать даже разрешенные приложения после 3 дней без ручного запуска. Используйте виджет на рабочем столе для периодического «пробуждения» сервиса или настройте триггер «Загрузка устройства» для перезапуска мониторинга.
Работа с Termux: Linux-окружение и Shell-скрипты
Установите Termux только из F-Droid или GitHub Releases. Версия из Google Play устарела и не получает обновлений бинарников. После установки выполните pkg update && pkg upgrade и дайте доступ к памяти: termux-setup-storage. Теперь в ~/storage/shared доступны папки Download, DCIM и др.
Создайте первый скрипт: nano ~/backup.sh. Вставьте код архивации фото через tar или синхронизации с rclone. Сделайте исполняемым: chmod +x ~/backup.sh. Запуск: ~/backup.sh. Для автозапуска по расписанию установите pkg install termux:api termux-tasker и используйте crontab -e (требует плагин Termux:Tasker или Termux:Boot для запуска демона cron при включении).
Пример скрипта бэкапа фото на rclone
#!/data/data/com.termux/files/usr/bin/bash
rclone copy ~/storage/shared/DCIM/Camera remote:Huawei_Backup/Camera --progress --transfers 4
termux-notification -t "Бэкап завершен" -c "Фото загружены в облако"
⚠️ Внимание: Termux не имеет доступа к системным разделам (/system, /vendor, /data/app) без Root-прав. Попытки изменить build.prop, удалить системные приложения или править hosts-файл через Termux без su закончатся ошибкой «Permission denied». Для системных правок нужен Magisk/KernelSU и бинарник su.
Используйте Termux:Widget для запуска скриптов с рабочего стола одним тапом. Положите .sh файлы в ~/.shortcuts, добавьте виджет Termux:Widget на экран — получите кнопки запуска без открытия терминала.
Дебаг и системные скрипты через ADB и HiSuite
ADB (Android Debug Bridge) позволяет выполнять команды на телефоне с компьютера. Включите «Отладку по USB» в Настройки → Для разработчиков (нажмите 7 раз на «Номер сборки»). Подключите кабель, подтвердите отпечаток RSA на экране телефона. Проверка: adb devices должен показать серийный номер.
Полезные однострочники: удаление бloatware без рута adb shell pm uninstall -k --user 0 com.huawei.android.totemweather, смена DPI adb shell wm density 360, запись экрана adb shell screenrecord /sdcard/video.mp4. Пакетные файлы .bat (Windows) или .sh (Linux/macOS) позволяют автоматизировать настройку новых устройств: отключение анимаций, установка лаунчера, настройка разрешений.
HiSuite (официальная утилита Huawei) работает в режиме «Резервное копирование» и «Восстановление». Она не запускает произвольные скрипты, но позволяет автоматизировать миграцию данных через командную строку Windows: HiSuite.exe /backup /path:D:\Backup /type:contacts,messages,calllog. Актуально для сервисных центров и массового развертывания.
ADB-скрипты — единственный способ системной настройки без Root на заблокированном загрузчике. Все изменения сбрасываются после.factory reset, но не требуют разблокировки OEM.
Разработка под HarmonyOS: ArkTS и Stage Model
С HarmonyOS NEXT (API 12+) единственной моделью является Stage Model на языке ArkTS. Установите DevEco Studio (официальная IDE на базе IntelliJ), создайте проект «Empty Ability». Точка входа — файл EntryAbility.ets, UI описывается в Index.ets через декларативный синтаксис @Entry @Component struct Index { build() { ... } }.
Скрипты автоматизации внутри приложения пишутся в .ets файлах. Для фоновых задач используйте WorkScheduler или BackgroundTasksKit. Доступ к файловой системе — через fileio и @ohos.file.fs. Сборка: Build → Build Hap(s)/App(s) → Build Hap(s). Установка на устройство: hdc install entry-default-signed.hap (hdc — аналог adb для HarmonyOS).
Для старых версий (API 9-11) поддерживается FA Model (JS/TS + .hml/.css/.js), но Huawei прекращает поддержку новых приложений на FA. Новые проекты пишите только на ArkTS Stage Model.
Безопасность и риски запуска сторонних скриптов
Никогда не запускайте скрипты из непроверенных источников (Telegram-чаты, форумы, YouTube-описания) с правами Root или через ADB. Злоумышленники маскируют вирусы под «оптимизаторы батареи», «разблокировку бутлодера» или «взлом камеры». Проверяйте код: если видите curl ... | sh, wget -O- ... | bash, вызовы su -c с непонятными аргументами — не запускайте.
Для Termux используйте только официальные репозитории pkg install или проверенные GitHub-репозитории со звездами и Issues. В автоматизаторах не давайте права «Устройство администрирования» (Device Admin) и «Доступ к специальным возможностям» (Accessibility) сомнительным макросам — это дает контроль над экраном, вводом текста и нажатиями.
Создайте отдельный профиль пользователя (Настройки → Пользователи → Добавить пользователя) для тестов скриптов с Root/ADB. Основной профиль останется чистым, а тестовый можно удалить за минуту вместе со всеми последствиями.
Типичные ошибки и их устранение
Ошибка «Permission denied» в Termux — нет доступа к пути. Решение: termux-setup-storage для внутренней памяти, или Root + su для системных путей. Автоматизатор не срабатывает по триггеру «Wi-Fi подключен» — на Android 10+ нужен доступ к геолокации (Location) для сканирования сетей. Включите в настройках приложения: «Разрешения → Местоположение → Всегда».
ADB «device unauthorized» — не подтвержден RSA-отпечаток на экране телефона. Отключите/включите отладку по USB, переподключите кабель, посмотрите на экран телефона. DevEco Studio не видит устройство — установите драйверы Huawei USB Driver из SDK Manager в DevEco, проверьте hdc list targets.
Скрипт крона в Termux не запускается — демон crond не работает в фоне без Termux:Boot. Установите плагин, включите автозапуск Termux:Boot в настройках батареи, добавьте crond в автозапуск Termux:Boot (файл ~/.termux/boot/start_crond с содержимым crond).
FAQ: Частые вопросы про скрипты на Huawei
Можно ли запускать Python-скрипты на Huawei без Root?
Да. Установите Termux (F-Droid), выполните pkg install python. Запускайте файлы python script.py. Библиотеки ставятся через pip install. Работает всё, что не требует низкоуровневого доступа к железу или системным разделам.
Как сделать автозапуск скрипта при включении телефона?
В Termux: установите termux:boot, создайте файл ~/.termux/boot/myscript с командой запуска. В MacroDroid/Tasker: триггер «Загрузка устройства» → действие «Запуск скрипта/приложения». Для ADB: добавьте команду в планировщик Windows/лаунчер на ПК.
Нужен ли разблокированный загрузчик для Termux?
Нет. Termux работает в песочнице приложения без разблокировки OEM. Root-права (Magisk/KernelSU) требуют разблокированного загрузчика, но для 90% задач (Python, бэкап, серверы, боты) они не нужны.
Чем MacroDroid лучше Tasker для новичка?
Русский интерфейс, понятная логика блоков, встроенные шаблоны, бесплатная версия с полным функционалом (до 5 макросов). Tasker мощнее (переменные, сцены, плагины), но стоит денег и требует недели обучения.
Где найти готовые скрипты для Huawei?
Официальный репозиторий Termux-packages (GitHub), раздел «Macros» в приложении MacroDroid, форум XDA Developers (разделы Huawei), GitHub Awesome-Termux. Проверяйте дату обновления — скрипты старше 2 лет могут не работать на новых EMUI/HarmonyOS.