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

• Аудитория https://t.me/apptractor/1066
• Сайт https://apptractor.ru/
Download Telegram
Развитие программ раннего доступа Android: Canary канал

Чтобы лучше поддерживать разработчиков и предоставлять более ранний и постоянный доступ к функциям, находящимся в разработке, Google объявляет о существенном обновлении программы предварительных версий. Платформа Android будет иметь Canary канал релизов, который заменит предыдущую программу developer preview для разработчиков. Этот Canary канал будет функционировать параллельно с существующей программой бета-тестирования.

• Вы можете опробовать новые функции и запланированные изменения поведения на самых ранних стадиях их разработки и внести свой вклад. Эти изменения не всегда могут попасть в стабильную версию Android.
• Канал Canary будет работать параллельно с программой бета-тестирования. Программа бета-тестирования по-прежнему позволяет вам опробовать более отлаженный набор функций, которые, вероятно, скоро будут выпущены.
• Вы можете использовать Canary сборки с вашей непрерывной интеграцией (CI), чтобы проверить, не вызывают ли какие-либо из наших функций, находящихся в разработке, непредвиденные проблемы в вашем приложении, что позволит максимально эффективно решать проблемы.

Вы можете использовать Android Flash Tool для установки последней Canary сборки на поддерживаемое устройство Pixel. После установки обновления Canary вы будете получать его по воздуху по мере их появления. Canary выпуски будут доступны на эмуляторе Android через диспетчер устройств в Android Studio (в настоящее время только в канале Android Studio Canary), а Canary SDK будут доступны для разработки через SDK Manager.

Переходя на полноценный Canary канал, Google стремится создать более прозрачный, совместный и эффективный процесс разработки, предоставляя вам беспрепятственный доступ, необходимый для подготовки к будущему Android.
👍31😁1
📺 Видео и подкасты за неделю на @AppFiles

(iOS Ru) Рынок разработки в СНГ, iOS, Переезд в UK
(iOS Ru) Перерисовки в SwiftUI
(iOS En) Apple-Style OnBoarding Page With Animations Using SwiftUI
(iOS En) How to solve SwiftUI performance issues (according to Airbnb iOS engineers)
(iOS En) Liquid Glass update
(iOS En) Mastering Swift Sets : A Practical Guide
(And Ru) Мок-собеседование Android-разработчика: middle и выше (+ все собеседования)
(And En) Back it up, bring it back: No data left behind - Android Developers Backstage
(And En) Google Play PolicyBytes - July 2025 policy updates
(And En) Now in Android: 119 – Android 16, testing, desktop experiences, AndroidX, and more
(And En) Create advanced automations using the Home APIs on Android
(And En) Stateful vs. Stateless Composables In Jetpack Compose? - Everything You Need to Know
(And En) Introduction to Spring Boot for Android Developers In 15min
(And En) Kotlin 2.2 Livestream With the Language Evolution Team
(And En) Model Context Protocol in Kotlin
(And En) Dissecting Kotlin: Surveying the Latest Stable and Experimental
(And En) Taming Asynchronous Beasts: Debugging and Performance Tuning in a Coroutine World
(And En) Creative UIs with Compose
(Crs En) Kotlin and Compose Multiplatform Patterns for iOS Interop
(Dev Ru) Как сделать любую задачу интересной
(Dev Ru) АI за пределами кодинга — ChatGPT, Gemini, Anthropic, AI для бизнеса
(Dev En) VGG From Scratch – Deep Learning Theory & PyTorch Implementation (Full Course)
(Mrk Ru) Как заработать на ASO? Запуск с нуля iOS-приложения INVOICER

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

(iOS Ru) Что нового в Swift 6?
(And Ru) Как обойти множественное наследование в Kotlin и Java. Агрегация и композиция
(Dev Ru) System Design-интервью для практиков
(Dev Ru) Локальная разработка в Авито
Please open Telegram to view this post
VIEW IN TELEGRAM
👍32
Как обнаружить ранний доступ

Все материалы за неделю - понимаем и улучшаем производительность SwiftUI, решаем проблему «деградации» YouTube на Android, определяем потолок в разработке, разбираем большую ложь чистой архитектуры, смотрим на рост цифровой веры и многое другое. Заходите!
👍4
ИИ-инструменты замедляют работу опытных разработчиков

Новое исследование, опубликованное в четверг некоммерческой исследовательской группой METR, ставит под сомнение степень, в которой современные инструменты ИИ-программирования повышают производительность опытных разработчиков.

Для этого исследования METR провела рандомизированное контролируемое исследование, набрав 16 опытных программистов, занимающихся open source разработкой, и поручив им выполнить 246 реальных задач в больших репозиториях кода, в которые они регулярно вносят свой вклад. Исследователи случайным образом распределили примерно половину этих задач как “разрешенные для ИИ”, что дало разработчикам разрешение использовать самые современные инструменты для ИИ-программирования, такие как Cursor Pro, в то время как другая половина задач запрещала использование инструментов ИИ.

Перед выполнением поставленных задач разработчики прогнозировали, что использование ИИ-инструментов сократит время их выполнения на 24%. Но этого не произошло.

“Удивительно, но мы обнаружили, что использование ИИ на самом деле увеличивает время выполнения на 19% — разработчики работают медленнее, когда используют инструменты ИИ”, - говорят исследователи.

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

Исследователи METR указывают на несколько потенциальных причин, по которым искусственный интеллект замедляет работу разработчиков, а не ускоряет ее - чрезмерный оптимизм разработчиков относительно полезности ИИ, их высокая осведомленность о репозиториях, сложность самих репозиториев, низкая надежность ИИ и отсутствие у ИИ неявного контекста проекта.

Авторы исследования стараются не делать каких-либо серьезных выводов из этих результатов, прямо отмечая, что они полагают, что системы искусственного интеллекта в настоящее время все таки в состоянии ускорить работу многих или большинства разработчиков. Они также отмечают, что за последние годы ИИ значительно продвинулся вперед, и что результаты могут улучшиться даже через три месяца.
👍10💯4😁31
Android

Теперь уже официально из уст Самира Самата, президента Android Ecosystem в Google - ChromeOS и Android объединятся в одну платформу. Ранее в 2024 году Google объявил, что объединяет части ядра Android с ChromeOS для более быстрой интеграции искусственного интеллекта. Похоже, что теперь компания будет развивать эту интеграцию и полностью объединит ChromeOS с Android. В последних версиях Google уже добавил в Android несколько функций, характерных для десктопов. Первый квартальный релиз платформы Android 16 в конце этого года только улучшит ситуацию, добавив режим десктопа для многооконной многозадачности. Эта функция также появится на планшетах, что сделает их лучшей альтернативой десктопам для большинства пользователей. Но могут пройти годы, прежде чем Google завершит слияние ChromeOS с Android, так что быстрого появления альтернативе экосистемы от Applr вряд ли стоит ждать.

Google объединит ChromeOS с Android
LazyTimetable — быстрое расписание для Jetpack Compose
Мок-собеседование Android-разработчика: middle и выше
Развитие программ раннего доступа Android: Canary канал
Improve Your Kotlin Code Quality with Detekt in Android
Mastering Android Text-to-Speech: The Ultimate Guide
Creating an Engaging Progress Button in Jetpack Compose
Nested Scrolling in Jetpack Compose
3👍3🙊3
iOS

В статье показано, как объединить удобный для разработчиков дизайн Swift с высокой производительностью C++. Она предлагает четкий план по управлению памятью и обработке ошибок, иллюстрируя эти концепции на подробном примере проекта банкомата. Такое взаимодействие оказывается чрезвычайно полезным для создания кроссплатформенных инструментов и поддержки единой кодовой базы для различных сред, включая платформы Apple, Linux, Windows и встраиваемые системы. Это значительно повышает эффективность разработки и надежность кода.

Рынок разработки в СНГ, iOS, Переезд в UK
Перерисовки в SwiftUI
Swift State Graph — управления состояниями на основе графов для SwiftUI и UIKit
Supporting sufficient contrast accessibility with Xcode's Color Contrast Calculator
App Intents Interactive Snippets in iOS 26
Swift and C++ interoperability in practice
👍1
В первой статье автор рассказывает о том, как создать "продающее" резюме (по крайней мере то, которое минует Applicant Tracking System). Советы достаточно банальные, но давно мы их не повторяли. так что если вы размещаете резюме - посмотрите чеклист в статье.

Разработка

Как [iOS] разработчику сделать хорошее резюме (которое действительно привлечет внимание ведущих компаний)
ИИ-инструменты замедляют работу опытных разработчиков
Как сделать любую задачу интересной
АI за пределами кодинга — ChatGPT, Gemini, Anthropic, AI для бизнеса
AI slows down open source developers. Peter Naur can teach us why.

Маркетинг

Как заработать на ASO? Запуск с нуля iOS-приложения INVOICER

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

Compose Multiplatform + Ktor: Secure Networking with Bearer Auth and Shared Code
👍61
Подписки в приложениях 2025 - отчет Adapty

В Adapty выпустили ежегодный отчет о подписках в приложениях. Он основан на $1.9 млрд дохода от 11,000+ приложений, обслуживаемых Adapty.  Вот некоторые интересные факты из него.

• США остаются крупнейшим рынком продаж подписок в приложениях, на долю страны приходится 48.9% от общей выручки. На втором месте Европа с 24.77%.
• Наибольший рост за год продемонстрировали еженедельные подписки - сейчас они дают почти половину денег от всех покупок. Количество разовых покупок быстро растёт, а долгосрочные планы снижаются.
• Цены на еженедельную подписку выросли во всех регионах. Европа и США продемонстрировали самый быстрый рост.
• В США триал увеличивает 12-месячный LTV на 64%. В Европе триал увеличивает 12-месячный LTV на 58%. В LATAM это 55%, в APAC 26% и в MEA рост на 46%.
• В США LTV установки достигает 2 долларов, что обусловлено коэффициентом конверсии 4.54% и расходами на одного плательщика в размере 43.64 доллара. В Европе установка дает ~0,6 доллара с более низким коэффициентом конверсии. Латинская Америка, Азиатско-Тихоокеанский регион и Ближний Восток и Африка отстают, с LTV установки менее 0.35 долларов. Это объясняется главным образом тем, что меньше пользователей конвертируются, а не тем, что плательщики тратят меньше.
• Еженедельные подписки демонстрируют самый резкий спад (65%) после 30 дней, в то время как ежемесячные планы сохраняют больше пользователей с течением времени.
• Команды, которые экспериментируют и проводят A/B тесты, могут получить до 100 раз больше дохода.
4👍4
iOS

Swift предлагает несколько решений для блокировки доступа к изменяемому контенту и предотвращения так называемых гонок данных. Блокировки, такие как NSLock, DispatchSemaphore или последовательная DispatchQueue, являются популярным выбором для многих. В некоторых статьях сравнивается их производительность и указывается, какая из них работает лучше всего, но в этой статье  Антуан ван дер Ли представляет современный вариант блокировки Swift, представленный в SE-433 Synchronous Mutual Exclusion Lock - стандартизированную версию так называемого блокировщика Mutex.

Поставьте 👍, если хотите эту статью на русском!

DynamicBottomSheet — настраиваемый bottom sheet для UIKit
10 Swift Pitfalls You Won’t See Until It’s Too Late
Morphing glass effect elements into one another with glassEffectID
Modern Swift Lock: Mutex & the Synchronization Framework
👍12
Android

Теперь разработчики могут разделять что продаётся и как это продаётся. Вводится иерархия «one-time product → purchase options → offers»: товар (например, «Монеты»), варианты покупки (покупка, аренда) и спецпредложения (скидки, предпродажи). Это значительно упрощает управление каталогом и позволяет снизить операционные расходы — один и тот же продукт можно продавать по-разному в разных регионах и условиях. Добавлены аренда с указанием срока действия, предпродажи с датами старта и релиза, гибкая региональная ценовая политика без необходимости задавать «цену по умолчанию», а также промо‑офферы для акций и запуска. Эти функции доступны после миграции на PBL 8.0 и через новый API — monetization.onetimeproducts и queryProductDetailsAsync. Всё это помогает быстрее адаптировать предложение к рынкам, экономить на SKUs и эффективнее монетизировать приложение.

Создание красивой кнопки с прогрессом в Jetpack Compose
Android. Кража данных через клавиатуру: миф или реальность?
Предварительный просмотр Jetpack Compose-анимации по ключевым кадрам в Android Studio
New tools to help drive success for one-time products
Kotlin: Custom Extension Functions for a Senior Developer’s Toolkit
Refactoring a ViewModel: From Reactive Workarounds to Constructor Injection
6 Lesser-Known Jetpack Compose Tricks That Instantly Improve Your UI
1
🤖 А вот тут выдают объяснение вчерашнего исследования того, как ИИ замедляет работу программистов. Когда мы пишем программное обеспечение, реальным продуктом является наша ментальная модель созданной нами программы. Именно эта модель позволила нам создавать программное обеспечение, и в будущем она позволит нам понимать систему, диагностировать проблемы в ней и эффективно работать с ней. Это объясняет такие вещи, как то, почему все ненавидят устаревший код, почему небольшие команды могут превосходить по производительности более крупные, почему аутсорсинг обычно заканчивается плохо и т.д. Разработчики могли предоставить части этой ментальной модели своим инструментам искусственного интеллекта, но это медленный и неэффективный процесс, который никогда не сможет полностью отразить теорию программы, существующую в их умах. Передав свою работу по разработке программного обеспечения LLM, они ограничили свою уникальную способность эффективно работать с кодовой базой. Когда вы ограничены передачей ментальной модели через текст субъекту, который никогда не будет оспаривать или задавать уточняющие вопросы, который не может действительно учиться и который не может рассматривать одно утверждение как более важное, чем любое другое, — тогда задача передачи знаний становится практически невыполнимой.

Так что, это значит, что LLM лучше не использовать? Ну, возможно, нет. ИИ-инструменты замедляют работу тех, кто «знает, что делает, и работает над проектом, который понимает» — подходит ли это описание к среднестатистическому разработчику программного обеспечения в отрасли? Подходит ли это описание к разработчикам программного обеспечения в вашей компании? риторические вопросы. Так что если вы планируете работать над проектом в долгосрочной перспективе, хотите по-настоящему его понять и иметь возможность эффективно вносить изменения, то вам следует просто написать код самостоятельно. Если же вы просто штампуете код на фабрике по производству кода, то установите Cursor и приступайте к делу.

Разработка

ИИ замедляет работу разработчиков — мы может объяснить почему
AWS выпустил Kiro IDE для вайб кодинга

Маркетинг

Подписки в приложениях 2025 — отчет Adapty
Netflix’s New Welcome Screen: The UX Revolution That’s Changing Streaming Forever

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

Flutter 3.32.0: Why Thousands of Developers Already Made the Switch
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2💯21
🩴 iOS

Перевел вчерашнюю статью про мьютексы и заодно нашел на Reddit интересное обсуждение "5 лет назад я перешел в iOS-разработку и кажется начинаю жалеть об этом". Обсудили, действительно ли чувак Senior и как этого достичь за 5 лет, ситуацию с работой, куда можно податься и что делать в целом с мобильной разработкой. Увлекательнейшее чтение.

Современные блокировки в Swift: мьютекс и фреймворк Synchronization
10 ловушек Swift, которые вы не заметите, пока не станет слишком поздно
async let vs Task group
I've been an iOS developer for 5 years, and I'm starting to regret it
Mastering Swift 6.2 Concurrency: A Complete Tutorial
Cracking the iOS Interview: Swift, API’s and Architecture (2025)
Build Custom Transitions in SwiftUI: Guide to Navigation Zoom, Detents & Custom Animations in Views
Please open Telegram to view this post
VIEW IN TELEGRAM
2🤔1
Android

Новая серия в "Tricky Android Interview Questions" - про контекст и активити. Правда, всего два вопроса, "Что произойдет, если Activity вызовет finish() внутри onCreate?" и "Что произойдет, если вы вызовете startActivity() с использованием applicationContext?". Зато внутри много объяснений происходящему.

MBCompass — компас для Android на Jetpack Compose
Tricky Android Interview Questions: Context & Activity Edition
Understanding AnnotatedString in Jetpack Compose: Styling Text Like a Pro
From Android 14 to 15: A Practical Guide to Adapting the Legacy View System for Edge-to-Edge
Easiest Way to Create a Shimmer Effect in Jetpack Compose
👍4
🤖 ChatGPT стал самым скачиваемым приложением в мире второй месяц подряд, завершив июнь с 50 миллионами скачиваний из App Store и Google Play. Еще в апреле у ChatGPT было более 546 миллионов активных пользователей приложения, сейчас уже, наверное, близко к миллиарду. Так что ChatGPT стал для большинства людей «Google» в области искусственного интеллекта, и вряд ли это изменится в ближайшее время. С другой стороны, кажется, остается масса ниш, в которых можно обернуть ChatGPT и выкатить свой продукт. Делаете что-нибудь такое? Поделитесь в комментариях.

Разработка

The Future of AI in Software Development

Маркетинг

Nextdoor переработал приложение, добавив ИИ-рекомендации, местные новости и оповещения
Самые скачиваемые и зарабатывающие приложения в мире в июне 2025
Don't get impressed by MRR/sales numbers too fast
My First Year at RevenueCat

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

Как сделать мобильное приложение в 2025 году за 2 недели
From Kotlin Hilt to Flutter Injectable: A Developer’s Guide
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
iOS

Статья показывают примеры, как быстро можно оживить любую часть интерфейса - тулбары, вкладки, пользовательские представления - с минимальным количеством кода, буквально одной строчкой. Разработчики получат современный, динамичный UI, который адаптируется к содержимому и выглядит как часть нового дизайн-языка Liquid Glass от Apple. Это удобное и мощное решение для создания визуально привлекательных и отзывчивых приложений на SwiftUI.

Numerix — линейная алгебра и численные вычисления с помощью Swift
Giving Claude Code Eyes to See Your SwiftUI Views
Glassifying custom SwiftUI views
👍3