Маркетинг и монетизация
Мобильная разработка за неделю #472: автоматизация воспоминаний про Android
В новом дайджесте изучаем Swift OpenAPI Generator и работу Spotify на Bazel, вспоминаем 15 лет Android и обозреваем невизуальную доступность, внедряем карты, пишем бесполезные программы, возвращаемся к Windows Phone и многое другое!
Подписывайтесь на на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.
iOS
- Готов ли Swift OpenAPI Generator для продуктивного кода?
- Как Spotify бесшовно перешел на сборки Bazel
- SwiftUI: от сомнений к успешному внедрению
- Keyboard Layout Guide
- Автоматизация ревью ресурсных картинок в iOS
- Реальное iOS собеседование в Яндекс
- Поваренная книга SwiftUI: настройка фона и границ представления + Создание View и его модификаторов
- SwiftSyntax Code Generation Notes
- How (not) to monitor SwiftUI @State
- Observation Evolution: SwiftUI 5’s Shift from Combine
- Animating with Elegance: Exploring Phased Animations in SwiftUI 5
- Create a Pie or Donut chart with SwiftUI Charts in iOS 17
- Unsafe memory mutation
- Preparing your App for VoiceOver: use Accessibility Label
- iOS Single App Mode Escape
- My Toddler Loves Planes, So I Built Her A Radar
- Typewriter Text Animation In SwiftUI
- Bad practice: not using Phantom Types
- Use TensorFlow Lite model in SwiftUI Application
- Find Ancestor Types
- Swift Metatypes: What They Are and Why You Should Care
- Bad practice: not using multiline strings
- Generating Random Numbers Elegantly in Swift
- TestFlight makes it even simpler to manage testers
- SwiftUI Tutorial — Animated TabBar
- How to Integrate Camera APIs using SwiftUI
- Custom Swift Logger in Xcode 15
- Swift Metatypes: What They Are and Why You Should Care
- Mastering TipKit: Advanced
- Create a Spotify-Style Lyric View in SwiftUI
- Beautify Code Without Optionals in Swift
- Mastering TipKit in iOS 17
- SwiftUI: Building Notes App + SwiftData + CRUD
- Build a Twitch-Like Live Streaming App With SwiftUI
- Resizable Custom Tab Bar for macOS
- Lock SwiftUI View With Biometric/Custom Number Lock — Local Authentication
- Tagged: обертка типов для выразительного кода
- Dime: красивый трекер финансов для iOS
Android
- Воспоминания о 15 годах Android
- Как зловредные приложения могут скрывать работу с буфером обмена в Android 14
- Оптимизируя sequences — или как мой код попал в Kotlin
- Построение графа покрытия UI-тестами бизнес-логики на основе VisualFSM
- Обзор невизуальной доступности смартфонов под управлением операционной системы Android
- Реализация экранов авторизации и регистрации с помощью Custom View и Firebase
- Stone: знакомство с API
- Вопросы с собеседований: для чего нужен Data class в Kotlin
- Собеседование в Яндекс: платформа Android
- По ту сторону EditText. Программная клавиатура в Android
- Kodein в Android. Что за зверь и как его готовить
- Готовим конфигурацию Android-приложения с помощью Dynamic Proxy и рефлексии
- Как OkHttpClient повышает сетевую производительность
- На 65% меньше APK и на 70% меньше потребление памяти: оптимизация приложения для Android — память
- Adopt Compose for View-based libraries
- Custom Dialog Animation in Jetpack Compose
- Dependency Injection in Legacy Code
- Interaction Latency: Square’s User-Centric Mobile Performance Metric
- What’s new in Jetpack Benchmark 1.2.0
- Kotlin and Variance: Navigating Type Relationships
- From Blank to Beautiful: Implementing Shimmer Effect in Compose
- Device Streaming: The latest devices you need, when you need them
- Google Play Games on PC Developer Emulator
- How to write less code in tests
- Rethinking Base/Core Classes and Modules in Android Software Development
- Modularization of Android project in practice
- How I Fell in Kotlin’s RunBlocking Deadlock Trap, and How You Can Avoid It
- Currying in Kotlin
- Data caching using Room in Kotlin, Remote Mediator API, MVI Architecture
- Details on Google Play’s Photo and Video Permissions policy
- Kotlin Coroutines vs Threads Performance Benchmark
- Automatically Mirroring Images for RTL Layouts
- #TheAndroidShow: faster and easier to build excellent apps, across devices!
- Play PolicyBytes
- 95% Don’t Understand THIS About Coroutines (Main-Safety)
- Which Compile Options Should You Choose? (Java & Kotlin Version)
- Building a Spotify Music Player with Real-Time Lyrics using Flutter
- Beginner Guide to Mutation Testing in Kotlin
- Image Toolbox: графический редактор для Android на чистой архитектуре
- ComposeDialogs: расширяемые диалоги в Material 3
Кроссплатформа
- Flutter Yandex Mapkit: как внедрить основные инструменты Яндекс Карт в проект на Flutter. Часть 1 и Часть 2
- Решаем трудности адаптации мобильных приложений с Responsive_framework
- Setting up Kotlin Multiplatform with KSP
- Flutter theme made easy
- Testing in Flutter and Dart: Unit Testing + II
- Flutter’s Overlay Widget and OverlayEntry: A Comprehensive Guide
- The Flutter Forest — Demystifying Flutter trees
- Mastering Error Handling in Flutter with Dio
- Building a Spotify Music Player with Real-Time Lyrics using Flutter
- Full Flutter Beginner Course
- Twine: мультиплатформенный RSS-ридер на Kotlin и Compose
Разработка
- Пишите больше «бесполезных» программ
- Как интегрировать мультиаккаунт в уже работающий сервис и не поломать всё
- Road Run, или как я свою первую игру делал. Часть 1
- Что будет с мобильными релизами, если улучшать и автоматизировать процессы
- Адаптивный дизайн приложений на Gtk
- Как изменились подходы к автоматизированному тестированию в Тинькофф
- Avito Platform engineering meetup #2
- Ozon Tech Community ML&DS Meetup
- Полный курс по QA. Как правильно писать тесты?
- Сатья Наделла признает, что отказ от Windows Phone и мобильных устройств был ошибкой
- Скриншот-тесты — это ручные тесты
- Respawn: лучшее приложение для саморазвития в мире
- Больше всего денег для счастья нужно программистам
- Разработка мобильных приложений: чем Android лучше iOS?
- Startup CTO Handbook
- An Interactive Introduction to Fourier Transforms
- How does macOS manage virtual cores on Apple silicon?
- Courier: Reimagining How We Send Push Notifications
- Step by Step Guide to Succeed in Mobile System Design Interviews
- An aborted experiment with server Swift
- How Tinder designs product (and why)
- Where are all the laid-off software developers going?
- UK games jobs vacancies reaches three-year low
Аналитика, маркетинг и монетизация
- Luminar Neo упрощает использование ИИ в обработке фотографий
- Wyzr Friends — приложение поиска друзей для взрослых
- Daylyy — еще один анти-I*****
- Возврат к Windows Phone позволяет блокировать рекламу на YouTube
- Сторонние приложения ChatGPT теряют прибыль
- Q3 2023 Regional Market Pulse from Data.ai
- India Festive Report 2023
AI, Устройства, IoT
- От Style Transfer до диффузии: эволюция визуальных эффектов на смартфонах
- ChatGPT в мобильной разработке: как использовать, чтобы получить пользу
- $30.5 млн в посевном раунде: CentML — оптимизация обучения и работы ИИ-моделей
- В стандарте Matter 1.2 появилась крупная бытовая техника
- Сделано с помощью ИИ Google — новая серия видео
Если вы нашли опечатку - выделите ее и нажмите Ctrl + Enter! Для связи с нами вы можете использовать info@apptractor.ru.