В этом выпуске шейдеры на iOS и игра менее 1 Мб, Spotify без рекламы и простые привычки лучших инженеров, новая оплата в Unity, самые быстрорастущие приложения в сентябре, социальная сеть только для друзей и многое другое!
Подписывайтесь на на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.

iOS
• Хочите виртуальный macOS на своём PC? Их есть у меня
• Шейдеры в iOS для начинающих
• Скоро iOS 17, смотрим статистику по старым версиям
• Swift-уроки: дефолтный аватар как в Telegram
• Открыт прием размещений в App Store для последних версий ОС
• Поваренная книга SwiftUI: понимание представлений (View) и иерархий представлений в SwiftUI
•
Shake to undo in a SwiftUI app
•
SwiftUI Sensory Feedback
•
Develop with Cocoa for Apple Devices without using Objective-C
•
SwiftDataKit: Unleashing Advanced Core Data Features in SwiftData
•
An Architecture for Behaviour-Driven Development in Swift
•
SwiftUI Guide: Triggering Actions Solely on First View Appearance
•
Theming SwiftUI applications
•
SwiftUI Clean Architecture 101
•
Vending Non-Mutating Data in SwiftUI
•
If and switch expressions in Swift
•
Beginner’s Guide: SwiftUI and Additional Essentials
•
iOS Interview Guide: Swift Initializers
•
Unsafe Memory Access in Swift
•
How To Visualize The Safe Area
•
Working With UIViewRepresentable
•
StateObject vs ObservedObject
•
Different ways to map over Dictionary in Swift
•
Understanding Container Background for Widget in iOS 17
•
Using expanded SwiftUI support for MapKit
•
Comparing SwiftUI @StateObject, @ObservedObject and iOS17 @Observed macro
•
Simplifying iOS App Invocation Handling with Swift: A Comprehensive Guide
•
Level up your SwiftUI – Easy improvements you can apply to any SwiftUI app
•
SwiftUI Tag TextField
•
How To Use SwiftData with Preview
•
Scrolling Charts in iOS 17
•
SwiftUI: Hide Navigation Bar On Swipe
•
EmojiPalette: пикер эмодзи для SwiftUI
•
SDWebImageSwiftUI: загрузка изображений в SwiftUI
•
UI Examples: примеры красивого UI
Android
• Сам написал, сам поиграл: как я написал 2D-игру для Android полностью с нуля, весом менее 1мб?
• Микросмартфон за 100 рублей: Покупаем смартфон 11-летней давности и… пишем под него приложения
• Как я удалил рекламу из приложения Spotify
• Protobuf vs Reflection
• Мок-интервью Middle Android Developer
• Cобеседование Android-разработчика: Максим Качинкин (Dodo Engineering)
• Что нового в Android 14 для разработчиков
• В Android 15 откроют доступ к данным о заряде батареи
• Как мы сделали SPACE INVADERS: World Defense
• Android Studio for Platform — IDE для AOSP
•
Paging 3 on Android
•
How We Made SPACE INVADERS: World Defense, an AR game powered by ARCore
•
Understanding Density-Independent Pixels
•
•
Complex SemanticMatchers for Compose UI Testing
•
Kotlin Contracts: Empowering Your Code for Better Quality
•
Gradle and Java Version Compatibility: A Beginner’s Guide
•
Intro to Polymorphism with Kotlinx.Serialization
•
Google MLKit: Quick and easy Face Detection in Android
•
Automate screenshot testing for Compose previews via reflection
•
Building the WhatToEat Experience on Android
•
Success Story: How FlowMVI has changed the fate of our project
•
Parallax effect in Jetpack Compose
•
Animate borders in Jetpack Compose
•
Building Media-Rich Android Apps with MediaCodec and Vendor Extensions
•
Jetpack Compose for Wearables — Developing UIs for Smartwatches
•
How to automate SDK testing and sleep through the night — a sensor simulation story
•
Security Tips for Android Developers
•
How Qualcomm Added Audio Offload Support for ExoPlayer
•
Automate screenshot testing for Compose previews via reflection
•
Don’t Make These 2 Mistakes With Lists in Kotlin
•
Swipeable Tab Rows — UX With Material3
•
Android Jetpack Compose: The Perfect Splash Screen
•
ComposeShadowsPlus: тени для Compose
•
AAY-chart: графики для Android и Kotlin Multiplatform
Кроссплатформа
• Flutter на ОС Аврора
• Есть ли смысл начинать писать мобильное приложение не на Kotlin Multiplatform и Compose Multiplatform?
• Flutter — CI/CD Azure + App Center
• PWA vs Native: чек-лист, который поможет выбрать
• Puro — эффективный способ управления Flutter-версиями
• Нововведения фреймворка Flutter 3.13.Часть 2
• Compose for iOS под капотом
• Compose Multiplatform для iOS и Android
• Flutter Dev Podcast #42: DCM. Что нового?
•
Flutter State Management: Provider, BLoC, GetX, Riverpod, GetIt and MobX
•
What is BuildContext in Flutter
•
5 Advanced Architecture Patterns you should know as flutter developer
•
AdMob UMP SDK in Flutter — Implement your GDPR dialog
•
Integrating React Native as an SDK into a Native Android App
•
How to Improve Performance in Flutter: Replace SizedBox with Compile-Time Constants
•
Introducing the Flutter Consulting Directory
•
Exploring the Expandable Menu Package in Flutter
•
LÖVE: замечательный фреймворк для создания 2D-игр на Lua
Разработка
• Как работает SberPay под капотом
• 7 простых привычек 1% лучших инженеров
• Unity вводит новую систему оплаты для разработчиков + Что же беспокоит разработчиков в связи с Unity Runtime Fee? (TL;DR)
• Что не так с дизайнерами интерфейсов. Есть ли разница между UX/UI и продуктовым дизайнером?
• Тестирование внутреннего мобильного приложения «На связи»
• Как избежать обмана на работе: 5 эффективных стратегий
•
The Debugging Dilemma — Why So Many Beginners Give Up on Programming
•
Golden age of UX is over?
•
The Best Filter UI Design for Large-Scale Apps
•
Death by a thousand microservices
•
Philosophy of coroutines
•
How to use Strings Method to improve any UI design
•
How mobile apps illegally share your personal data
Аналитика, маркетинг и монетизация
• Тирания маржинального пользователя
• Яндекс выложил в опенсорс код AppMetrica
• В Sensor Tower провели увольнения
• Попадание в сеть: как игры становятся социальными сетями для зумеров и миллениалов
• Топ быстрорастущих приложений в России в сентябре
• Самые скачиваемые приложения в августе 2023
• Выходим на глобальный рынок: адаптация интерфейса под RTL
• Favs — социальная сеть только для друзей
• Коллажи с покупками переходят из Shuffles в главное приложение Pinterest
• Amazon возвращает встроенные покупки на Android
• Slingshot — быстрая отправка фото с помощью «рогатки»
• ASO.dev — как я снова продукт для Apple делал
• In-app purchases — за что и почему? Взгляд аналитика
• Яндекс представил Yandex Mobile Ads SDK 6
•
5 ways to improve your product analytics data
AI, Устройства, IoT
• ИИ-агенты с саморефлексией
• Создаём субтитры для любого видео в интернете с помощью нейросети в браузере
• Разработка систем генеративного ИИ на базе ML Platform: создаем конкурента ChatGPT без миллионных инвестиций
• Управление сервоприводами, часть 3. Управляем ШИМ/PWM сервоприводами с разъёмов GPIO компьютеров на примере Repka Pi
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.
Подписывайтесь на на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.


• Хочите виртуальный macOS на своём PC? Их есть у меня
• Шейдеры в iOS для начинающих
• Скоро iOS 17, смотрим статистику по старым версиям
• Swift-уроки: дефолтный аватар как в Telegram
• Открыт прием размещений в App Store для последних версий ОС
• Поваренная книга SwiftUI: понимание представлений (View) и иерархий представлений в SwiftUI
•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•


• Сам написал, сам поиграл: как я написал 2D-игру для Android полностью с нуля, весом менее 1мб?
• Микросмартфон за 100 рублей: Покупаем смартфон 11-летней давности и… пишем под него приложения
• Как я удалил рекламу из приложения Spotify
• Protobuf vs Reflection
• Мок-интервью Middle Android Developer
• Cобеседование Android-разработчика: Максим Качинкин (Dodo Engineering)
• Что нового в Android 14 для разработчиков
• В Android 15 откроют доступ к данным о заряде батареи
• Как мы сделали SPACE INVADERS: World Defense
• Android Studio for Platform — IDE для AOSP
•

•

•

•


•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•


• Flutter на ОС Аврора
• Есть ли смысл начинать писать мобильное приложение не на Kotlin Multiplatform и Compose Multiplatform?
• Flutter — CI/CD Azure + App Center
• PWA vs Native: чек-лист, который поможет выбрать
• Puro — эффективный способ управления Flutter-версиями
• Нововведения фреймворка Flutter 3.13.Часть 2
• Compose for iOS под капотом
• Compose Multiplatform для iOS и Android
• Flutter Dev Podcast #42: DCM. Что нового?
•

•

•

•

•

•

•

•

•


• Как работает SberPay под капотом
• 7 простых привычек 1% лучших инженеров
• Unity вводит новую систему оплаты для разработчиков + Что же беспокоит разработчиков в связи с Unity Runtime Fee? (TL;DR)
• Что не так с дизайнерами интерфейсов. Есть ли разница между UX/UI и продуктовым дизайнером?
• Тестирование внутреннего мобильного приложения «На связи»
• Как избежать обмана на работе: 5 эффективных стратегий
•

•

•

•

•

•

•


• Тирания маржинального пользователя
• Яндекс выложил в опенсорс код AppMetrica
• В Sensor Tower провели увольнения
• Попадание в сеть: как игры становятся социальными сетями для зумеров и миллениалов
• Топ быстрорастущих приложений в России в сентябре
• Самые скачиваемые приложения в августе 2023
• Выходим на глобальный рынок: адаптация интерфейса под RTL
• Favs — социальная сеть только для друзей
• Коллажи с покупками переходят из Shuffles в главное приложение Pinterest
• Amazon возвращает встроенные покупки на Android
• Slingshot — быстрая отправка фото с помощью «рогатки»
• ASO.dev — как я снова продукт для Apple делал
• In-app purchases — за что и почему? Взгляд аналитика
• Яндекс представил Yandex Mobile Ads SDK 6
•


• ИИ-агенты с саморефлексией
• Создаём субтитры для любого видео в интернете с помощью нейросети в браузере
• Разработка систем генеративного ИИ на базе ML Platform: создаем конкурента ChatGPT без миллионных инвестиций
• Управление сервоприводами, часть 3. Управляем ШИМ/PWM сервоприводами с разъёмов GPIO компьютеров на примере Repka Pi
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.