РоссияСтатьяМодели
Мобильная разработка за неделю #651 (26 октября — 1 ноября)
В новой еженедельной подборке граф зависимостей целого приложения и больше ИИ-агентов в Android Studio Rabbit 2, Over The Air обновления Kotlin-кода и советы junior инженерам от нанимающего менеджера Anthropic, троян в ушах и угон аккаунтов через беспроводные наушники, новый AppsFlyer Performance Index, доставка 584 Мб модели Gemma через Google Play и многое другое. Заходите!
Подписывайтесь на мой Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков.
iOS
• Я вам сборку принёс, но я вам ее не отдам: как установить тестовое приложение на iOS • В Swift 6.4 тихо исправили то, что раздражало меня больше всего • Как один UI‑баг заставил меня разбираться с графом зависимостей целого приложения • KassiOS: слой в стиле Kaspresso поверх XCUITest, проверенный на сломанном банке • От 798 до 16 нс: как оптимизация debounce привела меня в Swift Runtime • En How to use layoutMarginsGuide in SwiftUI • En How the Xcode 27 MCP can lead to higher token costs when navigating the Simulator • En Designing Apps for iPhone Duo: Lessons From Adapting Three Apps • En What Should Go in a View Model in SwiftUI? • En SwiftUI Data Flow • En iOS 27: Now Playing Framework • En Swift 6.4 Quietly Fixed the Things That Annoyed Me Most • En Most Developers Don’t Know How To Use These SwiftUI Modifiers Correctly • En I Added a Task Inside onAppear. Why Did the API Call Run Twice? • En 10 SwiftUI Gems That Deserve a Place in Your Next Project • Video Boost your app’s speed and efficiency — Meet with Apple • Video Bring Touch to your Mac app • Video Bring Live Activities to Mac • Video Design for Touch on Mac • Video Apple’s Birthday Card Fireworks Animation Using SwiftUI • Video iPhone Duo Changes SwiftUI Layouts: Here’s How to Adapt Your App • Video Compact Morphing Photo Picker using SwiftUI • GH Sill — любое окно с Mac на iPhone или iPad • GH Noodle — персональные ИИ-агенты
Android
• Arch Linux на Xiaomi 12T Pro: стоковое ядро Android, vendor‑модули и девять граблей загрузки • Over The Air обновления Kotlin-кода для Android-приложений • Доставляем 584 Мб модель Gemma через Google Play • Android Studio Rabbit 2: больше ИИ (агентов) • Как я без опыта разработки написал первые автотесты на Kotlin за месяц • Обновляем приложение на Wear OS-часах без adb по Wi-Fi: мост через телефон • Пропуск вшитых интеграций в TikTok на Android: анализ TTVideoEngine, ReVanced-патч и k-анонимность • PocketDeploy: веб-приложение и свой Bluesky PDS на Android — что получилось и где пока пределы • En Improving the Smoothness of Android Compose Screens • En Building On-Device AI Agents on Android with Google ADK • En Hardening Coroutine Tests • En Lifecycle 2.11: ViewModels Are No Longer Limited to Screens in Jetpack Compose • En AI Can Write My Kotlin. Who’s Going to Debug It at 2 AM? • En Why push notifications go missing on Xiaomi, Oppo, Vivo and Realme • En Android App Security Checklist • En Android Studio Windows ARM64 — Official Releases & Installers • En Android Dev Summit 2026: All the Key Announcements • En Get started with Lightbuild • En Making Sense of Android Baseline Profiles • Video Trace me if you can: Automated instrumentation and field profiling • Video Building audio-first experiences for intelligent eyewear with Gemini Nano 4 • Video Agentic engineering with Claude Code and Android CLI • Video Optimize media playback and maximize reach with Jetpack Media3 APIs • Video App security in the agentic era • Video Elevating camera experiences across devices with CameraX and on-device intelligence • Video The car is your canvas: Unlocking Android development for the road • Video Declarative, agent-ready Android builds with Lightbuild • Video Graphics features in Jetpack Compose that can elevate your app • Video Migrating two decades of the Google Play app to Jetpack Compose • Video Mastering on-device intelligence with ML Kit and LiteRT in Google Play services • Video Extend your app to Gemini and Search with the Connected Apps Platform • Video Scale your app for every screen with Compose • Video Build optimized Android Apps with Firebase AI Logic and Gemini Nano 4 • Video Why You MUST Stick to Mutation Testing (Never Have Bad AI-Written Tests Anymore) • Video Inside Kotlin’s Language Design • Video Can Kotlin Handle Low-Latency Audio? • Video XR is for everyone: Designing accessible spatial experiences • Video Build world anchored experiences for wired XR glasses • Video Architecting Spatial Content on Android XR with Unity • Video Elevate immersive experiences with 3D Engines in Jetpack Compose for XR • GH Compose State Monitor — лог рекомпозиций • GH Tellyscope — очистка Android TV
Кроссплатформа
• Почему тормозят списки в .NET MAUI: замеры на слабом планшете и что реально помогло • Как я оптимизировал TGS‑стикеры в Compose Multiplatform: от Compottie к Frame Baking • Как я научил React Native читать кириллицу на Android: OCR на Vision и PaddleOCR • .NET MAUI-приложение падает после сборки в Xcode 27: UIScene, плавающая панель iOS 26 и что ещё пришлось поправить • Capacitor: от веба к мобильным приложениям. Часть 6. Встраиваем Capacitor в native-приложение • Мониторим здоровье Gradle-сборки KMP проекта • En Front Wing, Not Small Wing: Design Tokens for Native UI in KMP • En What I learned shipping a running app with Kotlin Multiplatform, Compose, and a native Apple Watch app • En React Native 0.88 Is Here: A New Event System, Variable Fonts, and No Breaking Changes • En Morphing a Floating Action Button into a Dialog in Compose Multiplatform • En Bring to life your SVGs in the Multiplatform project • En Migrating A Flutter Project to Built In Kotlin • GH CmpDevicePreview — предварительный просмотр Compose Multiplatform в веб
Разработка
• Голод важнее стажа: советы junior инженерам • Думал, дел на пару вечеров… Но демка на Vercel выросла в PWA с собственным CI/CD на Coolify • Мы предоставили ИИ-агентам среду для мобильной разработки • Пишем свою мобильную ОС с нуля на Rust. Часть 4: GUI, SQLite и DOOM • Троян в твоих ушах: как угнать WhatsApp и Amazon через беспроводные наушники • Личный опыт публикации в магазинах приложений в России в 2026 году • CI/CD не работает, и я знаю почему: карта точек отказа мобильного конвейера • Это не я, это мой агент • Вайбкодинг и будущее программистов — ИИ агенты, Кроссплатформа, Вход в IT • En Elephants, Goldfish and the New Golden Age of Software Engineering • En The Collapse Of Software Engineering And The Beginning Of Something New • En How the Claude Code team does code review • En Less Is More: From 1M Lines of Firmware to 300 of Assembly • En 10 Mac Apps for Developers That Are Insanely Good • En Introducing the Slack Code API: Your agents, your team, one code channel • En The October inflection point for vibe game development • En Local-First Means Three Different Things • Video Beginner’s Guide to Integrating On-Device AI Agents In Your Mobile App (Android + iOS)
Аналитика, маркетинг и монетизация
• Вышел The AppsFlyer Performance Index 2026 • Google открывает регистрацию в программе сторонних магазинов приложений • A/B-тестирование скриншотов App Store для небольшого приложения • En Do holiday offers bring subscription apps more than a sales spike? Data from 5K apps • En How I Automated my App Store Assets Workflow • Video How Praktika built a profitable $50M ARR AI business
AI, Устройства, IoT
• Как я искал боровики и дошёл до спутниковой классификации леса • Осетры, Modbus и забытый слив: как я автоматизирую рыбную ферму • Делаем энергоэффективную систему визуального контроля морской акватории • HuggingFace для начинающих: как выбрать и запустить модель • Из автоматизации ИТП в DIY: как теплотехник скрестил ПР200, Orange Pi и Zigbee • Apple выпускает новый MacBook Pro с сенсорным экраном • Apple представила новый 14-дюймовый MacBook Pro с чипом M6 • Apple представила новый iPad mini с OLED-дисплеем, чипом A20 Pro и другими улучшениями • 5 вещей, о которых стоит знать перед покупкой ноутбука с Nvidia RTX для локального ИИ
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.
Ссылки из первоисточника
- Я вам сборку принёс, но я вам ее не отдам: как установить тестовое приложение на iOS
- В Swift 6.4 тихо исправили то, что раздражало меня больше всего
- Как один UI‑баг заставил меня разбираться с графом зависимостей целого приложения
- KassiOS: слой в стиле Kaspresso поверх XCUITest, проверенный на сломанном банке
- От 798 до 16 нс: как оптимизация debounce привела меня в Swift Runtime
- How to use layoutMarginsGuide in SwiftUI
- How the Xcode 27 MCP can lead to higher token costs when navigating the Simulator
- Designing Apps for iPhone Duo: Lessons From Adapting Three Apps
- What Should Go in a View Model in SwiftUI?
- SwiftUI Data Flow
- iOS 27: Now Playing Framework
- Swift 6.4 Quietly Fixed the Things That Annoyed Me Most
- Most Developers Don’t Know How To Use These SwiftUI Modifiers Correctly
- I Added a Task Inside onAppear. Why Did the API Call Run Twice?
- 10 SwiftUI Gems That Deserve a Place in Your Next Project
- Boost your app’s speed and efficiency — Meet with Apple
- Bring Touch to your Mac app
- Bring Live Activities to Mac
- Design for Touch on Mac
- Apple’s Birthday Card Fireworks Animation Using SwiftUI
- iPhone Duo Changes SwiftUI Layouts: Here’s How to Adapt Your App
- Compact Morphing Photo Picker using SwiftUI
- Sill — любое окно с Mac на iPhone или iPad
- Noodle — персональные ИИ-агенты
- Arch Linux на Xiaomi 12T Pro: стоковое ядро Android, vendor‑модули и девять граблей загрузки
- Over The Air обновления Kotlin-кода для Android-приложений
- Доставляем 584 Мб модель Gemma через Google Play
- Android Studio Rabbit 2: больше ИИ (агентов)
- Как я без опыта разработки написал первые автотесты на Kotlin за месяц
- Обновляем приложение на Wear OS-часах без adb по Wi-Fi: мост через телефон
- Пропуск вшитых интеграций в TikTok на Android: анализ TTVideoEngine, ReVanced-патч и k-анонимность
- PocketDeploy: веб-приложение и свой Bluesky PDS на Android — что получилось и где пока пределы
- Improving the Smoothness of Android Compose Screens
- Building On-Device AI Agents on Android with Google ADK
- Hardening Coroutine Tests
- Lifecycle 2.11: ViewModels Are No Longer Limited to Screens in Jetpack Compose
- AI Can Write My Kotlin. Who’s Going to Debug It at 2 AM?
- Why push notifications go missing on Xiaomi, Oppo, Vivo and Realme
- Android App Security Checklist
- Android Studio Windows ARM64 — Official Releases & Installers
- Android Dev Summit 2026: All the Key Announcements
- Get started with Lightbuild
- Making Sense of Android Baseline Profiles
- Trace me if you can: Automated instrumentation and field profiling
- Building audio-first experiences for intelligent eyewear with Gemini Nano 4
- Agentic engineering with Claude Code and Android CLI
- Optimize media playback and maximize reach with Jetpack Media3 APIs
- App security in the agentic era
- Elevating camera experiences across devices with CameraX and on-device intelligence
- The car is your canvas: Unlocking Android development for the road
- Declarative, agent-ready Android builds with Lightbuild
- Graphics features in Jetpack Compose that can elevate your app
- Migrating two decades of the Google Play app to Jetpack Compose
- Mastering on-device intelligence with ML Kit and LiteRT in Google Play services
- Extend your app to Gemini and Search with the Connected Apps Platform
- Scale your app for every screen with Compose
- Build optimized Android Apps with Firebase AI Logic and Gemini Nano 4
- Why You MUST Stick to Mutation Testing (Never Have Bad AI-Written Tests Anymore)
- Inside Kotlin’s Language Design
- Can Kotlin Handle Low-Latency Audio?
- XR is for everyone: Designing accessible spatial experiences
- Build world anchored experiences for wired XR glasses
- Architecting Spatial Content on Android XR with Unity
- Elevate immersive experiences with 3D Engines in Jetpack Compose for XR
- Compose State Monitor — лог рекомпозиций
- Tellyscope — очистка Android TV
- Почему тормозят списки в .NET MAUI: замеры на слабом планшете и что реально помогло
- Как я оптимизировал TGS‑стикеры в Compose Multiplatform: от Compottie к Frame Baking
- Как я научил React Native читать кириллицу на Android: OCR на Vision и PaddleOCR
- .NET MAUI-приложение падает после сборки в Xcode 27: UIScene, плавающая панель iOS 26 и что ещё пришлось поправить
- Capacitor: от веба к мобильным приложениям. Часть 6. Встраиваем Capacitor в native-приложение
- Мониторим здоровье Gradle-сборки KMP проекта
- Front Wing, Not Small Wing: Design Tokens for Native UI in KMP
- What I learned shipping a running app with Kotlin Multiplatform, Compose, and a native Apple Watch app
- React Native 0.88 Is Here: A New Event System, Variable Fonts, and No Breaking Changes
- Morphing a Floating Action Button into a Dialog in Compose Multiplatform
- Bring to life your SVGs in the Multiplatform project
- Migrating A Flutter Project to Built In Kotlin
- CmpDevicePreview — предварительный просмотр Compose Multiplatform в веб
- Голод важнее стажа: советы junior инженерам
- Думал, дел на пару вечеров… Но демка на Vercel выросла в PWA с собственным CI/CD на Coolify
- Мы предоставили ИИ-агентам среду для мобильной разработки
- Пишем свою мобильную ОС с нуля на Rust. Часть 4: GUI, SQLite и DOOM
- Троян в твоих ушах: как угнать WhatsApp и Amazon через беспроводные наушники
- Личный опыт публикации в магазинах приложений в России в 2026 году
- CI/CD не работает, и я знаю почему: карта точек отказа мобильного конвейера
- Это не я, это мой агент
- Вайбкодинг и будущее программистов — ИИ агенты, Кроссплатформа, Вход в IT
- Elephants, Goldfish and the New Golden Age of Software Engineering
- The Collapse Of Software Engineering And The Beginning Of Something New
- How the Claude Code team does code review
- Less Is More: From 1M Lines of Firmware to 300 of Assembly
- 10 Mac Apps for Developers That Are Insanely Good
- Introducing the Slack Code API: Your agents, your team, one code channel
- The October inflection point for vibe game development
- Local-First Means Three Different Things
- Beginner’s Guide to Integrating On-Device AI Agents In Your Mobile App (Android + iOS)
- Вышел The AppsFlyer Performance Index 2026
- Google открывает регистрацию в программе сторонних магазинов приложений
- A/B-тестирование скриншотов App Store для небольшого приложения
- Do holiday offers bring subscription apps more than a sales spike? Data from 5K apps
- How I Automated my App Store Assets Workflow
- How Praktika built a profitable $50M ARR AI business
- Как я искал боровики и дошёл до спутниковой классификации леса
- Осетры, Modbus и забытый слив: как я автоматизирую рыбную ферму
- Делаем энергоэффективную систему визуального контроля морской акватории
- HuggingFace для начинающих: как выбрать и запустить модель
- Из автоматизации ИТП в DIY: как теплотехник скрестил ПР200, Orange Pi и Zigbee
- Apple выпускает новый MacBook Pro с сенсорным экраном
- Apple представила новый 14-дюймовый MacBook Pro с чипом M6
- Apple представила новый iPad mini с OLED-дисплеем, чипом A20 Pro и другими улучшениями
- 5 вещей, о которых стоит знать перед покупкой ноутбука с Nvidia RTX для локального ИИ
Комментарии
Обсуждайте статью, отвечайте и оценивайте комментарии. Вход — через ваш Яндекс ID.
Загружаем обсуждение…