Mobile Native ️️
5.39K subscribers
1.15K photos
18 videos
3 files
1.29K links
Полезные материалы по мобильной разработке. Статьи, подборки, нововведения, анонсы.

Пробустить канал → https://t.me/mobile_native?boost

Автор: @artemiygreg
iOS / Swift: @swift_tips
Библиотеки и инструменты: @mobile_dev_tools
Митапы: @meetup_today
Download Telegram
Forwarded from Swift Tips
WWDC26 A week of technology, creativity, and community

В этом году WWDC26 пройдёт с 8 по 12 июня. Посмотреть видео можно будет:

На Youtube: AppleDeveloper
На сайте: developer.apple.com
В приложении для разработчиков: AppleDeveloper
❤6👍3🔥3
Как заставить Android Studio ругаться на код по вашим правилам: создаем пользовательские Lint и Detekt

Объемная и полезная статья про статические анализаторы кода Android Lint и Detekt. Как с их помощью упростить себе жизнь, заставив Android Studio ругаться на код по вашим правилам.

В качестве примера показывается как создать практические правила для обоих инструментов и как их внедрить в проект. На примере Lint рассматривается контроль архитектуры пакетов и обязательную документацию с QuickFix, а на примере Detekt – проверка неизменяемого состояния представления без Android-зависимостей и миграцию с RxJava на Coroutines.

P.S. Шёл 2026 год – RxJava 😳

Читать (Ru)
❤5🔥4👍3
Как безопасно хранить и открывать пользовательские файлы локально в Android

Статья про безопасное хранение и открытие пользовательских файлов локально в Android.

👉 Получаем файл от пользователя
👉 Сохранение в зашифрованном формате
👉 Как стороннее приложение может безопасно прочитать ваш зашифрованный файл
👉 Создание ParcelFileDescriptor
👉 Создание корректного URI для FileDecryptionContentProvider
👉 Рефлексия шифрования

Читать (Ru)
❤7👍6🔥6
How Compose Preview Works Under the Hood

Интересная статья, в которой подробно разбирается процесс отрисовки Compose Preview в Android Studio.

👉 The fundamental problem: Rendering the uncallable
👉 The @Preview annotation: Metadata, not behavior
👉 From annotation to XML: How Studio discovers previews
👉 ComposeViewAdapter: The orchestrator
👉 ComposableInvoker: Calling the uncallable
👉 Inspectable: Enabling the tooling bridge
👉 From composition to ViewInfo: Mapping pixels to source code
👉 Running previews on device: PreviewActivity

Читать (En)
🔥5❤3👍2👏1
Как я пытался чинить анимацию в Jetpack Compose LazyColumn

Интересная статья от разработчика из ТБанка про то, как они решали проблему рассинхронизации анимаций айтемов в LazyColumn – когда один из айтемов меняет свои размеры, анимация второго айтема происходит с временным лагом.

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

Читать (Ru)
👍14🔥3❤2👎1
Разбираем Remote Compose: как Google предлагает строить BDUI

Обзорная статья от ребят из Альфа-Банк про недавно анонсированный Remote Compose от Гугла.

👉 Что делает Remote Compose особенным
👉 Как устроен Remote Compose
👉 Практическое использование
👉 Плюсы / Минусы

Читать (Ru)
👍10🔥4❤3
Маяк в пустыне: Kotlin DSL для Android-шейдеров

В статье автор рассказывает про сложности и неудобства работы с шейдерами в Android, из-за чего он заморочился и написал библиотеку, которая оборачивает всё это добро в типизированный Kotlin DSL.

👉 почему голый AGSL в Android-коде быстро начинает утомлять
👉 как выглядит тот же шейдер в RedByteFX
👉 четыре учебных примера - от простого к сложным эффектам
👉 как устроен DSL: координаты, uniform-ы, let(...), fn(...), sample(), sampleUv(), стандартная библиотека и интеграция с Compose;
👉 где библиотека реально выигрывает, а где у неё есть честные ограничения.

Библиотека не подменяет исполнение, нативный AGSL по-прежнему исполняется на устройстве и работает по принципу Kotlin DSL → сгенерированный AGSL → RuntimeShader / RenderEffect.


Библиотека на GitHub → RedByteFX

Читать (Ru)
👍8❤7🔥3
Kotlin Coroutine bridges: converting any callback-based Android API to suspend functions

Полезная статья, в которой показывается, как можно преобразовывать любые коллбэк-ориентированные Android API в suspend-функции используя suspendCoroutine.

👉 The fundamental problem: Callbacks do not compose
👉 The core bridge: suspendCoroutine
👉 Success and error callbacks: The two-path bridge
👉 The callback factory: Abstracting interface boilerplate
👉 Multi-value callbacks: Wrapper classes
👉 Exception hierarchies: Preserving error semantics
👉 The Result<T> variant: Exceptions are not always what you want
👉 The lambda convenience layer: Bridging before the bridge
👉 Real-world application: Bridging Google Play Billing directly
👉 suspendCoroutine versus suspendCancellableCoroutine
👉 Applying the pattern beyond billing
👉 Common mistakes to avoid

Читать (En)
👍8❤4🔥2
Привет! Ну ты как там? Как дела, что нового? 😃
👌12👀8🔥3❤1
Всем привет! Давненько меня не было в тг, давно уже ничего не публиковал в каналах – вот решил написать пост со своими мыслями, так сказать прояснить ситуацию.

В последнее время я действительно подвыгорел от медийного IT-инфополя и полностью погрузился в основную работу. Это произошло не потому что я устал или мне надоело вести каналы, нет. Причина банальная – отсутствие по истине толковых, интересных полезных статей/материалов.

В последнее время кругом ИИ, куда не плюнь, куда не зайди, всё про ИИ. И это не плохо, я всё понимаю, мир не стоит на месте, особенно ИТ, технологии стремительно развиваются и всё такое, но когда это прёт из каждого утюга, начинает раздражать. И раздражает тут не сам ИИ, а собственно то, как это преподносят. Чтобы написать какую-то интересную статью на тему ИИ, подготовить материал или сделать какой-то реально ценный продукт, в этом нужно разбираться. И вот вымораживает тут именно то, что многие, в том числе и медийные личности попросту хайпуют на этом – сами толком не разобрались, но при этом что-то публикуют, что-то продают, пытаются выступать «этакими экспертами».

Я с ИИ пока ещё не разобрался, не являюсь экспертом, да и это не прямая тематика моих каналов, поэтому сюда пока и не лезу, но стараюсь держать руку на пульсе. Если вдруг кому-то интересно, сам поглядываю за тем, что делает Никита. Постить в день по 100500 бестолковых постов с новостями, по типу "вышла новая версия Compose", "что-то там в альфе", "Google заблочил...", "Google запретил..." и т.д., это тоже не мой формат, не вижу смысла в таких публикациях, такое вы можете почитать и в других каналах 🤷‍♂️

Что касается судьбы каналов. В ближайшее время однозначно буду возвращаться к публикациям, пока что в старом, привычном формате, но видимо пока что с более низкой частотой публикаций из-за отсутствия интересного/полезного – прррошу понять и пррростить 😃

Сделал отдельный канал – @it_grigorovich, в котором буду делиться своими мыслями о происходящем, подпишись по-братски, следующий пост будет про IT-блогеров, инфоциганство и меркантильность 😳

P.S. Всем добра и хорошего настроения!
Please open Telegram to view this post
VIEW IN TELEGRAM
18👍24❤9💯6🔥4
🤳 Как работает мобильная разработка с AI под капотом — интенсивы от Podlodka Crew

Конференции Podlodka Crew открывают осенний сезон и приглашают слушателей на Podlodka iOS Crew (с 14 сентября) и Podlodka Android Crew (с 21 сентября).

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

🛠 Что будет в сезонах:


🍏 Стратегия внедрения терминальных ИИ-агентов и интеграций через MCP в ежедневную iOS-разработку

🍏AI как экзокостюм мобильного разработчика: harness, skills, CLI, orchestration, validation и evals

🍏Локальные модели для разработки
на Apple Silicon

🤖Профилирование агентом: как делать это в 3 раза дешевле

🤖Эффективный AI-пайплайн для Android: от дизайна до отладки и тестирования

🤖Необычные задачи, и как научить агентов их решать автономно.

И это ещё не всё! Подробности о сезонах смотрите на сайте, и там же можно забрать билеты по early-bird цене.

В результате можно будет забрать не только новые идеи, но и сразу начать использовать собственные наработки, сделанные в ходе конференции.

Подробности и билеты:
🍏
Podlodka iOS Crew
🤖Podlodka Android Crew

А по промокоду mobile_native18 получите сикдку🎁
🔥5👍4👎3❤2🤔1👀1