Установка
Загрузите архив для вашей ОС, распакуйте куда-либо.
Пользователи 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 или обратно. Направление определяется автоматически, в случае конфликта программа спросит что нужно сделать |
Что подразумевается под “сборкой циферблата”?
- Преобразует графику в формат ZeppOS;
- Если есть папка
src, файлы внутри неё будут склеены в один файл index.js;
- (Если включено) все файлы кода будут обработаны через
esbuild или uglifyjs;
- (Если включено) создаст превью циферблата через
zepp_preview;
- (Если включено) поместит это превью в папку
assets;
- Создаст готовый для установки
bin файл;
- (Если включено) скопирует этот файл на телефон по 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).
Как собрать из исходного кода
Ссылки
Благодарности (источники информации):