16.04.2019

Разработчикам плагинов для приложения «Энергосберегающие Аналоговые Часы Живые Обои»

Данное руководство предназначено как для программистов, дизайнеров, так и для людей, желающих выпустить свои приложения, и иметь возможность зарабатывать на этом. Изучив его, вы сможете создавать новые циферблаты, даже если у вас нет навыков программирования (понадобятся некоторые навыки по работе с Adobe Photoshop). Я предоставляю вам такую уникальную возможность – создать свои уникальные часы в виде приложения-дополнения.

Для работы вам понадобятся:

 

Создание текстуры циферблата

Начнем с создания циферблата. Скачайте пример циферблата, сделанного в Photoshop (ссылка выше). Рекомендую создавать одну текстуру 1024×1024 пикселей, но могут быть и другие разрешения, кратные степени 2 (например, 256×256, 512×512, 2048×2048). Часы создаются на прозрачном фоне, после чего сохраняется файл формата png, из которого можно выделить файл маски прозрачности, этот процесс описан далее. Для удобства в проекте нарисованы линии для позиционирования стрелок и циферблата.

Пример проекта циферблата

 

Дополнительная подготовка циферблата

Для того, чтобы сократить размер, занимаемый циферблатом, вместо текстуры с прозрачностью формата png я использую 2 файла формата jpg – один – сама текстура, второй – маска прозрачности. Для того, чтобы из png сделать 2 jpg, вам нужно открыть png в Photoshop, перейти из вкладки «Слои» в соседнюю вкладку «Каналы», нажать на решетчатую кнопку и в выпадающем меню выбрать «Разделить каналы».

Последний открывшийся файл, содержащий в имени слово «Прозрачность», сохраняем как jpg с тем же именем, что и png, с добавлением «_mask». Оставшиеся файлы можно закрыть без сохранения.

Для того, чтобы края элементов в основном jpg файле не были другого цвета и не выделялись, я обычно добавляю ему подходящий по цвету краев фон, либо: не закрываю оставшиеся после разделения каналов файлы, создаю новый файл под размеры циферблата, открываю вкладку «Каналы», выделяю последовательно каждый и вставляю туда скопированные изображения из соответствующих файлов каналов. Получившийся файл можно сохранить в формате jpg.

Сохраняем стрелки в виде png файла.

Пример сохраненного циферблата

 

Создание готового приложения

Циферблат готов, достаточно собрать из него приложение. Для этого необходимо распаковать скачанный ранее демо-проект плагина, зайти в папку app\src и дублировать analogWhite.

Затем переименовываем на своё имя латинскими буквами без пробелов, например, newAnalogClocksPlugin, и заходим в неё и далее в assets\textures\packs и копируем сюда нашу подготовленную папку с циферблатом.

Открываем ранее скачанную и установленную Android Studio, заходим в File > Open… и выбираем папку проекта.

Открываем файл проекта build.gradle (Module:app), копируем analogWhite {…} с содержимым скобок, вставляем после него. Заменяем analogWhite на newAnalogClocksPlugin, совпадающий с названием нашей папки – это вариант проекта плагина.

Оставляем часть applicationId  com.maxlab.bsclocks.plugins.analog. и добавляем свою, рекомендую вид developer_name.plugin_name, чтобы ваш id отличался от других, как на рисунке выше.

Заполняем данные своей информацией для цифровой подписи. Если у вас нет хранилища ключей, то создайте его, и создайте ключ для цифровой подписи этого циферблата. Подробнее про это можно прочитать на официальном англоязычном сайте https://developer.android.com/studio/publish/app-signing.html либо на сайте http://developer.alexanderklimov.ru/android/publish.php . Для удобства начального запуска и отладки добавьте строку android.productFlavors. newAnalogClocksPlugin.signingConfig signingConfigs.debug  (для отладки, используйте свой config перед выпуском) перед lintOptions.

Дублируем строчку для подписи нового плагина и заменяем analogWhite на newAnalogClocksPlugin:

Выбираем среди BuildVariants  newAnalogClocksPluginDebug или newAnalogClocksPluginRelease, как показано на рисунке. Теперь открываем файлы strings.xml для различных языков (выделены на рисунке). Вы можете добавить свои файлы локализаций.

Необходимо изменить параметры – имя приложения и собственно имя циферблата внутри главного приложения. Кстати, циферблатов может быть несколько, для каждого необходимо указать своё имя и параметры (см. ниже).

Заменяем white_plugin (содержимое кавычек) на ваше имя циферблата, совпадающее с названием папки циферблата и прописываем адекватное название, которое будет видимо при выборе циферблатов в главном приложении часов. В следующих строках нужно заменить только часть white_plugin и оставить концовку, _date_pos или _arrow_width. Значение _date_pos определяет радиус окружности, в котором будет находиться дата (если в основном приложении она активирована), относительно радиуса всего циферблата, т.е. значение «1» будет равно радиусу циферблата, «0.5» — половине радиуса циферблата и т.д. Чтобы дата не налезала на цифры внутри циферблата, рекомендую ставить значение до 0.5 (экспериментировать с этим числом, если у вас полная версия основного приложения). Значение параметра, содержащего _arrow_width, равно ширине стрелки в пикселах (140) при размере циферблата 1024×1024. В проекте примера для удобства уже нанесены соответствующие этому значению вертикальные вспомогательные осевые линии. Если вы нарисуете стрелки толще, измените это значение на ваше.

То же проделываем с локализованными файлами strings.xml (только для переводимых значений).

Что осталось – так это значок для приложения, который вам нужно подготовить. Для лёгкого создания значка из изображения нужно зайти в res\mipmap, нажать правой кнопкой мыши и в выпадающем меню выбрать New > Image Asset.

Далее выберите «Image» и путь к изображению, Shape – «None».

Осталось указать папку с ресурсами плагина. Выбираем newAnalogClocksPlugin и Finish.

Проект готов. Обязательно проверяем его на реальном устройстве или эмуляторе. На устройстве должно быть установлено приложение Энергосберегающих Аналоговых Часов. Подключаем устройство к компьютеру через USB.

На компьютере должны быть установлены необходимые драйверы, а на устройстве включён режим отладки. Включить отладку по USB в Android можно, зайдя на устройстве в Настройки > Приложения > Разработка > Отладка по USB (установить флаг). В Android 4.2 и выше меню разработчика включается так: зайти Настройки > О телефоне и 7 раз тапнуть по пункту Номер сборки.

Нажимаем на зеленую треугольную кнопку «Run», выбираем устройство либо создаём новое и нажимаем OK.

Должно запуститься окно плагина.

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

Если всё выглядит так, как вы хотели, то осталось зайти в меню Build > Generate signed APK и разместить приложение в Google Play!

 

По всем вопросам пишите мне на maxlab.code@gmail.com с темой сообщения «Разработка плагина»

elit. tempus sed nec dolor venenatis, justo adipiscing