Маркетинг и монетизация
Мобильная разработка за неделю #460: по ту сторону дефолтных аватаров
В новом выпуске создаем дефолтные аватары и исследуем TipKit, пишем полностью нативное GUI-приложение без Android и проходим Android-собеседования, изучаем правила создания красивых интерфейсов, побеждаем серверные подсказки, исследуем мобильный опыт и многое другое!
В нашем Telegram-канале Mobile Insights, еще больше материалов для мобильных разработчиков, а в IT Insights — об интересном коде и технологиях. Подключайтесь!
Хотим в очередной раз пригласить вас в опрос Developer Nation. Расскажите, что вам нравится или не нравится в популярных инструментах и платформах. Опрос охватывает 13 направлений: мобильные, десктопные, облачные и веб-приложения, промышленный Интернет вещей, игры, машинное обучение, искусственный интеллект и т.п. Опрос доступен на 10 языках, в том числе и на русском. Можно начать и сохранить для продолжения. Можно выиграть призы. Главное — внести свой вклад в развитие сообщества разработчиков.
iOS
- Создаем дефолтные аватары пользователей в SwiftUI
- Добавляем обучающие моменты в приложения с помощью TipKit
- Sticky Header в SwiftUI
- Кто ты, SwiftData
- GC, ARC, RAM. Часть 3. iOS
- The Composable Architecture достигла версии 1.0: что это такое
- Thread Safety в Swift
Adding teachable moments to your apps with TipKit
Swift Macros
Composable Architecture 1.0
Animating Carrousel Transitions in SwiftUI
DocC Tutorial for Swift: Automating Publishing With GitHub Actions
Observation Framework in iOS 17
Crafting a Swift Package Plugin for App Data Protection
Unit Testing with async/await
iOS Interview Guide: Custom higher-order functions in Swift
Modularised Navigation in SwiftUI — An Enum-based Approach
The Large Title UINavigationBar Glitches and How to Fix Them
Localization testing in Xcode
SwiftUI Tutorial: Navigation
Streamlining Similar View Controllers: A Swift Tutorial to Embrace the Refactor Mindset
Mastering StoreKit 2
How to automate taking screenshots with fastlane for iOS
How to use type erasure in Swift with a real example
Advanced async testing: Unstructured concurrency
Animate background with color gradient in SwiftUI
Understanding iOS Memory Management With Toy Analogies
What I’ve learned implementing Swift Macros: 5 takeaways
SwiftUI Animated Tags View — Layout API
SwiftData Basics Tutorial: How to Easily Persist Data in SwiftUI
How to format physical units in Swift using MeasurementFormatter
SharePlay — Turn your app experience into a shared experience
SwiftUI: Scroll to Hide Tab Bar
visionOS 30 Days: уроки разработки для visionOS
iTorrent: торрент-клиент для iOS
Android
- Исходники закрыты, но мы не сдадимся: Пишем полностью нативное GUI-приложение под No-Name смартфон без Android
- По ту сторону фидбека: как проходят Android-собеседования и чего мы ждём от кандидатов
- Лучший спутник в вашем творческом процессе: Android Studio Bot VS ChatGPT для разработчиков
- Оптимизация анимации на Compose: крутим лоадеры, ищем неочевидные функции
- Инди-разработка Android-приложений: боли, идеи и заработок
- Как Google победил фрагментацию в Android
Designing a Functional Library
Jetpack Compose for Maps
Deep dive into Live Edit for Jetpack Compose UI
Modelling the domain layer using composable use cases
Lazy Grids for Android TV using Jetpack Compose
Fluent and Fun Clean Architecture using Kotlin
How to create a chatbot with Firebase Firestore and PaLM on Android
Try the K2 compiler in your Android projects
Android Worldwide July 2023
Gradle Cache: Your build’s best friend
Firebase Dynamic Links Depricated! Migrate to Android App Links
Passing events from Composable functions to MVI ViewModels
How I became an Android Developer
Android 13 Runtime Notification Permission: XML & Jetpack Compose Guide
Debugging Alarms with ADB
Using String Resources in a ViewModel
Debugging Google Maps App Issue on Android
Debugging the recomposition in Jetpack Compose
Clok: The math behind the clock
Fixing touch target size in PLR
Live Edit for Jetpack Compose
Android Studio Giraffe stable release, New Samsung foldables, and more dev news!
Top App Bar (Toolbar) — UX With Material3
Selection UI Components (Checkboxes, Switches, Radio Buttons) — UX With Material3
Android Worldwide July 2023
Stable Diffusion AI: свой генератор изображений для Android
Compose Adaptive Scaffold: простая поддержка больших экранов
Кроссплатформа
- Будущее iOS-разработки на Flutter
- Как мы сделали онлайн-редактор кода на Flutter
- Мобильная мультиплатформенная разработка в McDonald’s
- Kotlin Multiplatform Mobile (KMM) превращается в Kotlin Multiplatform (KMP)
- Мобильное приложение для eCommerce: опыт кроссплатформенной разработки
- Исследование State of Databases 2023
Popular apps using Kotlin Multiplatform (KMP) in 2023 — and what you can learn from them
Intercepting Ktor Network Responses in Kotlin Multiplatform
A Deep Look Into Flutter Databases
How we reduced bundle size by 15% with patching package
How To Use Lints In Flutter
Storing data from the Flutter app → Google Sheets
Enhance your React Native Application Performance
Understanding Keys, Elements, RenderObjects and their interplay in Flutter
The basics of Layout Animations in React Native Reanimated
Firebase Analytics in Flutter app
Разработка
- Дизайнер не нужен. Правила создания красивых UI
- Как маленькая нейроязыковая модель в Клавиатуре победила серверные подсказки
- BDUI, многошаг и Backend Driven аналитика
- Как мы запустили официальный российский магазин приложений RuStore
- Как мы внедряли пуш-уведомления в мессенджер — от базовой отправки до проработки условий
- Эвристики Нильсена на примере реальных приложений
- Разработка мобильных приложений: ключевые принципы продуктового и проектного подходов
- Мифы и легенды о безопасности мобильных приложений
- Avito Security Meetup
- Podlodka #329: с чего начинается Big Data
- Самые высокооплачиваемые вакансии июля в области разработки приложений
- Что такое магистральная разработка
A WWDC Design Lab Made My App So Much Better
Before you try to do something, make sure you can do nothing
Explaining Vector Databases in 3 Levels of Difficulty
5 UX Secrets Behind the Success of Threads App by Meta
How DoorDash Migrated from StatsD to Prometheus
ORIDE — UX Case Study
A Realistic Day of a Product Manager’s Life at Microsoft
Vertical vs. Horizontal Cards: Which Are Better?
Tidal Cycles – Live coding music with Algorithmic patterns
Аналитика, маркетинг и монетизация
- Какая конверсия в платящего пользователя хорошая?
- Bloom учит Поколение Z инвестициям
- Самые скачиваемые и зарабатывающие приложения в России в июле 2023
- DSP: различия и преимущества lookalike и предиктивных моделей. Часть #2
- IronZen: как мы решили боль тысяч тревожных людей, разработав собственное мобильное приложение
- Сила Streak: повышение вовлеченности обучающих приложений
- В RuStore появилась возможность загружать приложения для ТВ
- «Мобильный опыт 2023» — отчет Embrace
- $100 млн: Inworld — ИИ для NPC
- Amazon Clinic заработал во всех штатах
- Pokemon Sleep набрал 2 млн установок
- Какие страны выпускают больше всего мобильных игр?
- Rewind выпустил приложение для iPhone, которое поможет вам запомнить всё
AI, Устройства, IoT
- Аналитика и оптимизация батарей в IoT-устройствах
- Автоматизируем вентиляцию в квартире площадью 200 м²: бюджет не ограничен
- Kincony KC868-A4S: как A4, только (S)UPER
- Yet another UDP transport
- Смарт-очки Ray-Ban почти не используются
- Snapchat запустил новую программу вознаграждения создателей AR-линз
AI Companion App: легкий стек для создания и размещения собственных ИИ-компаньонов
-
Программирование4 недели назад
Конец программирования в том виде, в котором мы его знаем
-
Видео и подкасты для разработчиков1 неделя назад
Как устроена мобильная архитектура. Интервью с тех. лидером юнита «Mobile Architecture» из AvitoTech
-
Магазины приложений3 недели назад
Магазин игр Aptoide запустился на iOS в Европе
-
Новости3 недели назад
Видео и подкасты о мобильной разработке 2025.8