Why Android? 🌚 – Telegram
Why Android? 🌚
419 subscribers
217 photos
60 videos
10 files
250 links
"Why Android?" is an informal community to share with everyone personal development experience in different areas, latest news, or just talk about everything :)
Download Telegram
Официального анонса еще не было, но вы узнаете первыми 🌚

Мы добавили поддержку Wasm в Tiamat и немного психанули. Собирать каждому локально и запускать семпл - уже не модно😄

Встречайте семпл на Github Pages:
https://composegears.github.io/Tiamat/

P.s: Safari и мобилки пока не поддерживают Wasm
👍2
Media is too big
VIEW IN TELEGRAM
Решил в пятницу тизернуть демку плагина для конвертации в ImageVector 🌚
предыстория 👆

❗️Пока что на этапе тестирования

Из интересного:
- написан на Compose Multiplatform, навигация на Tiamat
- поддерживает конвертацию SVG и XML
- написанный с нуля генератор с красивым форматированием и со скипом дефолтных параметров

Буду рад фидбеку ❤️

Сорцы и артефакт: https://github.com/ComposeGears/Valkyrie
8🔥5👍1
Опять что-то в пятницу показываю 🌚

В Valkyrie теперь будет 2 режима:
📍 Simple - просто конвертация в ImageVector с возможностью скопировать в буфер обмена

📍 IconPack
Тут уже интереснее, не видел такого еще нигде в виде плагина

Режим позволяет сделать свой пак иконок и экспортировать их батчем в нужный вам модуль по папочкам (и мамочкам 🌝) со всеми нужными импортами.


Что думаете о демках?💀
👍5🔥41
официально самая багованая версия студии 🌚
😁18
А плагин одобрили и он доступен для установки 🌚

Marketplace - Github
21🔥6
This media is not supported in your browser
VIEW IN TELEGRAM
Из интересного за последнее время🌚

Valkyrie получил 100+ ⭐️ на Github

А еще ко мне пришел один из разработчиков Lawnchair лаунчера и заводит issue: плагин падает по памяти, когда я конвертирую 5400+ иконок за раз (к такому плагин конечно же не готовили 😄)

на видео демка как это работает сейчас🌚
👍6🔥3
если баг репорты - то только такие 🌚

Issue
😁10
Анонос EAP релиза нового декларативного Gradle:
- новый формат файлов .gradle.dcl c синтаксисом Kotlin
- ускорили работу автокомплита в IDE
- в планах поддержка AGP и Kotlin Multiplatform
- пример миграции Now In Android приложения

Попробовать у себя можно уже сейчас 🌚

Blog post
💩4😁2👀1
This media is not supported in your browser
VIEW IN TELEGRAM
Работаю над киллер фичей: превью ImageVector прямо в студии без @Preview аннотаций и компиляции 🌚

вот небольшая демка прототипа
🔥22😱1
This media is not supported in your browser
VIEW IN TELEGRAM
Я долго думал как можно в Valkyrie сделать шаринг конфигурации иконок между командой.

Кейс простой: первый разработчик добавляет пак иконок, а второму, спустя время, надо в него добавить несколько новых.

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

И я подумал, зачем изобретать что-то, если у нас уже есть готовый Kotlin объект и из него можно легко выгрузить нужные данные через PSI Tree.

Демка фичи выше, а тут релиз 0.6.0 с кучей улучшений и новым README 🌚
6🔥4
This media is not supported in your browser
VIEW IN TELEGRAM
Выкатил первый снапшот фичи для предпросмотра ImageVector без @Preview аннотации прямо в студии:

- Сделал превью для backing property и lazy property форматов 🌚
- Превью работает даже с material иконками от Google ❤️

все сделано на базе парсинга PSI дерева
в целом это большая подготовка к новым фичам по оптимизации иконок, переноса между паками и многое другое 🌚

p.s. чтобы не спамить канал, буду кидать новые демки в комментарии
🔥151👍1
Релиз Valkyrie 0.7.0 с фичей по предпросмотру ImageVector в студии (по аналогии с SVG) 🌚

• Превью иконок в Backing и Lazy проперти стилях (#136)
• Поддержка превью Google Material иконок (хоть они и deprecated)
• Базовые экшены для изменения подложки иконки и зума (#151)
• Редизайн настроек (#157)

и поддержка K2 мода (начиная с IntelliJ IDEA 2024.2.1) 🙂
🔥13
Круто-круто, плагин используют в VK ❤️🌚

https://habr.com/ru/companies/vk/articles/840862/
9🔥3👍1
This media is not supported in your browser
VIEW IN TELEGRAM
а че так можно было? 🌚
🔥6
This media is not supported in your browser
VIEW IN TELEGRAM
Листал issues связанные с IntelliJ IDEA и попалась фича, о которой я не знал 😁

Если у вас MacBook, то вместо хоткея cmd+b можно использовать тачпад 🌚
Сильнее нажав, провалитесь либо в сорцы, либо в использование метода 🤫
👀12👍5🌚3
This media is not supported in your browser
VIEW IN TELEGRAM
Готовлю релиз новой версии Valkyrie с обновленным Simple Mode 🤓

из нового:
- поддержка вставки файла или текста иконки с буфера обмена
- возможность заренеймить иконку
- превью текущей иконки
🔥211
Раз у Valkyrie 400 ⭐️ звездочек, то держите небольшой анонс - CLI тула для конвертации 🌚🤓

пока на уровне прототипа 🌚
🔥15
Когда у нас на кмп проекте выкатили фичу с форматированием даты и времени на все таргеты через expect/actual - я чуть не умер ☠️🫨

Оказывается многие не в курсе, что в kotlinx-datetime появилось мультиплатформенное форматирование.

API довольно простое 🌚
Допустим мы хотим конвертировать UNIX в строку формата:
10 March, 2024


Тогда весь код сведется к 2 шагам:

1. Создание форматтера через dsl в необходимом стиле:

private val formatter = LocalDateTime.Format {
dayOfMonth(padding = Padding.NONE)
char(' ')
monthName(MonthNames.ENGLISH_FULL)
char(',')
char(' ')
year()
}


2. Конвертация с использованием format() функции:

fun format(timestamp: Long): String {
return Instant.fromEpochMilliseconds(timestamp)
.toLocalDateTime()
.format(formatter)
}


P.S: Форматирование без учета локали!
🔥4
This media is not supported in your browser
VIEW IN TELEGRAM
Демка работы CLI тулы для генерации IconPack 🌚
5🔥4
This media is not supported in your browser
VIEW IN TELEGRAM
А это уже конвертация 6000 иконок через cli 🌚

логи для дебага через -v, чтобы видео было интереснее 😁
🔥10👍2