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

• Аудитория https://xn--r1a.website/apptractor/1066
• Сайт https://apptractor.ru/
Download Telegram
Android

В первой статье рассказывается о трёх подходах к одновременному выполнению API-запросов в Kotlin: через async/await, через комбинирование потоков с Flow.zip и через реактивное объединение с Flow.combine. async. Автор объясняет, когда лучше использовать тот или иной вариант, дает примеры кода.

Parallel API Calls in Kotlin: async vs Flow.zip vs Flow.combine
Mastering Cooperation: Understanding yield() in Kotlin Coroutines
👍1
Французский ИИ-стартап Mistral сегодня представил Devstral 2, новое поколение своей ИИ-модели, разработанной для программирования. Помимо главной модели на 123 миллиарда параметров, есть Devstral Small на 24 миллиарда, ее можно развертывать локально на потребительском оборудовании. Компания также вступает в гонку вайб-программирования с Mistral Vibe, новой CLI-утилитой, предназначенным для упрощения разработки с помощью естественного языка, с инструментами для манипулирования файлами, поиска кода, контроля версий и выполнения команд. Vibe имеет функцию сохранения истории и может сканировать файловые структуры и статусы Git для создания контекста, определяющего его поведение.

Разработка

Mistral выпускает новые модели для программирования
7 небольших UI-исправлений, которые могут сделать продукт более привлекательным
В Linux Foundation появилась группа по стандартизации ИИ-агентов
5 micro-interactions to make any product feel premium

Маркетинг

8 UX decisions that silently increase revenue

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

Flutter MethodChannel: как подружить Dart с нативным Android (и iOS)
Flutter Signals: A State management solution that gets attention
How I Boosted Flutter Performance 3× by Rewriting a Dart Function in C++ Using FFI
👍3
RemoteCompose: другая парадигма SDUI в Jetpack Compose

RemoteCompose всё ещё находится в разработке AndroidX и официально пока не опубликован, однако концепция очень многообещающая.

Сервер перехватывает (capture) любой макет Jetpack Compose и выдает его в компактном сериализованном формате. Это своего рода «скриншот» вашего пользовательского интерфейса, только вместо пикселей вы захватываете фактические инструкции отрисовки. Этот полученный документ содержит всё необходимое для воссоздания пользовательского интерфейса: фигуры, цвета, текст, изображения, анимацию и даже интерактивные области касания. На стороне сервера пишется стандартный код Compose. Не нужно изучать новый DSL (Domain-Specific Language), поддерживать схему JSON или осваивать язык шаблонов. Если вы можете написать это на Compose, вы можете захватить это с помощью RemoteCompose.

В приложении работает простой (платформенный) плеер, который управляет показом и взаимодействием с этим ByteArray. Клиентскому устройству не нужны ваши композабл функции, ваши модели представления или ваша бизнес-логика — ему нужны только байты документа и проигрыватель.

Таким образом, преобразуя макеты Compose в переносимый формат документа, RemoteCompose обеспечивает управляемый сервером пользовательский интерфейс, а значит мгновенное A/B-тестирование, обновление контента в реальном времени и кроссплатформенную согласованность, сохраняя при этом производительность нативного рендеринга. Фреймворк справляется со сложностью сериализации, передачи и рендеринга, позволяя вам сосредоточиться на проектировании превосходного пользовательского опыта.
👍6🔥32👌1
Apple опубликовала свой ежегодный список самых скачиваемых приложений и игр за год. На американском рынке приложение ChatGPT от OpenAI возглавило рейтинг бесплатных приложений для iPhone (без учета игр) с наибольшим количеством установок в 2025 году. За ним следуют Threads, Google, TikTok, WhatsApp, запрещенный Instagram, YouTube, Google Maps, Gmail и Gemini от Google. Признаки того, что ChatGPT движется к первому месту, появились еще в начале года — в марте он стал самым скачиваемым приложением в мире, обогнав другие популярные приложения, такие как TikTok и Instagram. Тот факт, что ChatGPT опережает такие популярные социальные сети и столь необходимые сервисы, как Google Maps, свидетельствует о том, насколько глубоко искусственный интеллект проник в повседневную жизнь людей в США. Это также демонстрирует потенциал OpenAI для того, чтобы подорвать монополию Google на рынке поиска на мобильных устройствах, поскольку все больше людей в первую очередь обращаются к чат-ботам за ответами.

Разработка

Когда нужно закрывать проект
Why write engineering blogs?
State of Developer Ecosystem Report 2025

Маркетинг

Spotify тестирует более персонализированные ИИ-плейлисты
Смена Primary Language в App Store как рычаг роста
ChatGPT — самое скачиваемое приложение в американском App Store в 2025 году
Gossip Harbor’s LiveOps Journey: From 20 to 100 Events a Month

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

Flutter — везде (и даже в чайнике). Часть 2
Flutter’s Great Thread Merge: What it means for your apps

iOS

gRPC on iOS: Faster APIs for Mobile in 2025
Responsive Design in SwiftUI: Stop Hardcoding Layout for iPhone Only
Monitoring app performance with MetricKit

Android

Awesome Jetpack Compose Animations — коллекция анимаций Jetpack Compose
RemoteCompose: другая парадигма SDUI в Jetpack Compose
9 Kotlin Flow Mistakes You’re Probably Making
Enhancing Android security: Stop malware from snooping on your app data
👍31
📺 Видео и подкасты за неделю

(iOS Ru) Разбор кода: iOS-приложение для медитации на Swift
(iOS En) SwiftUI Animated Tab Icons - Symbol Effects Tab Bar
(iOS En) RichText Notes App - AttributedStrings and SwiftData
(iOS En) Interactive Map Carousel | MapKit | Map Animations | SwiftUI
(And Ru) Как сделать приложение за 10 минут? | FlowMVI Часть 1 - Часть 2 - Часть 3
(And XR) The Android Show | XR Edition
(And XR) Getting started developing on AI Glasses
(And XR) What's new in the Android XR SDK for Unity
(And XR) Designing interfaces for wired XR glasses
(And XR) Designing audio experiences on AI Glasses
(And XR) XR Journey: From Snapdragon Spaces to Android XR
(And XR) Design best practices for display AI Glasses
(And XR) What's new in the Jetpack XR SDK for immersive experiences
(And En) Bring your own model - Android Developers Backstage
(And En) Bottom Nav With Multiple Back Stacks In Navigation3
(And En) Nested Nav Graphs & Shared ViewModels With Navigation3
(And En) FaceCut App - Create Beautiful Portraits in minutes
(Crs En) Why iOS Devs Struggle with KMP (and How to Fix It)
(Dev Ru) Заменит ли AI разработчика
(Dev Ru) SWE-агенты — Пишем код, LLM, автономный ИИ
(Dev Ru) Open Source: альтруизм или скрытая выгода?
(Dev Ru) Как внедрить ИИ в разработку и подружиться с безопасниками
(Dev Ru) Как выявлять баги до первой строчки кода: опыт внедрения тест-анализа и тест-дизайна
(Dev Ru) Как мы делаем больше 10 релизов в день без регресса

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

(And Ru) Полный разбор Kotlin Delegated Property
(Crs Ru) BA x Flutter: взаимодействие отделов, запуск кроссплатформы и почему хорошее ТЗ — бич креативности
(Dev Ru) Карьера и лидерство в IT
(Dev Ru) Вся правда о грейдах, ревью и промоушенах
(Dev Ru) Искусство создания антихрупкого API

👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Приложения, вышедшие с начала октября, и заработавшие больше $50,000

По данным AppMagic, с начала октября было выпущено 13 приложений, которые заработали более 50,000 долларов (отчасти релизы пересекаются с сентябрьским топом, так как тогда приложения успели заработать больше означенной суммы).

1. Tea App for Women: TeaOnHim ($291,312) - это как раз приложение из сентябрьского чарта. Почти удвоило доход.

2. True Heritage & Ancestry: EDNA ($172,240) - еще одно. Более чем удвоило.

3. Truthseek:AI Deepsearch ($145,398) - третье, право оно изменило название с AI People Search на AI Deepsearch. Тоже удвоение дохода.

4. SacredSpark: Catholic Dating ($90,270) - католический (!) дейтинг. 100% дохода и 99% загрузок из США.

5. Rocket - Video Chat Motivation ($84,992) - японское приложение для поддержания мотивации (с видео-чатом?). Не очень понятно, где там такие деньги.

6. AI Video Generator ($71,891) - тот же Vidoo из прошлого обзора, только сменивший название.

7. TCG Card Scanner - Kardo ($68,575) - подписное приложение-компаньон для коллекционных карточек. Сканирует карточки, но судя по отзывам, не очень хорошо. Плюс не очень честная подписка.

8. NoveFic - Web Novel & Stories ($54,685) - короткие драмы в тексте.

9. Plaud ($53,973) - исключительно китайское приложение с чат-ботом и ИИ-заметками.

Еще три приложения попали в рейтинг, но сейчас уже удалены - корейские дорамы, шоппинг-приложени и VPN для США.

Что можно повторить из нового? Вряд ли католический дейтинг для США, для текстовых драм нужно много текста и продвижения. Можно предположить, что TCG Card Scanner - сканер работает (судя по отзывам) не очень хорошо, плюс дорогая подписка. Сыграв на этих недостатках вполне можно составить конкуренцию продукту.

Приложения за сентябрь и август.

AppGrowth про инди, пет и монетизацию
3
Реверс-инжиниринг меню

Возвращаюсь с еженедельными дайджестами - в этом выпуске за прошлую неделю особенности Struct в Swift и RemoteCompose в Android, знакомство с Frida и новые умные очки Google, сломанное ценообразование приложений с подпиской, навигация на SwiftUI, создание анимированных полос и многое другое. Заходите!
👍2
iOS

Прекрасная история того, как автор дооптимизировался до того, что его приложение практически перестало работать. Да, его приложение стало весить 35 Мб вместо 200, но накладные расходы на это превысили весь получаемый профит. Его лавный вывод: "То, что что-то возможно, не означает, что это нужно делать".

Я уменьшил iOS-приложение с 200 до 8 МБ: побочные эффекты, которых я не ожидал
Разбор кода: iOS-приложение для медитации на Swift
XcodeProj — работа с проектами Xcode
Swift Configuration 1.0 released
How to avoid retain cycles when working with tasks in Swift
Battery life on iOS and the myth of killing apps
Every Senior iOS Developer Makes This Same Logical Mistake
I Tried Making My App 100% Offline-First. The Sync Issues Nearly Destroyed the Project
Stop Using MVVM: Why I Migrated My 100k-Line SwiftUI App to TCA (and How You Can Too)
👍1
Android

Многие разработчики откладывают внедрение Accessibility «на потом», но поддержка TalkBack критически важна для UX. В статье отличный гайд по адаптации Android-приложений для незрячих пользователей. Автор не только объясняет, как работает скринридер Google, но и показывает, как избегать распространенных ошибок, когда интерфейс становится «невидимым» или неудобным для навигации на слух. Внутри — конкретные примеры кода и Best Practices. Разбираются работа с группировкой контента, настройка порядка обхода элементов (Traversal Order) и создание семантически понятных описаний для кнопок и изображений. Если вы хотите разобраться, как правильно использовать ViewCompat для настройки доступности и как тестировать свои гипотезы через TalkBack, эта статья — отличная точка входа.

ComposeGuard — обнаружение нарушений правил и лучших практик Jetpack Compose
Shared element transitions for large screened devices
From View.INVISIBLE to Modifier.visible(): Rethinking Visibility ️in Jetpack Compose
KToon: Tiny Tables, Big Savings Plug TOON into Your @Serializable Kotlin Classes
From Zero to Hero: Running Google’s Gemma 3n on Android with LiteRT & Qualcomm QNN
Tap Detection on Arbitrary Shapes with Compose
Android Accessibility and TalkBack
2
В прошлую пятницу Апелляционный суд США постановил, что Apple должна иметь возможность взимать разумную комиссию с покупок, совершенных с использованием внешних ссылок, включенных в приложения для iOS. Апелляционный суд частично отменил санкции, наложенные на Apple после того, как было установлено, что компания умышленно нарушила судебный запрет в продолжающемся судебном разбирательстве Epic Games против Apple. Однако, за исключением изменений в размере платы и дизайне ссылок, остальная часть запрета останется в силе, поскольку Apple сделала внешние ссылки «максимально сложными для использования», что «противоречит духу судебного запрета». Апелляционный суд рекомендует окружному суду рассчитать комиссию, основанную на затратах, необходимых для координации внешних ссылок для совершения покупок, а также на «некоторой компенсации» за использование интеллектуальной собственности. Затраты не должны включать комиссию за безопасность и конфиденциальность.

Разработка

Google и Apple выпустили экстренные обновления безопасности после атак нулевого дня
Заменит ли AI разработчика
SWE-агенты — Пишем код, LLM, автономный ИИ
How to Build Your First ChatGPT App

Маркетинг

Retro позволяет вам «путешествовать во времени» по вашей фотогалерее
Приложения, вышедшие с начала октября, и заработавшие больше $50,000
Apple получила право взимать комиссию за внешние платежные ссылки

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

DRTDI: лёгкий и быстрый DI-контейнер для Dart и Flutter
Нейминг в Dart: полезные примеры из документации
👍31
iOS
Автор рассказал, как ему удалось ускорить CI-сборки Xcode почти в 10 раз с помощью подхода slot-warmed caching. Проблема была типичной: даже на быстрых Mac mini сборки в CI занимали 15–30 минут из-за постоянных «холодных» кешей DerivedData. Каждая задача начинала сборку с нуля, не переиспользуя уже собранные артефакты, что приводило к огромным потерям времени. Решением стали фиксированные «слоты» — постоянные директории кеша, которые переиспользуются между запусками CI. Задача просто получает свободный слот с уже прогретым кешем, без копирования и конфликтов путей. В итоге среднее время сборки сократилось до ~2,5 минут. Главный вывод автора — быстрый CI важен не ради цифр, а ради потока разработки: когда проверки проходят почти мгновенно, разработчики меньше отвлекаются и работают заметно продуктивнее.

👍, если хочешь перевод на русский.

Cupertino — локальный сканер документации Apple и сервер MCP
Побег из стеклянной тюрьмы. iOS Jailbreak. Часть первая
Stop Using Loops to Search Data in Swift — Instead, Do This
The Coding Round Where I Forgot the Most Basic Edge Case — And Paid for It
Building Complex UIs with SwiftUI Phases
Keep Your Strings Clean and Localized in a Single File
Implementing subscriptions In-App Purchases with StoreKit 2
From broken to testable SwiftUI navigation: The decoupled approach of MVVM with coordinators
10× faster Xcode CI builds with slot caching
Analysing and Removing Hangs in iOS Apps
👍91🔥1
Android

В релизе Kotlin 2.3.0 представлен ряд значимых улучшений для языка, инструментов и различных платформ. Вот некоторые: явные backing fields; проверка неиспользуемых возвращаемых значений; изменения в контекстно-зависимое разрешение; улучшенный экспорт в Swift; импорт библиотек C и Objective-C; поддержка Java 25; поддержка стектрейсов для минифицированных Android-приложений; добавлена совместимость с Gradle 9.0.

Улучшение доступности в Android-приложениях
When Kotlin Flow Needs channelFlow and callbackFlow
Understanding MVI in Jetpack Compose with Clean Architecture
The Android Threading Question That 90% of Developers Get Half Right
WorkManager in Android: Background Tasks Done Right
15 Must-Know Android Interview Questions for 2025
Kotlin 2.3.0 Released
18% Faster Compiles, 0% Compromises
1
В то время как такие технологические гиганты, как Google, Amazon и Apple, доминируют на рынке умного дома с закрытыми экосистемами, альтернатива с открытым исходным кодом незаметно набирает обороты. Поклонники домашней автоматизации используют Home Assistant, платформу для самостоятельного управления умным домом. И в этом году с ней произошло нечто грандиозное. По данным Appfigures Intelligence, мобильное приложение Home Assistant, по прогнозам, достигнет 1.7 млн ​​загрузок в 2025 году. Этот рост особенно примечателен, учитывая техническую природу приложения и тот факт, что пользователям необходимо настроить и поддерживать собственный сервер умного дома. Рост Home Assistant показывает, что даже в категориях, где доминируют технологические гиганты, есть место для открытых альтернатив, которые отдают приоритет контролю со стороны пользователя. По мере расширения использования умного дома и накопления пользователями все большего количества устройств в несовместимых экосистемах, спрос на единое, принадлежащее пользователю решение будет только расти.

Разработка

Сдвиг камеры в 2ГИС MSDK на маркер при разных углах поворота камеры
How Pinterest Built a Real‑Time Radar for Violative Content using AI

Маркетинг

Home Assistant — приложение, возглавляющее революцию в сфере «умного дома»
ASOGenius: бесплатный ИИ-инструмент для ASO

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

Announcing RNRepo: Faster React Native Builds Through Prebuilt Artifacts
👍4🍾3
🦸‍♀️ "Станьте инженером, использующим искусственный интеллект" - обучающий курс JetBrains и Nebius

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

Всего на платформе есть 10 курсов и один Live-урок:

• Техники промптинга
• Программирование с ИИ-агентом
• Теория агентского рабочего процесса
• Обзор ИИ-инструментов для разработчиков
• ИИ-агенты как ваша команда
• Создание собственного ИИ-агента
• ИИ в QA
• Введение в ИИ для DevOps
• Легальные риски использования ИИ для программирования
• Создание приложения с ИИ с нуля
• Лабораторная ИИ разработки

Внутри 25 практических задач, выпускной проект. Предполагаемое время на все - около 20 часов. Все бесплатно. Также есть план за $500, который включает более сложную программу обучения и в итоге позволяет получить сертификат.
Please open Telegram to view this post
VIEW IN TELEGRAM
5😁42😐1
Android

Google представил Gemini 3 Flash для Android — новую веху в мобильном ИИ, сочетающую высокую скорость и мультимодальность. Модель оптимизирована для работы с минимальной задержкой, позволяя приложениям мгновенно анализировать текст, изображения и видео прямо на устройстве через Google AI Edge SDK. Для разработчиков это означает возможность создавать более приватные и экономичные решения: обработка данных на девайсе снижает затраты на облачную инфраструктуру и повышает безопасность. Благодаря обновленным инструментам в Android Studio и интеграции с AICore, внедрение функций умного помощника или сложного анализа контента теперь требует гораздо меньше времени и ресурсов.

Android Gradle Graph Plugin — мониторинг зависимостей проекта
Android UI-тесты с Maestro без тяжелой инфраструктуры
Theming Your App for the Holidays
Build smarter apps with Gemini 3 Flash
1
На Хабре hh.ru пишет об эксперименте по ускорению одного экрана. Результат - экран ускорился. Как выросло удовлетворение пользователей и выручка, кажется, осталось за кадром. В комментариях традиционно автору напихали в панамку:
В результате опроса на сайте установленО, что 100% пользователей пользуются интернетом. Что, кроме синтетических непонятных "продуктовых метрик" сделал полезного в итоге ваш тест?

Кайф. Присоединяйтесь.

Разработка

«Станьте инженером, использующим искусственный интеллект» — обучающий курс JetBrains и Nebius
Скандалы, интриги, продуктовые метрики: что нам дало ускорение загрузки экрана в приложении hh
10 Automation Tools Every Lazy Developer Should Use

Маркетинг

Google тестирует помощника по повышению продуктивности на основе электронной почты

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

Building the Same Screen in Flutter, SwiftUI & Compose: A Real Developer’s Reality Chec
3👍2
iOS

Apple внесла ряд изменений в японский App Store, чтобы соответствовать требованиям Закона о конкуренции в сфере мобильного программного обеспечения (Mobile Software Competition Act, MSCA), который вступает в силу 18 декабря. MSCA похож на европейский Закон о цифровых рынках (DMA), поэтому японский App Store будет работать во многом так же, как и европейский App Store, но с некоторыми отличиями. Главное - теперь разработчики смогут принимать сторонние платежи в своих приложениях или направлять пользователей на веб-сайт для совершения покупки, можно запускать альтернативные магазины приложений — приложения могут распространяться через альтернативные магазины приложений вместо App Store. В связи с этим вводятся новые сборы - от 5% до 26% в зависимости от способа распространения и способа оплаты.

Apple обновляет японский App Store для соответствия MSCA
Snowdrop — простая работа с сетью
Frames in SwiftUI Explained
10 SwiftUI Modifiers of iOS 26+ You Probably Missed
Why Startups Are Slowly Abandoning Native iOS
Implementing Consumable In-App Purchases with StoreKit 2
👍4
Android

В новой статье автор рассказывает о распространённой проблеме в Kotlin-коде — огромных блоках when, которые со временем растут и превращаются в трудночитаемый, тяжело поддерживаемый код. Такие конструкции усложняют сопровождение, нарушают принцип открытости/закрытости (Open/Closed Principle) и заставляют постоянно искать и обновлять каждый метод при добавлении нового состояния. Вместо этого автор предлагает использовать паттерн State, который позволяет инкапсулировать поведение по состояниям в отдельные классы и убрать разветвления по действиям в одну точку, делая код чище и проще для изменений. Основная идея статьи — показать, как с помощью современного Kotlin-синтаксиса и объектно-ориентированного подхода можно избавиться от разраставшихся when-выражений, сгруппировав логику по состояниям, а не по действиям. Такой подход улучшает читаемость, соблюдает принципы SOLID и облегчает тестирование, ведь каждый класс-состояние реализует своё поведение. Переход на State Pattern особенно эффективен в случаях, когда объекты изменяют своё поведение в зависимости от состояния, и число таких состояний со временем растёт.

Implementing Play Store Age Signals API in Android (Kotlin)
Stop Writing Massive when Statements: Master the State Pattern in Kotlin
👍3
Прекрасная история о создании Offline-First приложения. В теории? Прекрасно. В реальности? Автор случайно открыл финального босса в прохождении архитектурного квеста — конфликты данных. И не те милые, что описаны в учебниках. А реальные, запутанные, противоречивые ошибки, которые поступают от реальных людей, использующих приложение на разных устройствах, способами, которые ни один менеджер по продукту не мог предсказать. К концу проекта его локальная база данных знала о предательстве и несогласованности больше, чем любые человеческие отношения. Главный урок: приложения, ориентированные на работу в офлайне, кажутся простыми… до поры до времени.

Разработка

Я попытался сделать Offline-First приложение, и это чуть не уничтожили проект
OpenAI открывает ChatGPT для сторонних приложений
Я использовал MVVM на собеседовании в стартапе — меня спросили «почему»
Как мы перевернули подход к мобильным интерфейсам с Backend Driven UI
AI code creates 1.7x more problems

Маркетинг

Apple расширит рекламное пространство в поиске App Store
Прогнозы развития цифровой экономики в 2026 году
Почему ваши воронки вам лгут и как можно измерить ценность действий пользователя

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

Flutter Hot Reload Isn't Enough (And Why Flutter Developers Need Widget Previews)
👍5