Mobile Development by AppTractor
11K subscribers
1.87K photos
38 videos
11 files
4.67K links
Цифры, советы и все интересное о разработке мобильных приложений и сервисов. Комментарии и вопросы можно писать прямо @lbogolubov

• Аудитория https://t.me/apptractor/1066
• Сайт https://apptractor.ru/
Download Telegram
📺 Видео и подкасты за неделю @AppFiles

(iOS En) Location OnBoarding Animation Using SwiftUI
(iOS En) Please stop making this Swift mistake
(iOS En) Using SwiftUI Foundation Models Transcripts to build a Chatbot
(iOS En) Monetizing Apps With SwiftUI - Tip Jar
(iOS En) Android developer verification walkthrough
(And En) Now in Android: 122 – Android Studio updates, Android 16 beta feature, and more
(And En) Building Androidify: an AI-powered Android experience
(And En) More customization in Material 3: the path to expressive apps
(And En) Building adaptive apps for Android
(And En) Building intelligent Android apps with Gemini
(And En) What's new in Android Studio's AI Agent
(And En) Building for TV and cars with Compose
(And En) All Types of Sliders In Material3 Expressive Explained
(And En) The 5 Coolest Android Studio Hacks In 5 Minutes
(And En) Gradle Tutorial: Task Types (for Build Engineers)
(And En) Gradle Tutorial: Build Lifecycle (for Build Engineers)
(Crs Ru) Как закалялся код — история большой оптимизации
(Crs Ru) Flutter везде, и даже в чайнике
(Crs Ru) WhiteLabel App на Flutter. Один код — тысяча лиц
(Crs Ru) Как Flutter преобразует графический слой микроядерной ОС
(Crs Ru) Многомодульность на Flutter. Переезжаем с монолита
(Crs Ru) Перевод OpenHarmony на статический язык и рантайм
(Crs En) Liquid Glass effect is now available in Compose Multiplatform
(Dev Ru) Калибровки в бигтехе: как оценивать сотрудников
(Dev Ru) Надя Зуева — стартап в Дубае, AI в моде, инвестиции и жизнь фаундера
(Dev Ru) IT рынок перегрет. Удаленка vs Работа в офисе. Сколько стоит содержать офис?
(Dev En) Discrete Mathematics Course for Beginners

Прошлогодние видео:

(Dev Ru) Как начинающему программисту получить первый оффер
(Dev Ru) Релокация в США, часть 1: Безопасность, оружие, визы и медицина
(Dev Ru) А/В-тесты на коленке
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Актуальные практики, которые всех сбивают с толку

Традиционный дайджест со всеми материалами за неделю - Optional в Swift, которые всех сбивают с толку, актуальные практики работы в фоне и стартапы в Дубае, ИИ простыми словами, партнерская программа для мини-приложений в App Store, смягчение ограничений на загрузку сторонних приложений в Android и многое другое. Заходите!
2🔥2
Руководство по пожизненным подпискам: подходят ли они вашему приложению

Большая статья (в моем переводе) от RevenueCat о lifetime подписках или, проще говоря, одноразовых покупках "на всю жизнь". Разбирается зачем они нужны, кому нужны, плюсы и минусы с точки зрения пользователя или издателя. Ничего экстраординарного, но для закрепления и материала и размышлений не бросить ли все и уйти в сантехники - вполне.

AppGrowth про инди, пет и монетизацию
12
🇸🇱 Android

Производительность приложения — ключевой фактор пользовательского опыта и качества приложения, и последние исследования показывают, что она тесно связана с повышением удовлетворенности пользователей, более высоким уровнем удержания и более высокими оценками. У Google началась неделя Android Performance - всю неделю разработчики компании будут предоставлять вам простые, но эффективные инструменты и рекомендации, которые помогут вашему приложению быстро добиться лучшей производительности. Они помогут вам заложить основу (уже вышла статья про R8), а затем глубже погрузиться в процесс улучшения вашего приложения.

LibrePods — все функции AirPods на Android
QmBlurView — эффекты размытия
Improving your deep links with Dynamic App Links
Migrating Now in Android to Koin Annotations 2.3
MockK: Under the cover
Recover Kotlin coroutine traces with Decoroutinator
Easier Crash Debugging in Android with a Custom In-App Dialog
Deep Dive into Jetpack Compose Text Views : The Secret Life of Composable
Why Your ViewModel Is Technically Unstable — and Why Compose Doesn’t Mind
Use R8 to shrink, optimize, and fast-track your app
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Очередная история из разряда "Fake it till you make it". CTO Fireflies.ai написал в LinkedIn, как они начинали свой шестой и последний стартап - продвигали ведение заметок в митингах на основе ИИ. На самом деле сами сидели "в совещаниях" и записывали все на бумажке. "Лучший прототип — это двое парней, выживающих на пицце.".

Разработка

Надя Зуева — стартап в Дубае, AI в моде, инвестиции и жизнь фаундера
Калибровки в бигтехе: как оценивать сотрудников
Какой Ai-шник нынче нужон?! / Исследование ИИ рынка труда РФ
Не бросайте работу только потому, что ваш пет-проект идёт хорошо
Тим Кук готовится к выходу на пенсию?

Маркетинг

Руководство по пожизненным подпискам: подходят ли они вашему приложению?
Fake it till you make it #2
Голосовая клавиатура Willow позволяет вам печатать во всех приложениях iOS

Кроссплатформа

Как закалялся код — история большой оптимизации
Flutter везде, и даже в чайнике
Building the Same Login Screen in Flutter, SwiftUI, and Compose: A Real Developer’s Comparison
KMP-NativeCoroutines: where suspend meets Swift async
How Pub Workspaces Simplify Flutter Monorepos
👍2
Android

В статье Роман показывает, как упростить преобразование (mapping) данных в Android-приложениях с помощью Kotlin — используя интерфейсы, делегацию и ковариантные дженерики. Вместо привычных data-классов можно объявить интерфейсы для сущностей и состояния, а их реализации скрыть. Это избавляет от шаблонного кода, упрощает маппинг и делает архитектуру чище и более устойчивой. Полезно для ViewModel + StateFlow + Compose.

How Reddit used the R8 optimizer for high impact performance improvements
How to simplify State and Entity mappings with Kotlin interfaces, delegation and covariant generics
1
🤖 Лучшие приложения и игры для Android 2025 в Google Play

Google объявил лучшие приложения этого года. Focus Friend, помощник по управлению экранным временем от YouTube-блогера и предпринимателя Хэнка Грина, стал приложением года в Google Play.

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

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

Приложение стало хитом сразу после запуска, заняв первое место в App Store. Согласно данным Play Store, на Android Focus Friend установили более 1 миллиона раз. Google называет Focus Friend полезным и милым приложением, а также эффективным инструментом, помогающим пользователям сосредоточиться.

Карточная игра Pokémon TCG Pocket получила награду как лучшая игра, лучшим многофункциональным приложением стал фоторедактор Luminar, а лучшей multi-device игрой — гоночная игра Disney Speedstorm.

Другие лучшие приложения для Android 2025

• Лучшее приложение для удовольствия: Edits
• Лучшее приложение для персонального роста: Focus Friend by Hank Green
• Приложение на каждый день: Wiser – 15 Minute Audio Books
• Скрытое сокровище: Pingo AI Language Learning
• Лучшее приложение для семей: ABCmouse 2: Kids Learning Game
• Для часов: SleepisolBio: sleep, alarm
• Для больших экранов: Goodnotes: Notes, docs, PDF
• Для автомобилей: SoundCloud: The Music You Love
• Для XR гарнитур: Calm – Sleep, Meditate, Relax

Лучшие игры для Android 2025

• Лучшая многопользовательская игра: Dunk City Dynasty
• Лучшая игра Pick Up & Play: Candy Crush Solitaire
• Лучшая инди-игра: Chants of Sennaar
• Лучшая история: Disco Elysium
• Продолжающаяся игра: Wuthering Waves
• Лучшая игра с Play Pass: DREDGE
• Лучшая игра для Google Play Games на PC: Odin: Valhalla Rising
Please open Telegram to view this post
VIEW IN TELEGRAM
👍31🫡1
iOS

В статье автор собирает редкие, но мощные компоненты SwiftUI, о многих из которых разработчики забывают или просто не знают. Он объединяет фрагменты из предыдущих публикаций и показывает, как использовать такие вью, как TimelineView — идеальное решение для создания цифровых часов или таймера обратного отсчёта, которые автоматически обновляются без лишнего кода. Кроме того, статья охватывает целый набор менее распространённых элементов SwiftUI — это не просто «еще один туториал», а настоящая подборка скрытых возможностей фреймворка. Освоив эти компоненты, вы сможете сделать интерфейсы своих приложений более гибкими и выразительными, существенно расширив инструментарий, доступный помимо стандартных VStack, HStack и ZStack.

24 SwiftUI Components You Didn’t Know Existed!
Little SwiftUI Tip: Get Network Information & Monitor Changes
What I Learned While Building My Veggie Garden
Singletons with Swift Concurrency
👍1
Android

Знаете ли вы, что почти все ViewModel нестабильны? Когда мы впервые изучаем Compose, нас учат использовать стабильные классы, а не нестабильные. Но ViewModel нестабильны. Так почему же никто ничего не говорит, когда мы используем нестабильные ViewModel? Причина проста. Мы не передаём саму ViewModel в композабл объект, мы передаём стабильное состояние внутри ViewModel. ViewModel обычно создаётся только один раз в компонуемом объекте верхнего уровня и передаётся в качестве аргумента. После этого она собирает управляемое ею состояние и передаёт его дочерним компонуемым объектам. Поэтому, даже если ViewModel нестабильна, это не создаёт проблем.

Основы MockK
Почему ваша ViewModel технически нестабильна — и почему Compose это не волнует
Grocery Genius — список покупок для Android
How Uber is reducing manual logins by 4 million per year with the Restore Credentials API
Android 16: What’s New and How to Implement Live Updates in Your App
Comprehensive Guide to Using Rust in Android Development
KAPT vs KSP: Why Kotlin Is Moving Toward Symbol Processing
1
Вчера Google выпустил Gemini 3, свою новейшую и самую продвинутую модель, которая теперь доступна через приложение Gemini и интерфейс ИИ-поиска. Вместе с ним вышла Google Antigravity - отдельная десктопная IDE с фокусом на агентскую разработку. С мест докладывают, что для прозрачности действий Antigravity создает Artifacts - планы, списки задач, диффы, изменения в коде, вывод тестов, скриншоты и записи браузера. Это нужно для верификации того, что было сделано и что будет сделано. Можно оставлять комментарии прямо в артефактах. Antigravity лучше всего подходит для больших монорепозиториев и инфраструктурных задач, небольших команд, которым нужно "прыгнуть выше головы", для вайб-кодинга и быстрого создания прототипов.

Разработка

Google запускает Gemini 3 с новым приложением для программирования
Most companies will slow entry-level hiring because of AI, survey says
Material 3 Expressive: Building on the failures of flat design

Маркетинг

100 уроков о том, как я довёл своё приложение до продажи за семизначную сумму
Лучшие приложения и игры для Android 2025 в Google Play
How to run a holiday sale in Play Console for Android subscription apps

Кроссплатформа

Flutter DevTools Network Tab: Debug API Calls Like a Pro in 2025
👍3
Библиотека Jetpack Navigation 3 стала стабильной

Jetpack Navigation 3 стал стабильным в версии 1.0. Используйте библиотеку в своих приложениях уже сегодня. Например, JetBrains уже использует её в своём приложении KotlinConf.

Navigation 3 — это новая навигационная библиотека, полностью разработанная для поддержки состояний Jetpack Compose. Она предоставляет полный контроль над стеком переходов, помогает сохранять состояние навигации и позволяет легко создавать адаптивные макеты (например, list-detail). У JetBrains даже есть кроссплатформенная версия.

Подробнее: https://apptractor.ru/info/news/jetpack-navigation-3-stab.html
Платформа: Android

AppFiles: код, инструменты, практики, производительность
41
Apple объявляет финалистов премии App Store Award 2025

Компания Apple сегодня объявила имена 45 финалистов премии App Store Awards этого года, отмечая лучшие приложения и игры в 12 различных категориях.

Лучшие приложения для iPhone

BandLab — за помощь музыкантам в записи и сведении треков с сообществом
LADDER — за избавление от неопределенности в силовых тренировках
Tiimo — за представление задач в более успокаивающем формате.

Лучшие игры для iPhone

Capybara Go! — за необычное приключение в роли очаровательного существа
Pokemon TCG Pocket — за то, что делает коллекционирование и игру легендарных карт покемонов ещё интереснее (игра стала "игрой года" на Android)
Thronefall — за сочетание захватывающих оборонительных сражений с минималистичным управлением

Лучшие приложения для iPad

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

Лучшие игры для iPad

DREDGE — за захватывающую загадку и плавный игровой процесс
Infinity Nikki — за погружение в причудливый мир Миралэнда
Prince of Persia Lost Crown — за эпическое приключение от начала до конца

Лучшие приложения в категории "Культурное влияние"

Art of Fauna — запечатлела красоту дикой природы в доступных головоломках
A Space for the Unbound — за исследование психического здоровья через трогательный жизненный рассказ
Be My Eyes — за поддержку пользователей с нарушениями зрения и слабовидящих
Chants of Sennaar — за воспевание силы языка и связей
despelote — за креативное создание игрового процесса, основанного на культурных особенностях
Focus Friend — за превращение фокус-сессий в увлекательные задания
Is This Seat Taken? — за развитие эмпатии и инклюзивности
Retro — за создание социальной платформы, учитывающей конфиденциальность и позволяющей близким оставаться в курсе событий
StoryGraph — за создание инклюзивного книжного сообщества
Venba — за освещение кулинарных традиций разных стран с помощью проникновенных историй
Whoscall — за защиту пользователей от мошенничества
Yuka — за помощь пользователям в осознанном выборе потребляемой продукции
👍21
Android

Запутались, когда использовать withContext(Dispatchers.IO), а когда — launch(Dispatchers.IO)? В этой статье раскрывается настоящая разница: withContext — это синхронное переключение контекста, которое приостанавливает корутину до завершения блока, тогда как launch — это создание новой корутины, запускаемой параллельно. Понимание этого помогает избежать лишних переключений, уменьшить накладные расходы и правильно распределять задачи между потоками.

Библиотека Jetpack Navigation 3 стала стабильной
Как всплывающее окно в WebView съело мои два дня (viewport и с чем его кушать)
The Real Difference Between withContext(Dispatchers.IO) and launch(Dispatchers.IO)
Hot Android Libraries 2025 — Open-source projects worth using
Complete Guide to Android Services: Architecture, Implementation, and Best Practices
3🤡1
А в этой статье рассказывается, как создавать человечную визуализацию данных на мобильных устройствах. Не просто графики — а истории: данные должны быть понятны, личны и контекстуальны. На маленьком экране важно учитывать цель пользователя, тип данных (как количественные, так и качественные), взаимодействие через тап, свайп, скролл. Особое внимание — этике: честность представления, прозрачность и контроль для пользователя.
Эмпатия + дизайн + повествование = визуализация, в которой числа становятся смыслом.

Разработка

Designing Humanist Data Visualization for Mobile

Маркетинг


Сосредоточься на удобстве шаринга, а не на масштабировании
Мобильный рынок Ближнего Востока: исследование Bidease и Sensor Tower выявляет драйверы роста
Apple объявляет финалистов премии App Store Award 2025
Grow ARPU by adding value for existing subscribers: tactics + real app examples

Кроссплатформа

Smart Flutter In-App Subscriptions
1
This media is not supported in your browser
VIEW IN TELEGRAM
🇸🇱 💽 Android Quick Share теперь работает с AirDrop на iPhone

Компания Google объявила сегодня, что функция Quick Share в Android теперь работает с системой AirDrop от Apple на iPhone, iPad и Mac, обеспечивая лёгкую передачу файлов между платформами/операционными системами.

На Android устройства Apple будут отображаться в полноэкранном интерфейсе Quick Share и их можно будет выбрать в качестве получателей для обмена, если активен режим AirDrop «Все на 10 минут» (Everyone for 10 minutes). После того, как пользователь iPhone подтвердит получение, файлы будут переданы. Аналогичным образом, устройства Android будут отображаться на iPhone, iPad и Mac.

Самое примечательное, что это не совместная работа Google и Apple, все сделали в Android. Представитель Google Алекс Морикони сказал:
Это не коллаб. Мы добились этого благодаря собственным усилиям.

До патча для AirDrop в iOS осталось 3... 2...
Please open Telegram to view this post
VIEW IN TELEGRAM
😱11😁8👍2
📺 Видео и подкасты за неделю

(iOS Ru) Разбор кода: iOS-приложение для управления личными финансами на Swift. Часть 1
(iOS En) Showcase:​ Learn how apps are integrating the new design and Liquid Glass
(iOS En) Code-along: Start building with Swift and SwiftUI 
(iOS En) iOS Coding Interview: The 5 Formats You Must Know
(iOS En) Liquid Glass Text View - Converting Text Into Shape - SwiftUI
(iOS En) Expand Apple’s Foundation Models with Custom Tools and Real Data Access
(iOS En) Animated Splash Screen for SwiftUI App
(iOS En) Autoclosures in Swift Explained Simply
(And En) App performance improvements
(And En) How to debug and troubleshoot R8 optimizer
(And En) Boost Android app performance with the R8 optimizer
(And En) Floating Toolbars In Material3 Expressive
(And En) Navigation 3 library is now STABLE
(And En) Gradle Tutorial: Properties and Providers (for Build Engineers)
(Crs Ru) Хватит страдать! Лёгкий способ бросить оверинжиниринг
(Crs En) Build a Compose Multiplatform Meme Creator App With Clean Code & MVI
(Dev Ru) Как устроены АI облака — ИИ, инфраструктура, GPU, Nebius

Прошлогодние видео:

(iOS Ru) Дейтинг, Swift и Формула-1: от первых шагов в IT до победы в хакатоне
(iOS Ru) iOS разработка с нуля
(And Ru) Code Review: вы не поверите, насколько распространены эти ошибки в коде Android-проектов
(Dev Ru) Всё о лицензиях библиотек, что необходимо знать разработчику

👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность
Please open Telegram to view this post
VIEW IN TELEGRAM
1
Стабильные вопросы разработки

Врываемся в понедельник с новым дайджестом за прошлую неделю - вопрос с собеседования, на котором сыпятся даже Senior-ы, стабильный Navigation 3 и нестабильная ViewModel, кросс-компиляция, 100 уроков развития проекта, открывашка из трубки домофона и многое другое. Заходите!