Google Android Skills
Тут Google завёл репозиторий со скиллами для LLM, которые напрямую связаны с Android-разработкой. Пока он небольшой, но со временем материалов наверняка станет больше. В списке уже есть:
🟢 миграция на AGP 9;
🟢 миграция на Compose с xml;
🟢 переход на Navigation Library 3;
🟢 анализатор R8;
Что ж, тенденция ещё раз подтверждается, так что обогащаем наших агентов новыми знаниями.
Тут Google завёл репозиторий со скиллами для LLM, которые напрямую связаны с Android-разработкой. Пока он небольшой, но со временем материалов наверняка станет больше. В списке уже есть:
Что ж, тенденция ещё раз подтверждается, так что обогащаем наших агентов новыми знаниями.
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - android/skills
Contribute to android/skills development by creating an account on GitHub.
🔥18👍2
yt-dlp
Пост не про Android, но не могу не поделиться.
На днях папа попросил скачать ему видео с YouTube, чтобы посмотреть его позже на телевизоре. А желательно — не просто один ролик, а весь канал целиком, чтобы далеко не ходить.
Для скачивания одного видео решений масса. А вот для скачать весь канал уже задача со звёздочкой. К счастью, мне попалась ультимативная утилита для сохранения любых видео и аудио— yt-dlp. Даже не представляю, какой гений её создал.
Она хоть и консольная, но невероятно мощная и кастомизируемая. В моём случае я смог:
🟢 выбрать не самое высокое качество видео, чтобы уменьшить размер и улучить стабильность на бюджетном телезизоре;
🟢 «прикинуться» браузером, чтобы скачивать без лишних сложностей: YouTube сейчас блокирует ботов, поэтому утилита сама предложила использовать эту опцию;
🟢 выбрать только одну звуковую дорожку;
🟢 загрузить сначала плейлисты, а потом и остальные видео. Без повторов.
В общем, если перед вами когда-нибудь встанет подобная задача — вы знаете, в какую сторону копать. Лучшего решения всё равно не найти.
Пост не про Android, но не могу не поделиться.
На днях папа попросил скачать ему видео с YouTube, чтобы посмотреть его позже на телевизоре. А желательно — не просто один ролик, а весь канал целиком, чтобы далеко не ходить.
Для скачивания одного видео решений масса. А вот для скачать весь канал уже задача со звёздочкой. К счастью, мне попалась ультимативная утилита для сохранения любых видео и аудио— yt-dlp. Даже не представляю, какой гений её создал.
Она хоть и консольная, но невероятно мощная и кастомизируемая. В моём случае я смог:
В общем, если перед вами когда-нибудь встанет подобная задача — вы знаете, в какую сторону копать. Лучшего решения всё равно не найти.
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - yt-dlp/yt-dlp: A feature-rich command-line audio/video downloader
A feature-rich command-line audio/video downloader - yt-dlp/yt-dlp
👍41❤8👌5🔥2
Koin Migration
Ещё один MCP в копилку. Разработчики из Koin написали тулзу, которая поможет мигрировать текущий проект практически с любого DI-фреймворка на Koin.
Полагаю, что современные языковые модели в какой-то степени справятся с этой задачей и самостоятельно, но с данным решением переезд станет гораздо комфортнее.
Люблю Koin, считаю его одним из самых удачных dependency-библиотек.
Ещё один MCP в копилку. Разработчики из Koin написали тулзу, которая поможет мигрировать текущий проект практически с любого DI-фреймворка на Koin.
Полагаю, что современные языковые модели в какой-то степени справятся с этой задачей и самостоятельно, но с данным решением переезд станет гораздо комфортнее.
Люблю Koin, считаю его одним из самых удачных dependency-библиотек.
GitHub
GitHub - InsertKoinIO/koin-migration: Koin + Koin Compiler Plugin migration — reference docs and AI skill that automate the move…
Koin + Koin Compiler Plugin migration — reference docs and AI skill that automate the move from Hilt/Dagger/Toothpick/Kodein/manual DI to the Koin Compiler Plugin. - InsertKoinIO/koin-migration
👍19🔥7🙈1
Заметил интересный тренд в связи с появлением AI.
Люди массово публикуют скриншоты своих подписок на Claude Code и Codex, показывая исчерпанные лимиты в максимальных тарифах. Ну и полагают, что раз токены закончились, то и работа была продуктивной.
Однако чаще всего это говорит лишь о том, что ты потратил все токены. Эффективность этих трат — совсем другой вопрос.
Люди массово публикуют скриншоты своих подписок на Claude Code и Codex, показывая исчерпанные лимиты в максимальных тарифах. Ну и полагают, что раз токены закончились, то и работа была продуктивной.
Однако чаще всего это говорит лишь о том, что ты потратил все токены. Эффективность этих трат — совсем другой вопрос.
😁30💯28👍4🤷♂2❤1
Ну что — помянем
Google переводит их в режим поддержки, выпуская исключительно критические исправления.
Теперь Compose First подход официально.
Но, думаю,
View ⚰️Google переводит их в режим поддержки, выпуская исключительно критические исправления.
Fragment, кстати тоже всё. Теперь Compose First подход официально.
Но, думаю,
View останутся с нами ещё надолго: слишком много качественных приложений написано именно на них.Android Developers
Android is Compose-first | Jetpack Compose | Android Developers
Android is Compose-first, and the Views system is now in maintenance mode, meaning it will only receive updates for highly critical fixes.
👍25😢18👎3❤1🔥1
Что за Gemma 4?
Одним из не очень громких, но, на мой взгляд, важных анонсов Google I/O была поддержка Gemma 4 прям из IDE.
Android Studio и раньше поддерживала локальные модели, но теперь можно просто скачать себе подходящую модель напрямую, чуть ли не как SDK. В итоге вы получаете вполне приличного ИИ-ассистента.
Как я и сказал, модель локальная: подойдёт, если не хочется платить за подписки или использование сторонних моделей запрещено корпоративными правилами. Ну и вообще, тренд с локальными моделями мне нравится.
И хоть Gemma 4 и не самая топовая в бенче — всё равно будет полезной для разного рода задач.
Для запуска надо прилично RAM, так что бояре с 48+ гигами оперативы снова в тренде.
Одним из не очень громких, но, на мой взгляд, важных анонсов Google I/O была поддержка Gemma 4 прям из IDE.
Android Studio и раньше поддерживала локальные модели, но теперь можно просто скачать себе подходящую модель напрямую, чуть ли не как SDK. В итоге вы получаете вполне приличного ИИ-ассистента.
Как я и сказал, модель локальная: подойдёт, если не хочется платить за подписки или использование сторонних моделей запрещено корпоративными правилами. Ну и вообще, тренд с локальными моделями мне нравится.
И хоть Gemma 4 и не самая топовая в бенче — всё равно будет полезной для разного рода задач.
Для запуска надо прилично RAM, так что бояре с 48+ гигами оперативы снова в тренде.
👍13
Что у нас по AI-переводам? 🤖
Сколько бы я ни разрабатывал приложения — проблема локализации всегда стояла остро. До недавнего времени существовало два основных пути:
🟢 путь самурая — наймём агенство профессиональных переводчиков, которые будут в теме нашего контекста и обеспечат высокое качество;
🟢 путь ронина — а зачем нам переводчики, давайте машинные переводы сделаем, это лучше, чем ничего;
Первый вариант — дорогой и долгий, при этом качество не всегда было безупречным. Второй — бюджетный, но уровень перевода оказывался совсем низким.
С недавних пор у нас появился третий путь: а давайте натравим AI, чтобы он сам делал переводы, модели ж уже весьма умные. Или нет? Поделюсь своим опытом.
Для работы с переводчиками у нас использовалась платформа CrowdIn. По сути, при работе с переводчиками это было удобным хранилищем для строк. А ещё была неплохая поддержка CI, что позволяло отправлять и получать переводы без ручного участия команды разработки.
С приходом эры AI платформа добавила поддержку нейросетевых моделей. Можно подключать свои ключи API и использовать любые подходящие модели.
В результате текущий workflow выглядит так:
🟢 загружаем новые строки;
🟢 обогащаем контекст с помощью встроенного инструмента harvester: по сути, это команда, которая добавляет описание к каждой строке (например: «эта строка используется для кнопки «Вперёд» на экране авторизации»). Считаю это критически важным этапом;
🟢 запускаем перевод.
Для генерации контекста можно использовать модель попроще, а для финального перевода — более мощную и дорогую.
На выходе получилось очень достойно: надо было добавить пару правил по поводу того, что не стоит переводить и шаг за шагом добавлять языки, иногда проверяя переводы носителем, если есть возможность. Оцениваю фичу по качеству на 8 из 10, а по деньгам — 10 из 10. Даже с самой дорогой моделью на переводах.
Так что если у вас есть подобная задача — смело интегрируйте удобное для себя готовые решение, благо их на рынке сейчас много. Или навайбкодьте своё, чего уж.
Сколько бы я ни разрабатывал приложения — проблема локализации всегда стояла остро. До недавнего времени существовало два основных пути:
Первый вариант — дорогой и долгий, при этом качество не всегда было безупречным. Второй — бюджетный, но уровень перевода оказывался совсем низким.
С недавних пор у нас появился третий путь: а давайте натравим AI, чтобы он сам делал переводы, модели ж уже весьма умные. Или нет? Поделюсь своим опытом.
Для работы с переводчиками у нас использовалась платформа CrowdIn. По сути, при работе с переводчиками это было удобным хранилищем для строк. А ещё была неплохая поддержка CI, что позволяло отправлять и получать переводы без ручного участия команды разработки.
С приходом эры AI платформа добавила поддержку нейросетевых моделей. Можно подключать свои ключи API и использовать любые подходящие модели.
В результате текущий workflow выглядит так:
Для генерации контекста можно использовать модель попроще, а для финального перевода — более мощную и дорогую.
На выходе получилось очень достойно: надо было добавить пару правил по поводу того, что не стоит переводить и шаг за шагом добавлять языки, иногда проверяя переводы носителем, если есть возможность. Оцениваю фичу по качеству на 8 из 10, а по деньгам — 10 из 10. Даже с самой дорогой моделью на переводах.
Так что если у вас есть подобная задача — смело интегрируйте удобное для себя готовые решение, благо их на рынке сейчас много. Или навайбкодьте своё, чего уж.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16❤2👎1
R8 retrace
На днях отлаживал баг в тестовой сборке и заметил применение крутой технологии — R8 retrace. Как-то я упустил момент её релиза, а ведь теперь Android Studio подтягивает её автоматически.
Наверняка у вас в проектах используется R8. При создании релизной сборки генерируется файл mapping.txt. Он используется, например, в Firebase Crashlytics, чтобы превратить обфусцированный код в читаемый стектрейс.
Так вот, сейчас если собрать релизную (а может и тестовую, если вы её тоже делаете с R8) и установить её на устройство, которое подключено к IDE, то можно увидеть сразу корректный стектрейс. Студия сама подцепит, если есть mapping и покажет всё, что нужно для дебага.
Хотя может фича уже давно в проде, а я только обнаружил.
На днях отлаживал баг в тестовой сборке и заметил применение крутой технологии — R8 retrace. Как-то я упустил момент её релиза, а ведь теперь Android Studio подтягивает её автоматически.
Наверняка у вас в проектах используется R8. При создании релизной сборки генерируется файл mapping.txt. Он используется, например, в Firebase Crashlytics, чтобы превратить обфусцированный код в читаемый стектрейс.
Так вот, сейчас если собрать релизную (а может и тестовую, если вы её тоже делаете с R8) и установить её на устройство, которое подключено к IDE, то можно увидеть сразу корректный стектрейс. Студия сама подцепит, если есть mapping и покажет всё, что нужно для дебага.
Хотя может фича уже давно в проде, а я только обнаружил.
Android Developers
R8 retrace | Android Studio | Android Developers
R8 retrace is a standalone tool used to reconstruct original stack traces from obfuscated ones by matching class and method names in a mapping file to their original definitions.
🔥20❤4
Mesh Gradients
Люблю красивый UI, и вот — ещё одна интересная фича в стандартной библиотеке Compose.
Mesh-градиенты — это градиентывнезапно , которые делают переходы с помощью сетки. Она может быть нелинейной, благодаря чему градиент выглядит необычно. Получается плавная, перетекающая цветовая масса. Гугловый пример мне напоминает чем-то бензин, который попал в лужу.
Для создания существует MeshGradientPainter. В нём можно настроить множество параметров: количество цветов, характеристики сетки и итоговую форму.
Часто встречаю приложения с градиентами, поэтому считаю, что такая анимация выглядит очень достойно.
Детальнее можно почитать тут.
Люблю красивый UI, и вот — ещё одна интересная фича в стандартной библиотеке Compose.
Mesh-градиенты — это градиенты
Для создания существует MeshGradientPainter. В нём можно настроить множество параметров: количество цветов, характеристики сетки и итоговую форму.
Часто встречаю приложения с градиентами, поэтому считаю, что такая анимация выглядит очень достойно.
Детальнее можно почитать тут.
Android Developers
Mesh gradients | Jetpack Compose | Android Developers
This document describes how to use Mesh gradients in Jetpack Compose to create complex, multi-directional color transitions.
👍16🔥4
This media is not supported in your browser
VIEW IN TELEGRAM
Важный вопрос
Как думаете, юзеры удивятся, если увидят такой ввод пароля в банковском приложении?
Если что — вот код.
Как думаете, юзеры удивятся, если увидят такой ввод пароля в банковском приложении?
Если что — вот код.
😁31👍12🔥8
Handy
Если вы искали качественную и бесплатную замену Wispr (популярный нынче инструмент для транскрибации), то вот вам Handy.
Плюсов много:
• бесплатный;
• opensource;
• распознавание голоса происходит прям на устройстве;
• такой же простой и понятный.
По ощущениям работает похуже: если Wispr делает распознавание на 10 из 10, то Handy я поставлю 8. Но… opensource и бесплатно зато. Считаю, что это золото, а не тулза.
Если вы искали качественную и бесплатную замену Wispr (популярный нынче инструмент для транскрибации), то вот вам Handy.
Плюсов много:
• бесплатный;
• opensource;
• распознавание голоса происходит прям на устройстве;
• такой же простой и понятный.
По ощущениям работает похуже: если Wispr делает распознавание на 10 из 10, то Handy я поставлю 8. Но… opensource и бесплатно зато. Считаю, что это золото, а не тулза.
Handy
Handy is a cross platform, open-source, speech-to-text application for your computer
👍9💯3