Подписывайтесь на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.
iOS
- Разработка, управляемая тестами (TDD), для исправления ошибок
- SwiftUI уроки (часть 4)
- Вы можете сделать пейвол в алерте. Но, вероятно, не стоит.
- Cocoapods pod install без интернета на CI при использовании Tuist
- Моменты неотзывчивости iOS-приложений: как найти и исправить
- Swift-уроки: cоздание горизонтального меню с индикатором
- Apple разрешает распространение приложений с сайтов
- Поваренная книга SwiftUI: лучшие практики управления состояниями в SwiftUI
- Вышла VisionOS 1.1
How to build a draggable bottom sheet with a scroll view in SwiftUI Everything you need to know about Swift 5.10 Concurrency Recipes How to Dynamically Construct Complex Predicates for SwiftData Aspect-Oriented Programming in Swift Implementing a TV Guide with SwiftUI Exploring SwiftUI: Creating a Scope View using DragGesture Global actors in Swift Using Apples OpenAPI Generator to Make and Mock Network Calls in SwiftUI Navigation between modules in iOS Understanding visionOS Using @_silgen_name to call private Swift code and improve build times Tips and Considerations for Using Lazy Containers in SwiftUI Local SPM — Mastering Modularization with Swift Package Manager From Slow to Fast: Profiling SwiftUI Applications for Peak Performance SwiftUI Performance Optimisation: How to manage Data Flow and UI Updates in your iOS and macOS apps MapKit with SwiftUI — Regions, Markers and Annotations and CameraPosition MapKit with SwiftUI — Map Destination Persistence and MockData How to get started with Swift Macros Paginating SwiftData Do you know what view.layoutIfNeeded() actually does? Swift Playdate Examples: примеры разработки игр для Playdate на Swift Swift Translate: автоматический перевод String Catalog Concurrency Recipes: проблемы Swift Concurrency
Android
- Автоматизируем рутину в Android разработке: плагин для создания шаблонного кода на примере создания -api -impl модулей
- Прекратите спорить в Code Review — начните внедрять с правилами линтера
- Кот в мешке: мастерство обработки ошибок внешних ключей SQLite
- Android-приложение на Compose с нуля: Часть 2 (UI)
- Fastlane для Android разработчиков
- Drag and Drop в Jetpack Compose
- Ликбез по вложенной прокрутке в Jetpack Compose
- KatWalk C2: ч2, подслушаем, подсмотрим и разнюхаем или как общаться с незнакомым железом на незнакомом языке
- Собеседование по Kotlin
- Ultron — фреймворк для тестирования Android UI и Compose
- Собираем грабли при профилировании Android-приложений
- Google I/O 2024 пройдет 14 мая
- Чистка Android-проекта для уменьшения размера APK, ускорения сборки и улучшения опыта разработки
- Новый Fused Orientation Provider обеспечивает получение точных данных об ориентации устройства
How to create Glovo-like main screen animation using Jetpack Compose Kotlin Design Patterns: Abstract Factory Explained Designing your account deletion experience with users in mind Downloadable and Preloaded Fonts on Android State of Dependency Management in Android Studio Hilt, ViewModels & Assisted Injection A Weekend AI Project: Running LLaMA and Gemma AI Models on the Android Phone Monetizing Marvels: A Developer’s Guide to In-App Purchases on Android ANR in Android & its types A comprehensive guide to understand Kotlin Flows Going edge-to-edge with Compose without losing it The Night’s Watch: Safeguarding store operations Trim, Transcode, Concatenate: Your Guide to Media3 Editing Libraries How to Drag and Drop using Modifier.dragAndDropSource/Target - Jetpack Compose Unit Testing Tutorial for Android: Getting Started Seven recipes to understand flows and asynchrony in Kotlin Now in Android: 100 — Android 15 DP 1, Stable Studio Iguana, Cloud Photo Picker, and more What’s new in Android Studio Iguana Google for Games Developer Summit 2024 How to Create a Document Scanner App with MLKit If You Think THIS Is a Best Practice, You’re WRONG in 99% of the Cases The Missing Library of the Compose Multiverse Making Data Visualizations More Accessible Imperative, declarative, object oriented, functional: four of a Kotlin kind Appteka: альтернативный магазин приложений для Android Kotest: мощный, элегантный и гибкий фреймворк для тестирования Kotlin Legado: читалка для Android
Кроссплатформа
- Интеграция нативных SDK во Flutter-приложение
- Как быстро получать данные из ОС Аврора через интерфейс D-Bus во Flutter-приложении
- Что нового во Flutter 3.19
- Работа с Data Assets во Flutter
- Методы-расширения в Dart
- Коллекции во Flutter
Making a 2.5D game using Flutter — Tutorial Building a Flutter SDK Part 2: A Deep Dive Into pub.dev Flutter: Offline playback for video_player How to manage Keystore Paths in Flutter (Android) Goodbye PWA, Hello PWA — Apple And Progressive Web Apps Leveraging Key-Value Observing in Kotlin Multiplatform for iOS Slint v1.5 — a modern, declarative GUI toolkit — released with Android support I made LAN file sharing app using only Dart and Flutter
Разработка
- Первый легендарный мобильный GPU: каким был PowerVR MBX Lite? Пишем игру-демку про «жигули» с нуля
- Discord открывает SDK для разработки встроенных игр и приложений
- Как и где практиковаться начинающему мобильному разработчику
- Как искать отличных Senior-инженеров
- Приложение викторины: внедрение Cardoteka и основные паттерны проектирования с Riverpod
- Как принимать решения, строить команды и выбирать инструменты разработки — Павел Щедухин (Ozon Tech)
- Публичное собеседование по System Design
- Мобильная инфраструктура. Взгляд изнутри
- BDUI – удовольствие или боль?
- BDUI на 100%: управляем шиммерами с бэкенда
- Stashpad запускает блокнот для разработчиков с совместной работой
- В 2023 году Google выплатил $10 млн за поиск уязвимостей
- Как Google испортил свою открытую культуру и скомпрометировал свой продукт
The most important goal in designing software is understandability You’re not a weak developer if you don’t always show off your technical excellence Context-switching — one of the worst productivity killers in the engineering industry How It All Goes Live: An Overview of Discord’s Streaming Technology How Khan Academy Scaled to 30 Million Users Winning a hackathon, losing my sanity Why software projects fail Back End Developer Roadmap 2024
Аналитика, маркетинг и монетизация
- Приложения с подпиской 2024 — отчет RevenueCat
- Google Play анонсирует новые функции для игр
- Как персонализация на основе ИИ выведет продвижение мобильных приложений на новый уровень
- Apple тестирует ИИ в своей рекламной платформе
- Apple снова разблокировала учетную запись Epic Games
- Аналитика нового продукта «под ключ»
Turning organic success into long-term revenue Abysmal revenue stats of 30K mobile apps show why devs keep pushing for subs