ZMake: Документация

(zmake - ZeppOS make)

Неофициальные сборщик циферблатов и приложений для ZeppOS, преимущественно Xiaomi Smart Band 7.

Возможности:

Установка

Загрузите архив для вашей ОС, распакуйте куда-либо.

Пользователи Windows\macOS: перетащите файл для обработки на программу zmake.

Пользователи Linux: запустите zmake через терминал, указав файл для обработки через параметры.

Также, в первую очередь необходимо настроить encode_mode в соответствии с вашим устройствам. Разные устройства на ZeppOS используют немного разные параметры кодирования графики, по умолчанию программа настроена для работы с Mi Band 7. Потому после установки программы загляниет в файл zmake.json и измените в нём параметр encode_mode в соответствии с таблицей ниже:

encode_mode Устройства
dialog Mi Band 7, Amazfit Band 7, Amazfit GTS 4 Mini
nxp GTS 3/4, GTR 3/4, GTR 3 Pro, T-Rex 2/Ultra, Falcon
Не поддерживается (MHS) GTR Mini

Доп. компоненты (опционально)

Некоторые функции требуют установки дополнительных компонентов, таких как ESBuild, UglifyHS, ZeppPreview и/или adb. Если вам требуется этот функционал, придётся их установить.

ESBuild, UglifyJS и ZeppPlayer требуют NodeJS и npm. Установите их, если не делали этого ранее.

ESBuild, UglifyJS: Установите из npm:

npm i -g esbuild uglify-js

Если установка не выполняется, выполните эту команду от имени Администратора (root-пользователя).

ZeppPreview: смотрите тут.

ADB: загрузите Android SDK Platform Tools, распакуйте куда-нибудь и добавьте в PATH.

Что программа может сделать?

Зависит от того, какой файл вы дадите

Вводный файл Zmake выполнит….
Приложение\циферблат в виде bin-файла Распакует его как архив и преобразует всю графику в PNG
Пустая папка Развернёт в ней шаблон циферблата\приложения
Уже распакованный циферблат\приложение (т. е. папка с app.json) Выполнит сборку циферблата, поместив готовый файл в папку dist
Любая другая папка Преобразует графику в PNG или обратно. Направление определяется автоматически, в случае конфликта программа спросит что нужно сделать

Что подразумевается под “сборкой циферблата”?

  1. Преобразует графику в формат ZeppOS;
  2. Если есть папка src, файлы внутри неё будут склеены в один файл index.js;
  3. (Если включено) все файлы кода будут обработаны через esbuild или uglifyjs;
  4. (Если включено) создаст превью циферблата через zepp_preview;
  5. (Если включено) поместит это превью в папку assets;
  6. Создаст готовый для установки bin файл;
  7. (Если включено) скопирует этот файл на телефон по ADB.

Обработка графики

ZeppOS поддерживает несколько различных форматов кодирования графики, которые можно выбирать при сборке. Формат по умолчанию указан в файле настроек, однако его можно переопределить для отдельного файла через его имя.

Имя файла… Формат Описание
.p.png TGA-P Изображение с ограничением на палитру. В рамках одного изображения вы сможете использовать любые цвета с прозрачностью, однако не более 256 различных RGBA записей. То есть белый и полу-прозрачный белый — разные цвета. Итоговый размер файла будет равен 64 + (кол_во_цветов * 4) + (ширина * высота) байт
.rlp.png TGA-RLP То же самое что и TGA-P, но с построчным сжатием. Не работает со стрелками, не работает свойство angle, да и может стать причиной тормозов
.rgb.png TGA-16 Честные RGB-изображения, но только 16-ти битные. Причём формата RGB565, то есть на синий цвет выделено на 1 бит больше. Без прозрачности
.rgba.png TGA-32 Частный RGBA, без нюансов. Но весит очень много

Если формат не указан используется стандартный (TGA-P).

Как собрать из исходного кода

Смотрите в README тут

Ссылки

Благодарности (источники информации):

thumb_up 4 thumb_down 1 chat Комментарии (0) favorite Донат