- BrainTools - https://www.braintools.ru -

Мобильная разработка за неделю #594 (14 — 20 июля)

В новом выпуске современные блокировки в Swift и узники Apple, повышение производительности Android-приложения в Duolingo и кража данных через клавиатуру, мобильное предложение за две недели, ИИ-инструменты, которые замедляют работу опытных разработчиков, подписки в приложениях 2025, ИИ на edge-устройствах и многое другое. Заходите!

Мобильная разработка за неделю #594 (14 — 20 июля) - 1

Подписывайтесь на мой Telegram-канал Mobile Insights [1], где еще больше материалов для мобильных разработчиков.

iOS

• Современные блокировки в Swift: мьютекс и фреймворк Synchronization [2]
• async let против Task group [3]
• Sideloading и узник Apple [4]
• 10 ловушек Swift, которые вы не заметите, пока не станет слишком поздно [5]
• Supporting sufficient contrast accessibility with Xcode’s Color Contrast Calculator [6]
• App Intents Interactive Snippets in iOS 26 [7]
• Swift and C++ interoperability in practice [8]
• Morphing glass effect elements into one another with glassEffectID [9]
• I’ve been an iOS developer for 5 years, and I’m starting to regret it [10]
• Mastering Swift 6.2 Concurrency: A Complete Tutorial [11]
• Cracking the iOS Interview: Swift, API’s and Architecture (2025) [12]
• Build Custom Transitions in SwiftUI: Guide to Navigation Zoom, Detents & Custom Animations in Views [13]
• Giving Claude Code Eyes to See Your SwiftUI Views [14]
• Glassifying custom SwiftUI views [15]
• Latest Symbol Effects + OnBoarding Animation Using SwiftUI [16]
• ChatGPT in Xcode 26: there’s a hidden prompt [17]
• Build Your First AI Chatbot App with SwiftUI + Foundation Models Framework [18]
• Swift’s Measurement API — From Miles to Meters and Beyond [19]
• Recreating iOS 26 Tab Bar for iOS 16.4+ devices using SwiftUI (Without Liquid Glass) [20]
• Numerix — линейная алгебра и численные вычисления с помощью Swift [21]
• DynamicBottomSheet — настраиваемый bottom sheet для UIKit [22]

Android

• Как в Duolingo повысили производительность Android-приложения (и количество активных пользователей!) [23]
• Создание красивой кнопки с прогрессом в Jetpack Compose [24]
• Android. Кража данных через клавиатуру: миф или реальность? [25]
• Переходишь на Compose? Не спеши! [26]
• Как работает ТВ в Android TV? [27]
• Нужны ли Android-разработчики на заводе? [28]
• Google объединит ChromeOS с Android [29]
• Improve Your Kotlin Code Quality with Detekt in Android [30]
• Mastering Android Text-to-Speech: The Ultimate Guide [31]
• Nested Scrolling in Jetpack Compose [32]
• New tools to help drive success for one-time products [33]
• Kotlin: Custom Extension Functions for a Senior Developer’s Toolkit [34]
• Refactoring a ViewModel: From Reactive Workarounds to Constructor Injection [35]
• 6 Lesser-Known Jetpack Compose Tricks That Instantly Improve Your UI [36]
• Tricky Android Interview Questions: Context & Activity Edition [37]
• Understanding AnnotatedString in Jetpack Compose: Styling Text Like a Pro [38]
• From Android 14 to 15: A Practical Guide to Adapting the Legacy View System for Edge-to-Edge [39]
• Easiest Way to Create a Shimmer Effect in Jetpack Compose [40]
• Jetpack Compose for Desktop — Overview & Example [41]
• Compose Multiplatform + Ktor: Secure Networking with Bearer Auth and Shared Code [42]
• Ktor 3.2.2 Is Now Available [43]
• Build a Runtime-Enabled SDK [44]
• Home APIs tips & tricks [45]
• THIS Brand New Attribute Makes Compose Texts Fully Responsive (Auto-Scaling!) [46]
• Designing Kotlin Beyond Type Inference [47]
• Collect Like a Pro: a deep dive on the Android lifecycle-aware coroutines APIs [48]
• From 0 to h-AI-ro: high-speed track to AI for Kotlin developers [49]
• Everything you need to know about the NEW Material’s Evolution [50]
• Publish JVM Library to Maven Central with Gradle (2025 Guide) [51]
• Data-Driven Build Optimization: Empower Your Teams with Develocity Reporting and Visualization [52]
• Torrent Search — поиск торрентов в Material 3 [53]
• MBCompass — компас для Android на Jetpack Compose [54]
• LazyTimetable — быстрое расписание для Jetpack Compose [55]

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

• Как мы переписали мобильное приложение с React Native на Flutter [56]
• Как сделать мобильное приложение в 2025 году за 2 недели [57]
• Compose Multiplatform + Ktor: Secure Networking with Bearer Auth and Shared Code [42]
• Flutter 3.32.0: Why Thousands of Developers Already Made the Switch [58]
• From Kotlin Hilt to Flutter Injectable: A Developer’s Guide [59]
• The 7 Flutter Secrets That Separate $200K Developers from Everyone Else [60]
• Write Flutter Like Google [61]
• Making native SDKs Multiplatform at RevenueCat [62]
• Deploying Kotlin Multiplatform at Google Workspace [63]

Разработка

• ИИ-инструменты замедляют работу опытных разработчиков [64]ИИ замедляет работу — мы может объяснить почему [65]
• Рутину — ИИ, исследование — людям: новая реальность Surf QA [66]
• Кейс каршеринга по пересборке real-time поиска машин, который принёс x3 выручки на поездку [67]
• Стартап за 100 дней. Неделя вторая. Проектируем онбординг приложения [68]
• Cтартапы, работа в США, путь в IT [69]
• Привет, я ваш новый тимлид [70]
• Батарейки заряжены! Как отдыхать и восстанавливаться, не уходя в отпуск [71]
• AWS выпустил Kiro IDE для вайб кодинга [72]
• Как [iOS] разработчику сделать хорошее резюме (которое действительно привлечет внимание ведущих компаний) [73]
• The Future of AI in Software Development [74]
• How AI Vibe Coding Is Destroying Junior Developers’ Careers [75]
• Project Creation & First Hello World App — Spring Boot 4 Basics With Kotlin [76]
• Behavioral Interview: Full Preparation Guide [77]

Аналитика, маркетинг и монетизация

• Подписки в приложениях 2025 — отчет Adapty [78]
• Искусственный интеллект и будущее мобильной рекламы: как LLM меняют правила игры [79]
• Nextdoor переработал приложение, добавив ИИ-рекомендации, местные новости и оповещения [80]
• Самые скачиваемые и зарабатывающие приложения в мире в июне 2025 [81]
• Заработок на Budget Tracker. iOS. Подписки. Разбор ниши [82]
• Netflix’s New Welcome Screen: The UX Revolution That’s Changing Streaming Forever [83]
• Don’t get impressed by MRR/sales numbers too fast [84]
• My First Year at RevenueCat [85]

AI, Устройства, IoT

• Как уместить ИИ на edge-устройствах [86]
• Обзор Waveshare ESP32-P4-86-Panel-ETH-2RO: новый уровень DIY-панелей в контексте ESPHome [87]
• RKNN Toolkit2: конвертация моделей и симуляция NPU Rockchip [88]
• King проводит увольнения и заменяет людей на ИИ [89]
• Как измерить AI — Бенчмарки, тестирование и обучение LLM [90]

Предыдущий дайджест [91]. Если у вас есть другие интересные материалы или вы нашли ошибку [92] — пришлите, пожалуйста, в почту.

Автор: RoboForm

Источник [93]


Сайт-источник BrainTools: https://www.braintools.ru

Путь до страницы источника: https://www.braintools.ru/article/17463

URLs in this post:

[1] Mobile Insights: https://t.me/apptractor

[2] Современные блокировки в Swift: мьютекс и фреймворк Synchronization: https://apptractor.ru/info/articles/sovremennye-blokirovki-v-swift-myuteks-i-freymvork-synchronization.html

[3] async let против Task group: https://habr.com/ru/companies/otus/articles/928172/

[4] Sideloading и узник Apple: https://apptractor.ru/info/media/sideloading-i-uznik-apple.html

[5] 10 ловушек Swift, которые вы не заметите, пока не станет слишком поздно: https://apptractor.ru/info/articles/10-lovushek-swift-kotorye-vy-ne-zametite-poka-ne-stanet-slishkom-pozdno.html

[6] Supporting sufficient contrast accessibility with Xcode’s Color Contrast Calculator: https://tanaschita.com/ios-accessibility-contrast/

[7] App Intents Interactive Snippets in iOS 26: https://superwall.com/blog/app-intents-interactive-snippets-in-ios-26

[8] Swift and C++ interoperability in practice: https://arturgruchala.com/swift-and-c-interoperability-in-practice/

[9] Morphing glass effect elements into one another with glassEffectID: https://www.createwithswift.com/morphing-glass-effect-elements-into-one-another-with-glasseffectid/

[10] I’ve been an iOS developer for 5 years, and I’m starting to regret it: https://www.reddit.com/r/iOSProgramming/comments/1m157ki/ive_been_an_ios_developer_for_5_years_and_im/

[11] Mastering Swift 6.2 Concurrency: A Complete Tutorial: https://medium.com/@matgnt/mastering-swift-6-2-concurrency-a-complete-tutorial-99a939b0f53b

[12] Cracking the iOS Interview: Swift, API’s and Architecture (2025): https://medium.com/ios-journeys/cracking-the-ios-interview-swift-apis-and-architecture-2025-5bc5cd20763d

[13] Build Custom Transitions in SwiftUI: Guide to Navigation Zoom, Detents & Custom Animations in Views: https://swift-pal.com/build-custom-transitions-in-swiftui-guide-to-navigation-zoom-detents-custom-animations-in-views-0f3ebcb30036

[14] Giving Claude Code Eyes to See Your SwiftUI Views: https://twocentstudios.com/2025/07/13/giving-claude-code-eyes-to-see-your-swiftui-views/

[15] Glassifying custom SwiftUI views: https://swiftwithmajid.com/2025/07/16/glassifying-custom-swiftui-views/

[16] Latest Symbol Effects + OnBoarding Animation Using SwiftUI: https://www.youtube.com/watch?v=EsG5AybX2kk

[17] ChatGPT in Xcode 26: there’s a hidden prompt: https://www.youtube.com/watch?v=e75mdQL-I8o

[18] Build Your First AI Chatbot App with SwiftUI + Foundation Models Framework: https://www.youtube.com/watch?v=wl0vZrQ5J9Q

[19] Swift’s Measurement API — From Miles to Meters and Beyond: https://www.youtube.com/watch?v=tXbYO5MGjYU

[20] Recreating iOS 26 Tab Bar for iOS 16.4+ devices using SwiftUI (Without Liquid Glass): https://www.youtube.com/watch?v=pmsi5qYPWrY

[21] Numerix — линейная алгебра и численные вычисления с помощью Swift: https://apptractor.ru/info/github/numerix.html

[22] DynamicBottomSheet — настраиваемый bottom sheet для UIKit: https://apptractor.ru/info/github/dynamicbottomsheet.html

[23] Как в Duolingo повысили производительность Android-приложения (и количество активных пользователей!): https://apptractor.ru/info/articles/duolingo-android-app-performance.html

[24] Создание красивой кнопки с прогрессом в Jetpack Compose: https://apptractor.ru/info/articles/sozdanie-krasivoy-knopki-s-progressom-v-jetpack-compose.html

[25] Android. Кража данных через клавиатуру: миф или реальность?: https://habr.com/ru/articles/927726/

[26] Переходишь на Compose? Не спеши!: https://apptractor.ru/info/media/perehodish-na-compose-ne-speshi.html

[27] Как работает ТВ в Android TV?: https://apptractor.ru/info/media/kak-rabotaet-tv-v-android-tv.html

[28] Нужны ли Android-разработчики на заводе?: https://apptractor.ru/info/media/nuzhny-li-android-razrabotchiki-na-zavode.html

[29] Google объединит ChromeOS с Android: https://apptractor.ru/info/news/google-obedinit-chromeos-s-android.html

[30] Improve Your Kotlin Code Quality with Detekt in Android: https://medium.com/@anandgaur2207/improve-your-kotlin-code-quality-with-detekt-in-android-135615ab8caf

[31] Mastering Android Text-to-Speech: The Ultimate Guide: https://proandroiddev.com/mastering-android-text-to-speech-the-ultimate-guide-8932b21afcda

[32] Nested Scrolling in Jetpack Compose: https://victorbrandalise.com/nested-scrolling-in-jetpack-compose/

[33] New tools to help drive success for one-time products: https://android-developers.googleblog.com/2025/07/new-tools-to-help-drive-success-for-one-time-products.html

[34] Kotlin: Custom Extension Functions for a Senior Developer’s Toolkit: https://pbs009.medium.com/kotlin-custom-extension-functions-for-a-senior-developers-toolkit-110b061a8b43

[35] Refactoring a ViewModel: From Reactive Workarounds to Constructor Injection: https://levelup.gitconnected.com/refactoring-a-viewmodel-from-reactive-workarounds-to-constructor-injection-c9c6d6f53c84

[36] 6 Lesser-Known Jetpack Compose Tricks That Instantly Improve Your UI: https://medium.com/@maliksaif070/6-lesser-known-jetpack-compose-tricks-that-instantly-improve-your-ui-79d14943a7cb

[37] Tricky Android Interview Questions: Context & Activity Edition: https://levelup.gitconnected.com/tricky-android-interview-questions-context-activity-edition-f87d1e252b67

[38] Understanding AnnotatedString in Jetpack Compose: Styling Text Like a Pro: https://nameisjayant.medium.com/understanding-annotatedstring-in-jetpack-compose-styling-text-like-a-pro-607a0d00173f

[39] From Android 14 to 15: A Practical Guide to Adapting the Legacy View System for Edge-to-Edge: https://medium.com/@mickcolai/from-android-14-to-15-a-practical-guide-to-adapting-the-legacy-view-system-for-edge-to-edge-a0232d7aea30

[40] Easiest Way to Create a Shimmer Effect in Jetpack Compose: https://proandroiddev.com/easiest-way-to-create-a-shimmer-effect-in-jetpack-compose-b56eae5e311e

[41] Jetpack Compose for Desktop — Overview & Example: https://medium.com/@abhinay212/jetpack-compose-for-desktop-overview-example-64972c0fa0b1

[42] Compose Multiplatform + Ktor: Secure Networking with Bearer Auth and Shared Code: https://proandroiddev.com/compose-multiplatform-ktor-secure-networking-with-bearer-auth-and-shared-code-93a5e32b2c4e

[43] Ktor 3.2.2 Is Now Available: https://blog.jetbrains.com/kotlin/2025/07/ktor-3-2-0-is-now-available-2/

[44] Build a Runtime-Enabled SDK: https://www.youtube.com/watch?v=UYp_uJxuN9Q

[45] Home APIs tips & tricks: https://www.youtube.com/watch?v=Tk-ycqBPpig

[46] THIS Brand New Attribute Makes Compose Texts Fully Responsive (Auto-Scaling!): https://www.youtube.com/watch?v=Ja1h0-UsyBI

[47] Designing Kotlin Beyond Type Inference: https://www.youtube.com/watch?v=P0mo8Tzrapo

[48] Collect Like a Pro: a deep dive on the Android lifecycle-aware coroutines APIs: https://www.youtube.com/watch?v=qJB5iX2cOu0

[49] From 0 to h-AI-ro: high-speed track to AI for Kotlin developers: https://www.youtube.com/watch?v=zBgb0z1pQkM

[50] Everything you need to know about the NEW Material’s Evolution: https://www.youtube.com/watch?v=StTkiL8IXus

[51] Publish JVM Library to Maven Central with Gradle (2025 Guide): https://www.youtube.com/watch?v=nd2ULXyBaV8

[52] Data-Driven Build Optimization: Empower Your Teams with Develocity Reporting and Visualization: https://www.youtube.com/watch?v=7VumcqYyHOk

[53] Torrent Search — поиск торрентов в Material 3: https://apptractor.ru/info/github/torrent-search.html

[54] MBCompass — компас для Android на Jetpack Compose: https://apptractor.ru/info/github/mbcompass.html

[55] LazyTimetable — быстрое расписание для Jetpack Compose: https://apptractor.ru/info/github/lazytimetable.html

[56] Как мы переписали мобильное приложение с React Native на Flutter: https://habr.com/ru/articles/929058/

[57] Как сделать мобильное приложение в 2025 году за 2 недели: https://habr.com/ru/articles/928178/

[58] Flutter 3.32.0: Why Thousands of Developers Already Made the Switch: https://medium.com/@sharma-deepak/flutter-3-32-0-why-500k-developers-already-made-the-switch-e6026038c19d

[59] From Kotlin Hilt to Flutter Injectable: A Developer’s Guide: https://medium.com/@bedirhanssaglam/from-kotlin-hilt-to-flutter-injectable-a-developers-guide-7bc0af668b1f

[60] The 7 Flutter Secrets That Separate $200K Developers from Everyone Else: https://medium.com/@sharma-deepak/the-7-flutter-secrets-that-separate-200k-developers-from-everyone-else-d398d9a7ef46

[61] Write Flutter Like Google: https://medium.com/@sharma-deepak/write-flutter-like-google-895d6066c6fe

[62] Making native SDKs Multiplatform at RevenueCat: https://www.youtube.com/watch?v=5Sc3Qdb0XoQ

[63] Deploying Kotlin Multiplatform at Google Workspace: https://www.youtube.com/watch?v=5lkZj4v4-ks

[64] ИИ-инструменты замедляют работу опытных разработчиков: https://apptractor.ru/info/analytics/ii-instrumenty-zamedlyayut-rabotu-opytnyh-razrabotchikov.html

[65] ИИ замедляет работу — мы может объяснить почему: https://apptractor.ru/info/articles/ii-zamedlyaet-rabotu-razrabotchikov-my-mozhet-obyasnit-pochemu.html

[66] Рутину — ИИ, исследование — людям: новая реальность Surf QA: https://habr.com/ru/companies/surfstudio/articles/928254/

[67] Кейс каршеринга по пересборке real-time поиска машин, который принёс x3 выручки на поездку: https://habr.com/ru/companies/citydrive/articles/928916/

[68] Стартап за 100 дней. Неделя вторая. Проектируем онбординг приложения: https://habr.com/ru/articles/927430/

[69] Cтартапы, работа в США, путь в IT: https://apptractor.ru/info/media/ctartapy-rabota-v-ssha-put-v-it.html

[70] Привет, я ваш новый тимлид: https://apptractor.ru/info/media/privet-ya-vash-novyy-timlid.html

[71] Батарейки заряжены! Как отдыхать и восстанавливаться, не уходя в отпуск: https://apptractor.ru/info/media/batareyki-zaryazheny-kak-otdyhat-i-vosstanavlivatsya-ne-uhodya-v-otpusk.html

[72] AWS выпустил Kiro IDE для вайб кодинга: https://apptractor.ru/info/news/aws-vypustil-kiro-ide-dlya-vayb-kodinga.html

[73] Как [iOS] разработчику сделать хорошее резюме (которое действительно привлечет внимание ведущих компаний): https://apptractor.ru/info/articles/prepare-a-strong-resume.html

[74] The Future of AI in Software Development: https://blog.jetbrains.com/ai/2025/07/the-future-of-ai-in-software-development/

[75] How AI Vibe Coding Is Destroying Junior Developers’ Careers: https://www.finalroundai.com/blog/ai-vibe-coding-destroying-junior-developers-careers

[76] Project Creation & First Hello World App — Spring Boot 4 Basics With Kotlin: https://www.youtube.com/watch?v=eRej0b_Bm7A

[77] Behavioral Interview: Full Preparation Guide: https://www.youtube.com/watch?v=oNf5L0nvHpk

[78] Подписки в приложениях 2025 — отчет Adapty: https://apptractor.ru/measure/app-store-analytics/podpiski-v-prilozheniyah-2025-otchet-adapty.html

[79] Искусственный интеллект и будущее мобильной рекламы: как LLM меняют правила игры: https://apptractor.ru/marketing-monetization/iskusstvennyy-intellekt-i-buduschee-mobilnoy-reklamy-kak-llm-menyayut-pravila-igry.html

[80] Nextdoor переработал приложение, добавив ИИ-рекомендации, местные новости и оповещения: https://apptractor.ru/info/apps/nextdoor-new.html

[81] Самые скачиваемые и зарабатывающие приложения в мире в июне 2025: https://apptractor.ru/measure/app-store-analytics/samye-skachivaemye-i-zarabatyvayuschie-prilozheniya-v-mire-v-iyune-2025.html

[82] Заработок на Budget Tracker. iOS. Подписки. Разбор ниши: https://apptractor.ru/measure/app-store-analytics/zarabotok-na-budget-tracker-ios-podpiski-razbor-nishi.html

[83] Netflix’s New Welcome Screen: The UX Revolution That’s Changing Streaming Forever: https://uxplanet.org/the-hidden-genius-behind-netflixs-new-welcome-page-and-why-rivals-will-copy-it-a066c61b947d

[84] Don’t get impressed by MRR/sales numbers too fast: https://www.reddit.com/r/iOSProgramming/comments/1m0tpnc/dont_get_impressed_by_mrr_sales_numbers_too_fast/

[85] My First Year at RevenueCat: https://www.optimistic-closures.com/my-first-year-at-revenuecat/

[86] Как уместить ИИ на edge-устройствах: https://habr.com/ru/companies/magnus-tech/articles/926260/

[87] Обзор Waveshare ESP32-P4-86-Panel-ETH-2RO: новый уровень DIY-панелей в контексте ESPHome: https://habr.com/ru/articles/929042/

[88] RKNN Toolkit2: конвертация моделей и симуляция NPU Rockchip: https://habr.com/ru/companies/ods/articles/928974/

[89] King проводит увольнения и заменяет людей на ИИ: https://apptractor.ru/info/news/king-provodit-uvolneniya-i-zamenyaet-lyudey-na-ii.html

[90] Как измерить AI — Бенчмарки, тестирование и обучение LLM: https://apptractor.ru/info/media/kak-izmerit-ai-benchmarki-testirovanie-i-obuchenie-llm.html

[91] Предыдущий дайджест: https://habr.com/ru/articles/927274/

[92] ошибку: http://www.braintools.ru/article/4192

[93] Источник: https://habr.com/ru/articles/929326/?utm_source=habrahabr&utm_medium=rss&utm_campaign=929326

www.BrainTools.ru

Rambler's Top100