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

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

В новом выпуске 7 способов найти логи и поймать баг на iOS, разбираем «Telega» по винтикам и делаем эффект глюка, очки на Android XR, что ждёт Kotlin Multiplatform разработчика на собесе, реверс обфускации Amazon Kindle Web, удаление Tea и TeaOnHer из App Store и многое другое. Заходите!

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

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

iOS

• Сам себе Шерлок: 7 способов найти логи и поймать баг на iOS [3]
• Combine – швейцарский нож iOS-разработчика. Или нет? [4]
• Build, run and debug iOS and Mac apps in Zed instead of Xcode [5]
• Advanced Codable [6]
• Foundation Models profiling with Xcode Instruments [7]
• When SwiftUI automatically applies the glass look and when it doesn’t [8]
• Tunable, physics-driven motion primitives for SwiftUI [9]
• Why a custom ViewModifier is often useless [10]
• Integrating Device Camera in SwiftUI Apps [11]
• SwiftUI Architecture: Structure Views for Reusability and Clarity [12]
• Why SwiftUI Uses some View Instead of View: Every iOS Developer Should Know [13]
• 5 TabBar SwiftUI Styles You Can Use [14]
• Speed up your builds with the remote Tuist cache for Xcode [15]
• Comparing Two Views with a Gesture-Controlled Slider in SwiftUI [16]
• Open source case study: Listening to our users [17]
• Latest Senior iOS Interview Question Trends (2025) [18]
• Opt for Localized Strings [19]
• We Migrated 40,000 Lines of Objective-C to Swift. Here’s What Nearly Killed Us. [20]
• Building an iOS Ghibli App with SwiftUI, MVVM, and Swift Concurrency [21]
• Create immersive media experiences for visionOS [22]
• SwiftUI Course for Beginners – Create an iOS App from Scratch [23]
• 5 Useful SwiftUI Modifiers [24]
• Foundation Models Framework in Swift [25]
• iOS 26 Style Floating Sheets Using SwiftUI [26]
• Kinetics — настраиваемые примитивы физического движения для SwiftUI [27]
• MarkdownView — отображение markdown контента в SwiftUI [28]

Android

• Разбираем «Telega» по винтикам: «бесплатный» сыр только в мышеловке [29]
• Эффект глюка на Jetpack Compose [30]
• Samsung и Google представили Galaxy XR [31]
• Samsung показал очки на Android XR [32]
Что такое ANR и как с ним работать правильно [33]
• Google Регистрация в Android на Kotlin + Jetpack Compose [34]
• Как обеспечить стабильную работу SDK для миллионов устройств [35]
• Избавляемся от Context в бизнес логике — как ответить на собеседовании [36]
• Google запускает Google Play Apps Accelerator [37]
• Shrinking Elephants [38]
• Understanding retain{} internals: A Scope-based State Preservation in Jetpack Compose [39]
• Jetpack Compose: Static vs Dynamic CompositionLocals — Reads, Writes and Trade Offs [40]
• How to use the Develocity IntelliJ plugin to speed up Gradle builds with real-time insights [41]
• Android Interview Questions — Part 4: Real Questions, Clear Answers [42]
• Building a Production-Ready OTT Video Player for Android [43]
• The LeakCanary Method [44]
• Animated Material3 ToggleButton in Jetpack Compose [45]
• Bringing Androidify to XR with the Jetpack XR SDK [46]
• Android Interview Questions — Part 4: Real Questions, Clear Answers [47]
• Top Android Libraries 2025 [48]
• Name-based destructuring in Kotlin [49]
• Structured Concurrency in Android [50]
• Networking: Retrofit vs Ktor Client — Best Tool for Your Stack [51]
• Bringing Androidify to XR [52]
• State vs. Actions vs. Events On Android & KMP [53]
• Single & Multi-Choice Button Groups In Material3 Expressive [54]
• What’s new in Kotlin 2.2.21 (and 2.2.20!) [55]
• Discussing Kotlin Coroutines with Marcin Moskała [56]
• A Common Mistake when working with Kotlin Flows [57]
• Your Toolchain is Production: The Case for Observability [58]
• From Lag to Lightning: Transforming Dependency Update Timelines [59]
• Universal Cache: It’s time for fast, reliable, and cheap CI pipelines [60]
• Gradle: Your Build, Your Rules [61]
• Globe — вращающийся «глобус» из изображений [62]
• Material Pickers — Material 3 пикеры для Compose [63]
• Moneytopia — трекер финансов [64]

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

• Когда важна каждая миллисекунда: оптимизация съёмки для CV и AR [65]
• За 3 дня запустить Android приложение на iOS: опыт адаптации приложения под CMP [66]
• Dart 3.9: актуальность новых фич [67]
• Что ждёт Kotlin Multiplatform разработчика на собесе? [68] (все собеседования [69])
• Flutter’s Big Move: Why Decoupling Material & Cupertino Changes Everything [70]
• Liquid Glass Components in Compose Multiplatform [71]
• Protecting Your Kotlin Multiplatform Library’s Public API with ABI Validation [72]
• Integrating Swift Foundation Models in Flutter Apps with Pigeon [73]
• Is Flutter Still the Best Choice for Cross-Platform in 2025? [74]

Разработка

• Великий крах качества программного обеспечения: как мы нормализовали катастрофу [75]
• Как я реверснул обфускацию Amazon Kindle Web, потому что их приложение было отстойным [76]
• Из мобильной разработки в бэкенд. История и впечатления [77]
• Наш опыт публикации мобильных приложений. Часть 1: AppStore и Google Play [78]
• Ваш отзыв поможет другим — сила альтруизма в интерфейсах [79]
• Мобильная ферма устройств: как мы решили проблему тестирования и не только [80]
• Как разработать дизайн мобильной операционной системы с нуля: кейс РОСА и 65apps [81]
• Как сделать Offline Mode. Секреты от Avito.Tech [82]
• Бережливое управление людьми — менеджмент без переработок и выгорания [83]
• How to train your team to say «I was wrong» without drama [84]
• Why Most Mobile Developers Struggle in System Design Interviews [85]
• 7 UI/UX mistakes that SCREAM you’re a beginner (and exactly how to fix each one) [86]
• Forget JSON — These 4 Data Formats Made My APIs 5× Faster [87]
• Build Your Own Database [88]
• The best interfaces of 2025: What award-winning designs teach us [89]
• Data Structures and Algorithms Mega Course – Master Technical Interviews in 49 Hours [90]

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

• Apple может отключить App Tracking Transparency в Европе [91]
• Чаепитие продолжается: у Tea более 6 млн загрузок [92]Apple удалила Tea и TeaOnHer из App Store [93]
• Сонник: обзор приложения [94]
• Маркетологи в мобайле: Спец о нейросетях: Александр Мальцев (CMO Яндекс Браузера) [95]
• Endless Summer подделывает ваши летние фотографии с помощью ИИ [96]

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

• Как RuStore читает мысли пользователей (и причём тут теги) [97]
• Что именно ИИ-чатботы делают «под капотом» [98]
• Сделал автополив для себя — теперь для всех [99]
• Как устроен умный дом, который можно выключить [100]
• Проблема «черного ящика»: как заставить ИИ объяснять свои решения [101]
• Amazon представил умные очки с искусственным интеллектом для своих доставщиков [102]

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

Автор: RoboForm

Источник [105]


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

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

URLs in this post:

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

[2] канал про инди, соло, пет и прочие проекты: https://t.me/appindie

[3] Сам себе Шерлок: 7 способов найти логи и поймать баг на iOS: https://habr.com/ru/articles/958142/

[4] Combine – швейцарский нож iOS-разработчика. Или нет?: https://habr.com/ru/companies/banki/articles/958650/

[5] Build, run and debug iOS and Mac apps in Zed instead of Xcode: https://luxmentis.org/blog/ios-and-mac-apps-in-zed/

[6] Advanced Codable: https://nothingtocommitworkingtreeclean.com/advanced_codable.html

[7] Foundation Models profiling with Xcode Instruments: https://artemnovichkov.com/blog/foundation-models-profiling-with-xcode-instruments

[8] When SwiftUI automatically applies the glass look and when it doesn’t: https://tanaschita.com/swiftui-glass-auto-apply/

[9] Tunable, physics-driven motion primitives for SwiftUI: https://github.com/roberthein/kinetics

[10] Why a custom ViewModifier is often useless: https://www.swiftwithvincent.com/blog/why-a-custom-viewmodifier-is-often-useless

[11] Integrating Device Camera in SwiftUI Apps: https://www.createwithswift.com/integrating-device-camera-in-swiftui-apps/

[12] SwiftUI Architecture: Structure Views for Reusability and Clarity: https://www.avanderlee.com/swiftui/swiftui-architecture-structure-views-for-reusability-and-clarity/

[13] Why SwiftUI Uses some View Instead of View: Every iOS Developer Should Know: https://gauravtakjaipur.medium.com/why-swiftui-uses-some-view-instead-of-view-the-secret-every-ios-developer-should-know-fcf0a58f2194

[14] 5 TabBar SwiftUI Styles You Can Use: https://blog.stackademic.com/5-tabbar-swiftui-styles-you-can-use-3195423bf98c

[15] Speed up your builds with the remote Tuist cache for Xcode: https://tuist.dev/blog/2025/10/22/xcode-cache

[16] Comparing Two Views with a Gesture-Controlled Slider in SwiftUI: https://livsycode.com/swiftui/comparing-two-views-with-a-gesture-controlled-slider-in-swiftui/

[17] Open source case study: Listening to our users: https://www.pointfree.co/blog/posts/189-open-source-case-study-listening-to-our-users

[18] Latest Senior iOS Interview Question Trends (2025): https://nirajpaul2.medium.com/latest-senior-ios-interview-question-trends-2025-57516dfb389e

[19] Opt for Localized Strings: https://www.swiftjectivec.com/using-localized-string-for-easy-localization-refactoring/

[20] We Migrated 40,000 Lines of Objective-C to Swift. Here’s What Nearly Killed Us.: https://medium.com/@avula.koti.realpage/we-migrated-40-000-lines-of-objective-c-to-swift-heres-what-nearly-killed-us-de5557c64cf0

[21] Building an iOS Ghibli App with SwiftUI, MVVM, and Swift Concurrency: https://www.youtube.com/watch?v=xB6uf_Aqq9g

[22] Create immersive media experiences for visionOS: https://www.youtube.com/watch?v=leGqoF8HJxU

[23] SwiftUI Course for Beginners – Create an iOS App from Scratch: https://www.youtube.com/watch?v=-VC3hIEL7eQ

[24] 5 Useful SwiftUI Modifiers: https://www.youtube.com/watch?v=yLt8ni83t_0

[25] Foundation Models Framework in Swift: https://www.youtube.com/watch?v=p17HrjVQKOQ

[26] iOS 26 Style Floating Sheets Using SwiftUI: https://www.youtube.com/watch?v=eN8rPJ24cI4

[27] Kinetics — настраиваемые примитивы физического движения для SwiftUI: https://apptractor.ru/info/github/kinetics.html

[28] MarkdownView — отображение markdown контента в SwiftUI: https://apptractor.ru/info/github/markdownview.html

[29] Разбираем «Telega» по винтикам: «бесплатный» сыр только в мышеловке: https://habr.com/ru/articles/959534/

[30] Эффект глюка на Jetpack Compose: https://apptractor.ru/info/articles/effekt-glyuka-na-jetpack-compose.html

[31] Samsung и Google представили Galaxy XR: https://apptractor.ru/info/devices/samsung-galaxy-xr.html

[32] Samsung показал очки на Android XR: https://apptractor.ru/info/devices/samsung-pokazal-ochki-na-android-xr.html

[33] Что такое ANR и как с ним работать правильно: https://habr.com/ru/articles/958278/

[34] Google Регистрация в Android на Kotlin + Jetpack Compose: https://habr.com/ru/articles/958746/

[35] Как обеспечить стабильную работу SDK для миллионов устройств: https://apptractor.ru/info/media/kak-obespechit-stabilnuyu-rabotu-sdk-dlya-millionov-ustroystv.html

[36] Избавляемся от Context в бизнес логике — как ответить на собеседовании: https://apptractor.ru/info/media/izbavlyaemsya-ot-context-v-biznes-logike-kak-otvetit-na-sobesedovanii.html

[37] Google запускает Google Play Apps Accelerator: https://apptractor.ru/info/events/google-zapuskaet-google-play-apps-accelerator.html

[38] Shrinking Elephants: https://engineering.block.xyz/blog/shrinking-elephants

[39] Understanding retain{} internals: A Scope-based State Preservation in Jetpack Compose: https://proandroiddev.com/understanding-retain-internals-a-new-way-to-preserve-state-in-jetpack-compose-54471a32fd05

[40] Jetpack Compose: Static vs Dynamic CompositionLocals — Reads, Writes and Trade Offs: https://proandroiddev.com/jetpack-compose-static-vs-dynamic-compositionlocals-its-not-about-change-frequency-81f56b3dd991

[41] How to use the Develocity IntelliJ plugin to speed up Gradle builds with real-time insights: https://gradle.com/blog/develocity-intellij-plugin-speed-up-gradle-builds-insights/

[42] Android Interview Questions — Part 4: Real Questions, Clear Answers: https://medium.com/gitconnected/a1b8238407bc

[43] Building a Production-Ready OTT Video Player for Android: https://medium.com/codetodeploy/building-a-production-ready-ott-video-player-for-android-df5494002a71

[44] The LeakCanary Method: https://engineering.block.xyz/blog/the-leakcanary-method

[45] Animated Material3 ToggleButton in Jetpack Compose: https://medium.com/@zaveckas.k/animated-material3-togglebutton-in-jetpack-compose-bd4c517ee3e3

[46] Bringing Androidify to XR with the Jetpack XR SDK: https://android-developers.googleblog.com/2025/10/bringing-androidify-to-xr-with-jetpack.html

[47] Android Interview Questions — Part 4: Real Questions, Clear Answers: https://levelup.gitconnected.com/android-interview-questions-part-4-real-questions-clear-answers-a1b8238407bc?sk=6c7a4d31653125848bb62329584a8236

[48] Top Android Libraries 2025: https://medium.com/@androidlab/top-android-libraries-2025-c51f7df171f6

[49] Name-based destructuring in Kotlin: https://itnext.io/name-based-destructuring-in-kotlin-it-makes-sense-or-does-it-3171bdba0dda

[50] Structured Concurrency in Android: https://medium.com/@dharmakshetri/structured-concurrency-in-android-2685ed4c5dd8

[51] Networking: Retrofit vs Ktor Client — Best Tool for Your Stack: https://medium.com/@androidlab/networking-retrofit-vs-ktor-client-best-tool-for-your-stack-59abf7809478

[52] Bringing Androidify to XR: https://www.youtube.com/watch?v=Yo_vSI0HgOs

[53] State vs. Actions vs. Events On Android & KMP: https://www.youtube.com/watch?v=kzfVub-AJPs

[54] Single & Multi-Choice Button Groups In Material3 Expressive: https://www.youtube.com/watch?v=QehiMfuPaqc

[55] What’s new in Kotlin 2.2.21 (and 2.2.20!): https://www.youtube.com/watch?v=QWpp5-LlTqA

[56] Discussing Kotlin Coroutines with Marcin Moskała: https://www.youtube.com/watch?v=1zY4_iDyFco

[57] A Common Mistake when working with Kotlin Flows: https://www.youtube.com/watch?v=6V1whcH_T3Y

[58] Your Toolchain is Production: The Case for Observability: https://www.youtube.com/watch?v=iudwoq9s698

[59] From Lag to Lightning: Transforming Dependency Update Timelines: https://www.youtube.com/watch?v=T_9GLnuoDHo

[60] Universal Cache: It’s time for fast, reliable, and cheap CI pipelines: https://www.youtube.com/watch?v=PwcuF7ifspM

[61] Gradle: Your Build, Your Rules: https://www.youtube.com/watch?v=uWx_TCbOicg

[62] Globe — вращающийся «глобус» из изображений: https://apptractor.ru/info/github/globe.html

[63] Material Pickers — Material 3 пикеры для Compose: https://apptractor.ru/info/github/material-pickers.html

[64] Moneytopia — трекер финансов: https://apptractor.ru/info/github/moneytopia.html

[65] Когда важна каждая миллисекунда: оптимизация съёмки для CV и AR: https://habr.com/ru/companies/2gis/articles/958550/

[66] За 3 дня запустить Android приложение на iOS: опыт адаптации приложения под CMP: https://habr.com/ru/companies/kts/articles/959950/

[67] Dart 3.9: актуальность новых фич: https://habr.com/ru/articles/960068/

[68] Что ждёт Kotlin Multiplatform разработчика на собесе?: https://apptractor.ru/info/media/chto-zhdyot-kotlin-multiplatform-razrabotchika-na-sobese.html

[69] собеседования: https://apptractor.ru/sobesedovaniya

[70] Flutter’s Big Move: Why Decoupling Material & Cupertino Changes Everything: https://medium.com/easy-flutter/flutters-big-move-why-decoupling-material-cupertino-changes-everything-fbce8bf6e9b3

[71] Liquid Glass Components in Compose Multiplatform: https://medium.com/mateedevs/liquid-glass-components-in-compose-multiplatform-71b7a9ffc56d

[72] Protecting Your Kotlin Multiplatform Library’s Public API with ABI Validation: https://itnext.io/protecting-your-kotlin-multiplatform-librarys-public-api-with-abi-validation-d717ccd0ee7e

[73] Integrating Swift Foundation Models in Flutter Apps with Pigeon: https://sungod.hashnode.dev/foundation-models-in-flutter

[74] Is Flutter Still the Best Choice for Cross-Platform in 2025?: https://medium.com/easy-flutter/is-flutter-still-the-best-choice-for-cross-platform-in-2025-4281764986ca

[75] Великий крах качества программного обеспечения: как мы нормализовали катастрофу: https://apptractor.ru/info/articles/velikiy-krah-kachestva-programmnogo-obespecheniya-kak-my-normalizovali-katastrofu.html

[76] Как я реверснул обфускацию Amazon Kindle Web, потому что их приложение было отстойным: https://apptractor.ru/info/articles/kak-ya-reversnul-obfuskatsiyu-amazon-kindle-web-potomu-chto-ih-prilozhenie-bylo-otstoynym.html

[77] Из мобильной разработки в бэкенд. История и впечатления: https://habr.com/ru/articles/959128/

[78] Наш опыт публикации мобильных приложений. Часть 1: AppStore и Google Play: https://habr.com/ru/articles/959490/

[79] Ваш отзыв поможет другим — сила альтруизма в интерфейсах: https://habr.com/ru/articles/959466/

[80] Мобильная ферма устройств: как мы решили проблему тестирования и не только: https://habr.com/ru/companies/sovcombank_technologies/articles/958694/

[81] Как разработать дизайн мобильной операционной системы с нуля: кейс РОСА и 65apps: https://habr.com/ru/companies/rosa/articles/958634/

[82] Как сделать Offline Mode. Секреты от Avito.Tech: https://apptractor.ru/info/media/kak-sdelat-offline-mode-sekrety-ot-avito-tech.html

[83] Бережливое управление людьми — менеджмент без переработок и выгорания: https://apptractor.ru/info/media/berezhlivoe-upravlenie-lyudmi-menedzhment-bez-pererabotok-i-vygoraniya.html

[84] How to train your team to say «I was wrong» without drama: https://leadthroughmistakes.substack.com/p/how-to-train-your-team-to-say-i-was

[85] Why Most Mobile Developers Struggle in System Design Interviews: https://medium.com/@anandgaur2207/why-most-mobile-developers-struggle-in-system-design-interviews-b1bf0d3e0364

[86] 7 UI/UX mistakes that SCREAM you’re a beginner (and exactly how to fix each one): https://medium.com/design-bootcamp/7-ui-ux-mistakes-that-scream-youre-a-beginner-and-exactly-how-to-fix-each-one-6e407242a3e7

[87] Forget JSON — These 4 Data Formats Made My APIs 5× Faster: https://medium.com/@Krishnajlathi/forget-json-these-4-data-formats-made-my-apis-5-faster-9b14c1102113

[88] Build Your Own Database: https://www.nan.fyi/database

[89] The best interfaces of 2025: What award-winning designs teach us: https://medium.muz.li/the-best-interfaces-of-2025-what-award-winning-designs-teach-us-c741e96aa5b5

[90] Data Structures and Algorithms Mega Course – Master Technical Interviews in 49 Hours: https://www.youtube.com/watch?v=xwI5OBEnsZU

[91] Apple может отключить App Tracking Transparency в Европе: https://apptractor.ru/marketing-monetization/app-promotion-campaign-analytics/apple-mozhet-otklyuchit-app-tracking-transparency-v-evrope.html

[92] Чаепитие продолжается: у Tea более 6 млн загрузок: https://apptractor.ru/measure/app-store-analytics/chaepitie-prodolzhaetsya-u-tea-bolee-6-mln-zagruzok.html

[93] Apple удалила Tea и TeaOnHer из App Store: https://apptractor.ru/measure/app-store-analytics/apple-udalila-tea-i-teaonher-iz-app-store.html

[94] Сонник: обзор приложения: https://apptractor.ru/info/articles/sonnik-obzor-prilozheniya.html

[95] Маркетологи в мобайле: Спец о нейросетях: Александр Мальцев (CMO Яндекс Браузера): https://apptractor.ru/info/interview/marketologi-v-mobayle-spets-o-neyrosetyah-aleksandr-maltsev-cmo-yandeks-brauzera.html

[96] Endless Summer подделывает ваши летние фотографии с помощью ИИ: https://apptractor.ru/info/apps/endless-summer-poddelyvaet-vashi-letnie-fotografii-s-pomoschyu-ii.html

[97] Как RuStore читает мысли пользователей (и причём тут теги): https://habr.com/ru/companies/vk/articles/956450/

[98] Что именно ИИ-чатботы делают «под капотом»: https://habr.com/ru/articles/958820/

[99] Сделал автополив для себя — теперь для всех: https://habr.com/ru/companies/wirenboard/articles/959232/

[100] Как устроен умный дом, который можно выключить: https://habr.com/ru/companies/wirenboard/articles/958434/

[101] Проблема «черного ящика»: как заставить ИИ объяснять свои решения: https://habr.com/ru/companies/magnus-tech/articles/958854/

[102] Amazon представил умные очки с искусственным интеллектом для своих доставщиков: https://apptractor.ru/info/devices/amazon-predstavil-umnye-ochki-s-iskusstvennym-intellektom-dlya-svoih-dostavschikov.html

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

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

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

www.BrainTools.ru

Rambler's Top100