У трекеров сна лучший год
Отслеживание сна — большой рынок, который вырос на 28% и в 2023 году получил более 22 млн загрузок.
1. Лидеры - Sleep Cycle, ShutEye, BetterSleep и Pokemon Sleep.
2. ShutEye стал самым скачиваемым приложением из трех в 2023 году, получив 9.8 млн новых загрузок — на 51% больше, чем в 2022 году. BetterSleep занимает второе место с 8 млн загрузок, что на 127% больше, чем в прошлом году. А новичок Pokemon Sleep занял 3-е место с 6.7 млн новых скачиваний. Это впечатляющий результат, учитывая, что он был выпущен только летом. Приложение для сна Sleep Cycle заняло 4-е место с 4.8 млн новых загрузок. В отличие от остальных, количество загрузок Sleep Cycle снизилось по сравнению с 2022 годом — на 16%.
3. Загрузки — это хорошо, но доходы — еще лучше. И тут Pokemon Sleep обошел все три старых приложения, даже несмотря на то, что вышел в середине года.
4. Снорлакс заработал 26 миллионов долларов чистого дохода с момента выхода в июле. И что еще более интересно, скорость не снизилась с момента выхода, так что это не просто момент старта. ShutEye занял второе место с 17 млн долларов чистого дохода, а сразу за ним расположился Sleep Cycle с 16 млн долларов чистого дохода. BetterSleep не слишком отстает — 13 млн долларов. Все три компании выросли по сравнению с 2022 годом, но BetterSleep вырос больше всех — на 53% за год, а Sleep Cycle — меньше всех, всего на 2%.
И что: а) рынок сна - большой, и в установках, и в деньгах; б) можно делать 15 лет свое приложение, но придут покемоны и украдут весь сон ⛔️ ; в) интересно, что спрос на приложения для ментального здоровья значительно упал, так что может стоит совместить сон с медитациями?
Android
• Вопросы с собеседований: Object в Kotlin
• Как устроен Gradle Config Cache. Лучшие Практики. Интервью с инженером команды Gradle
• Android System Design: делаем библиотеку Firebase
• NanoKt: библиотека расширений для Android и Kotlin
• remember «Forever». Как сохранить скролл при уходе с экрана
• Compose walk-through part 2: Managing state
• Live Streaming and Audio Equalizer with ExoPlayer in Jetpack Compose
• How to automate the update process of dependencies?
• Boosting Bazel Adoption on Android With Automation
#android
Как управлять советами для начинающих
Собрал новый еженедельный дайджест. Если вам понравилось, поставьте 👍 и поделитесь с коллегами. Еще у меня есть канал IT Insights, где новости и статьи про код, технологии и все самое интересное, возможно и за пределом мобайла. Вот, например, 40 лет назад Netscape Navigator 1.0 положил начало тому Интернету, который мы знаем сегодня.
⚡️25 декабря стартует новый легендарный онлайн-курс Kotlin Backend Developer Professional
Успейте поступить в группу в этом году.
✅Новогодний SALE
✅Обновленная программа курса
✅Преподаватели - ведущие эксперты международных компаний
Обучение на курсе позволит:
• освоить разработку на Kotlin и профессиональную бэкенд-разработку;
• научиться использовать Kotlin для разработки серверных приложений;
• применять асинхронное и многопоточное программирование с корутинами;
• использовать Kotlin совместно с различными фреймворками;
• строить хранилища на базе SQL, NoSQL и NewSQL;
• писать приложения с монолитной, микросервисной и бессерверной архитектурами.
🎄ПРОЙТИ ТЕСТ и получить новогодний бонус: https://otus.pw/xHeY/?erid=LjN8KWwi1
Легендой курса является разработка стартапа – экстремального проекта, в котором сочетаются высокая неопределенность и жесткие ограничения по времени и ресурсам.
При поступлении в группу возможны разные способы оплаты и рассрочка платежаРеклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963
Android
• Подключение сканера к Android или как почувствовать себя кассиром
• Do You Have to Learn Clean Architecture as a Beginner?
• Demystifying Kotlin: Understanding the Inner Workings of Inline Functions
• marco-cattaneo/how-to-handle-single-event-in-jetpack-compose-f90b6220e8c8">How to handle single-event in Jetpack Compose
• Android Launch Modes Explained
#android
Что нового в AOSP 14
После выхода каждой новой версии iOS разработчики делают ее анализ (вот, например, последний). Android исследуют меньше, тем ценнее эти данные. Серджио Прадо и Крис Симмондс недавно рассказали о том, что нового в AOSP 14 в своем видео и опубликовали сводные таблицы.
1. Размер исходников вырос почти в 2 раза - с 87 Гб в AOSP 8 (все дальше сравнивается с ним) до 165 Гб.
2. Таргетов в 3 раза - с 32 до 83.
3. Количество исходников на Rust увеличилось в 8 раз - с 1009 до 8609.
4. Время сборки на стандартной машине увеличилось с 2:30 до 8:50. Объем билда с 87 до 150 Гб.
5. Количество процессов в рантайме 306/288, потоков 1377/13332, системных сервисов 277/303, потребление памяти увеличилось вдвое - с 1.8 до 3.5 Гб.
И что: Android стремительно развивается. Понадобится ли ему замена для слабых телефонов и кто ею станет - вот интересный вопрос.
iOS
• Вопросы с собеседований: коллекции в Swift
• Поваренная книга SwiftUI: состояние, привязка, ObservableObject и ObservedObject
• Как я создаю iOS игру на Unity c использованием MidJourney, ChatGPT, Adobe Firefly и много ручного труда
• How to get the most played Apple Music songs and albums using Swift
• Quick Search with SwiftUI Searchable
• kodekarim/xcode-15s-hidden-treasure-logging-like-a-pro-2024-6fc993d65ccb">Xcode 15’s Hidden Treasure: Logging Like a Pro 2024
• tunahanbekdas/swift-singleton-pattern-1ab19b53b79d">Swift: Singleton Pattern
• The Case Against [unowned self]
• emndeniz/ios-ui-testing-with-deep-links-7c33e9f9b7f1">iOS UI Testing with Deep Links
#ios
Случилось забавное - в Internet Archive нашли архив TestFlight с кучей старых игр и приложений на 1.2 ТБ. Напомню, что TestFlight не всегда принадлежал Apple, до 2015 года он был независимой компанией и у него даже был собственный сайт, через который все также тестировали свои сборки. В начале 2015 года он был закрыт, примерно тогда же Архив и получил весь дамп - судя по всему, из-за из неправильно настроенного облачного хранилища. Понятно, что вы не можете просто загрузить одно из старых приложений на свой нынешний телефон и вернуться в прошлое. Но в Discord уже есть сообщество, которое копается в архиве, так что, вероятно, что-нибудь с этим придумают.
Разработка
• В Internet Archive нашли старые приложения и игры из TestFlight
• Что такое мьютекс
• «Додо пИИцца». Как мы внедрили AI в приложение пиццы в Дубае
• Designing Perfect Tabs
• Redesigning our global order tracking experience
Маркетинг
• Маркетологи в мобайле. Итоги года 2023. Часть 1
• Топ быстрорастущих приложений в России в декабре
• Итоги года и планы на 2024 от Adjust
• Using campaign links to track impressions, downloads, and sales
Кроссплатформа
• Transition Animation: настраиваем анимацию переходов во Flutter
• Jetpack Preferences DataStore in Kotlin Multiplatform
iOS
• Google AI SDK for Swift: генеративный ИИ для ваших приложений
• Apple останавливает продажи Apple Watch Series 9/Ultra 2 из-за нарушений патентов
• redhotbits/from-swiftui-vanilla-to-mvvm-like-a-pro-470b22f304c9">Stop using MVVM and abusing Observable classes in SwiftUI
• Coordinator Pattern for iOS Apps
• Why I chose The Composable Architecture for SwiftUI and never looked back
• Mastering MapKit in SwiftUI. Interactions.
• Preparing your App for VoiceOver: Accessibility Actions
#ios
Android
Прочитайте мое интервью с Сергеем Опиваловым по поводу его доклада на Mobius про управление сложностью состояния.
• Как управлять сложностью состояния — Сергей Опивалов
• Android-PiP: реализация «картинки в картинке»
• Разработка для нестандартных устройств
• Мок-собеседование по Android System Design
• Android SDK Extensions — новые фичи на старых Android
• Animating Inside and Outside the Box with Jetpack Compose
• The ViewModel’s leaked Flow collectors problem
• Glassmorphic Bottom Navigation in Jetpack Compose
• Building Passive UI in Jetpack Compose
• Kandy: the new Kotlin plotting library by JetBrains
• Demystifying Pixel Shaders (AGSL)
• Don’t use var in enums
#android
Apple представила "условное ценообразование" для подписок
Можно снижать цену в зависимости от подписок на k.s,t другие другие продукты.
1. Условное ценообразование для подписок в App Store позволяет предоставлять клиентам скидку на подписку до тех пор, пока они активно подписаны на другую подписку.
2. Такое ценообразование может использоваться как для подписок на собственные продукты, так и между двумя разными разработчиками.
3. Покупатели смогут обнаруживать эти ценовые скидки в приложении, во внеплатформенных маркетинговых каналах и в App Store.
4. Apple поможет вам управлять реализацией, обеспечивая клиентам беспрепятственный процесс оформления и покупки на основе предоставленного вами условного ценового предложения.
И что: на заре Интернета были партнерские ссылки, теперь будут партнерские подписки. Но в целом, конечно, удобно 🌐
Служба Безупречных Помощников Деда Мороза расскажет, почему она такая быстрая 🎅
🌐 Онлайн-митап
🗓 19 декабря в 17:00 (МСК, GMT+3)
Посмотрим, как устроена Система быстрых платежей и что помогает ей выдержать повышенную нагрузку новогодних хлопот — когда миллионы людей покупают подарки.
Разработчики СБП расскажут, как в СБП обеспечивается скорость, надежность и отказоустойчивость и почему им пришлось ускорять транзакционные отчеты в несколько тысяч раз. А еще, в чем особая магия платежных ссылок — фундамента множества сценариев оплаты.
Авторы лучших вопросов к докладам получат подарки от организаторов — наборы мерча Мир Plat.Form.
Подробности и регистрация по ссылке.Реклама. АО "НСПК". ИНН 7706812159
Перевел статью про символизацию логов сбоев в Xcode. Зачем так делать так до конца и не понял (нет, в целом то конечно идея здравая, но ведь Xcode все сам делает?), но зато хоть разобрался с самим термином. Символизация - перевод лога/дампа сбоя из машинного кода в читаемый. Для этого есть, собственно, сам лог и отладочный символьный файл, который содержит все данные о коде. Сопоставляем и понимаем, в каком именно месте произошла ошибка. Так что если у вас где-нибудь спросят - тоже будете знать.
Разработка
• Мой опыт прохождения собеседования в Google
• MedLM: генеративный ИИ для индустрии здравоохранения
• Разметить всё: как мы настроили систему логирования в приложении каршеринга
• Migrating Netflix to GraphQL Safely
• Lessons from building GitHub code search
Маркетинг
• Gaming Upfronts 2023: The Power of Audio Advertising Unveiled
• Email marketing for mobile apps: A comprehensive guide
Кроссплатформа
• Flutter Tutorial: building an offline-first chat app with Supabase and PowerSync
• Platform Channels are Dead! Objective-C/Swift Interop is Here!
iOS
• Символизация логов сбоев с помощью Xcode + Что такое символизация логов сбоев
• andres.carort/ios-developer-roadmap-2023-330fd5cb7479">iOS Developer Roadmap 2023
• Stretching an audio file using Swift
• Selecting multiple items with a two-finger pan gesture
• Mastering the ‘Final’ Keyword in Swift: A Comprehensive Guide for Optimized Coding
• Symbolicating SwiftUI (and any Apple Framework)
#ios
Не Гуглом одним, Microsoft тоже выпустил свою “малую” языковую модель Phi-2. Она тоже может работать на ноутбуке или смартфоне, при этом, как пишет Microsoft, гораздо более способная, чем остальные. В Phi-2 2.7 млрд параметров, в Llama 2 и Mistral по 7 млрд, при этом новая модель обгоняет их. Правда, пока Phi-2 доступна только для “академических” целей и коммерческое ее использование запрещено. Но будущее в виде способных моделей, работающих локально на смартфонах, уже, очевидно, совсем близко.
Разработка
• Microsoft выпустила модель Phi-2, которая «может работать на мобильном устройстве»
• Вопросы с собеседований: что такое Потокобезопасность (Thread-Safe)
• Адвент-календарь MonkeyUser на 2023 год
• Доктор Bazel: как я научился не волноваться и полюбил сборки
• How Plane, an open-source alternative to Jira, got to the #1 in project management on GitHub in less than a year
Маркетинг
• Маркетологи в мобайле: Александр Багринцев (Sunlight)
• DistroKid запустил приложение для Android
Кроссплатформа
• State of React Native survey
• How to store key-values in KMP in the secure way
• Flutter Firebase Festival
• ximya/modularizing-flutter-ui-with-factory-constructors-f13907b6f5d4">Modularizing Flutter UI with Factory Constructors
На прошлой неделе Beeper, который сначала научился прокидывать сообщения в iMessage с Android, а потом отчаянно боролся с рогатками Apple, заявил о прекращении борьбы. “Мы не можем победить в игре в кошки-мышки с крупнейшей компанией на Земле”, - говорят авторы. Хорошее в этом то, что разработчики выложили бридж к iMessage, приложение для Mac и iPhone в открытый доступ. Плохое - то что Apple в очередной раз доказала свои неконкурентные политики. Штош. Будем ждать, когда ЕС признает iMessage платформой и принудит открыть мессенджер.
Разработка
• Beeper отказывается от борьбы с Apple и выкладывает код в open source
• Самые высокооплачиваемые вакансии декабря в сфере разработки приложений
• Тренды UX/UI-дизайна 2024
• Разработка Авто.ру и роль руководителя в команде
• Что такое observability мобильного приложения
• Мобильные релизы в Авито
• Силиконовая Долина глазами российского разработчика
• Релокация на Кипр
• Apple разработала прорывной метод запуска LLM на устройствах с ограниченной памятью
• Секрет внутренней связи: откровения Маруси о том, как она научилась слушать себя
• flutterwtf/how-to-improve-user-experience-latest-ux-ui-design-trends-for-2023-cad4f54a9843">How to Improve User Experience: Latest UX/UI Design Trends for 2023
• Best engineers are focusing on helping others
Маркетинг
• Рынок приложений 2023 — Ксения Юркина, Apptica
• Маркетинг мобильных приложений на волне роста во всем мире: и вот какие регионы в топе
Кроссплатформа
• Мультиплатформенная разработка на чистой Java
• Integrating Google Sign-In into Kotlin Multiplatform
• How we built the Super Dash demo in Flutter and Flame in just six weeks
• The Problem With State Management, and Why It Shouldn’t Be a Problem
iOS
• Enchanted: приложение для собственной языковой модели Ollama
• Custom Segmented Control
• Build your first app with SwiftUI and SwiftData
• jpmtech/swiftui-navigationsplitview-30ce87b5de03">SwiftUI NavigationSplitView
• abegehr/testing-swiftdata-migrations-7a612da2c91c">Testing SwiftData Migrations
• maxkalik/ui-throwback-creating-a-retro-progress-bar-for-ios-using-calayers-9539baf65fc3">UI Throwback: Creating a Retro Progress Bar for iOS using CALayers
#ios
Видео и подкасты за неделю:
• (iOS Ru)
Custom Segmented Control
• (iOS En)
Building Complex Scroll Animations With New iOS 17 APIs
• (iOS En)
SwiftUI Widgets | App Groups | Charts | Expense Tracker App
• (iOS En)
How To Create A Submission Form In Xcode 15
• (iOS En)
This is the CRAZIEST Swift code you'll ever see
• (iOS En)
SwiftData CloudKit
• (iOS En)
SwiftUI Animated Toasts
• (And Ru)
Как устроен Gradle Config Cache. Лучшие Практики. Интервью с инженером команды Gradle
• (And Ru)
Android System Design: делаем библиотеку Firebase
• (And En)
(W)rap - Android Developers Backstage
• (And En)
Introducing Gemini, Google at NeurIPS 2023, and more dev news!
• (And En)
Performance Optimization with @Stable and @Immutable in Jetpack Compose
• (And En)
Demystifying Pixel Shaders (AGSL)
• (Crs Ru)
Мультиплатформенная разработка на чистой Java
• (Crs En)
A novel architecture for Multiplatform applications with Pavel Lahoda
• (Dev Ru)
Что такое observability мобильного приложения
• (Dev Ru)
Разработка Авто.ру и роль руководителя в команде
• (Dev Ru)
Мобильные релизы в Авито
• (Dev Ru)
Силиконовая Долина глазами российского разработчика
• (Dev Ru)
Релокация на Кипр
• (Dev En)
Do You Have to Learn Clean Architecture as a Beginner?
С вас традиционный 👍 и поделиться подборкой с коллегами!
В AppsFlyer опубликовали 5 трендов 2023 года с их пролонгацией на 2024. Вкратце - затраты на рекламу приложений снизились; неорганические установки iOS выросли на 9% - хороший знак после 15% падения в 2022; доход от покупок в неигровых и игровых приложениях вырос на 19% и 11% соответственно - и это приятно; ремаркетинговые конверсии на Android упали на 9% - Индия и Бразилия подпортили рынок; общее количество загрузок приложений выросло всего на 2% - после 10% роста в 2022 году. В общем ничего необычного, но для укрепления понимания советую почитать.
Разработка
• 13 советов для начинающих разработчиков, которые уже прочитали все остальные советы
• История разработки приложения для складных смартфонов Samsung. Часть 2 — гайдлайны
• Автоматизированное тестирование событий аналитики в мобильном приложении: насколько это реально и оправдано
• How to Scale an App to 10 Million Users on AWS
• We Can’t Hire You
Маркетинг
• Spill, инклюзивная альтернатива X, запускает бету на iOS и Android
• Claim, социальная сеть, позволяющая пользователям зарабатывать и обмениваться вознаграждениями, привлекает $4 млн
• 5 трендов в области маркетинга приложений 2023 — и их проекция на 2024
Кроссплатформа
• Globe (a Flutter & Dart deployment platform) is now in public preview
• How we built it: Ask Dash — A generative AI Flutter application
iOS
• BadgeIcon: системные иконки для SwiftUI
• tahabebek/scalable-and-modular-system-design-for-the-simplest-ios-app-7a1a3873992b">Scalable and Modular System Design for the simplest iOS App
• bhuravaneprathamesh/creating-a-scrolling-parallax-effect-with-swiftui-037029863eb8">Creating a Scrolling Parallax Effect with SwiftUI
• SwiftUI View Models: Lifecycle Quirks
• kodekarim/become-more-senior-ios-developer-with-these-4-xcode-tips-tricks-d470d8e5878d">Become More Senior iOS Developer with these 4 Xcode Tips & Tricks
• ❸☻- Simulation Emojimix on Xcode
#ios
Вчера у нас маркетологи начали подводить итоги года (кстати, заодно уж хочу обратить внимание на предыдущее огненное интервью Александра Багринцева из Sunlight, одно из самых интересных в цикле), но я о другом. Если у вас (компании, проекта, разработчика, дизайнера и т.п.) есть чем поделиться по итогам года на всю аудиторию - завсегда пожалуйста. Просто напишите и сделаем статью или интервью, пусть даже коротенько (минут на 40 ☺️).
Разработка
• Cоздание идеальных вкладок
• Advice for new software devs who've read all those other advice essays
• I’ve vastly misunderstood the Single Responsibility Principle
• Empirically supported code review best practices
Маркетинг
• Location — cоздатели Zenly выпускают приложение, похожее на Zenly
Кроссплатформа
• Just DUIT — первый взгляд на server-driven UI фреймворк для Flutter
• shubya8451/flutter-and-sqlite-a-deep-dive-into-local-data-persistence-5bb8098b8346">Flutter and SQLite: A Deep Dive into Local Data Persistence
Android
Посмотрите на все изменения, которые анонсировал Google по результатам вчерашнего дела. Ничего нового, но просто по пунктам.
• Все изменения, которые произойдут в Google Play и загрузке приложений, после урегулирования спора
• Что нового в AOSP 14
• Ludwig: набор UI-компонентов для Jetpack Compose
• Crash Course on the Android UI Layer | Part 2
• Fortifying Android Apps: A Comprehensive Guide to Securing Your App and Codebase with Kotlin
• State Management in Jetpack Compose
• Live Streaming and Audio Equalizer with ExoPlayer in Jetpack Compose
• raya.wahyu.anggara/android-thread-43b30b61dee6">Android Thread & Relation With Coroutine
#android
Android
• Создаем пассивный UI в Jetpack Compose
• Google выплатит $700 млн в еще одном споре о Play Store
• Stone. Квалификаторы и идентификаторы
• dugguRK/unleashing-websocket-in-android-b82c887b0a27">Unleashing WebSocket in Android?
• Effect Handlers in Jetpack Compose: A Complete Guide
• Kotlin under the hood: how to get rid of recursion
• merkost/foreground-services-in-android-14-whats-changing-dcd56ad72788">Foreground Services in Android 14: What’s Changing?
• Multi-Module with Clean Architecture
#android
Если вы, как и я, интересовались, как Google проиграл там, где Apple выиграла - в The Verge дали вполне доступное объяснение по пунктам. Если вкратце - прецедент в данном случае не работает, сделки Google со сторонними компаниями были сомнительны, суду присяжных объяснять их вопросами бизнеса было сложно, а заговором против Epic - просто, Google удалял улики, что сыграло не в его пользу, ну и наконец - это просто были два совершенно разных дела по определению рынка, на котором образовалась монополи. У Apple это “цифровые мобильные игровые транзакции”, а у Google - “распространение приложений для Android и услуги биллинга в приложениях для Android”. В общем, если вам интересно понимание, крайне рекомендую.
Разработка
• Эпический вопрос: как Google проиграл там, где Apple выиграла
• Как формировать топовые команды
• Ozon Tech Community Techdoc Meetup
• Почему ты пишешь говнокод? Главная причина
• Как подготовиться к собеседованию по System Design мобильному разработчику
• Why do programmers need private offices with doors?
• 8 Simple Steps to Create Crosswords on Any Topic in Minutes Using ChatGPT
Маркетинг
• Количество пользователей социальной сети Jagat превысила 10 миллионов
• Спрос на приложения для ментального здоровья почти сошел на нет
• Самые скачиваемые приложения в мире в ноябре 2023
• Социальная торговая платформа Maka привлекает $2.65 млн для упрощения покупок в Африке
Кроссплатформа
• Модульная запутанность. Как распарсить одну модель в разных модулях
• Создаем federated plugin для Flutter-проекта
• Многомодульность на Flutter или как не выстрелить себе в ногу
• Handle push and locale notifications in your Flutter app
iOS
• Apple представила «условное ценообразование» для подписок
• xcconfig: интеграция в проект, валидация и подключение к Tuist
• Объединяем Combine и Swift Concurrency
• SwiftData как замена CoreData: глубокое погружение
• Маслины и грабли: все, что вам нужно знать о разработке продукта полностью на SwiftUI
• ChatGPT 4 Xcode: интеграция ИИ в Xcode
• Plain Swift - a simple Swift IDE for Windows
• Should you add final to all your Swift classes?
• Decoupled stacked sheet navigation with multiple modals in SwiftUI
• Integrating Haptic Feedback In SwiftUI Projects
• Hierarchical background styles in SwiftUI
• Building Complex Scroll Animations With New iOS 17 APIs
#ios
Рекурсия становится сложнее
Собрал новый еженедельный дайджест - с тако на обложке 🌮 Традиционно поставьте 👍 и поделитесь с коллегами. Еще у меня есть канал IT Insights, где новости и статьи про код, технологии и все самое интересное, возможно и за пределом мобайла. Вот, например, 4 простые привычки в разработке ПО, которые изменили мою производительность.
Видео и подкасты за неделю:
• (iOS Ru)
xcconfig: интеграция в проект, валидация и подключение к Tuist
• (iOS Ru)
Объединяем Combine и Swift Concurrency
• (iOS Ru)
SwiftData как замена CoreData: глубокое погружение
• (iOS Ru)
Маслины и грабли: все, что вам нужно знать о разработке продукта полностью на SwiftUI
• (iOS En)
Implementing Drag Gestures In Xcode 15
• (iOS En)
How to Answer iOS Interview Questions Like a Pro
• (iOS En)
App Localizations
• (And Ru)
Android SDK Extensions — новые фичи на старых Android
• (And Ru)
Разработка для нестандартных устройств
• (And Ru)
Мок-собеседование по Android System Design
• (And En)
Now in Android: 97 - Gemini, AICore, ML Kit, Android Studio Hedgehog, and more!
• (And En)
Detecting faces and landmarks - ML on Android with MediaPipe
• (And En)
Should You Use a Navigation Library in Jetpack Compose?
• (And En)
Full Guide to Multiple Back Stacks in Jetpack Compose - Android Studio Tutorial
• (Crs Ru)
Многомодульность на Flutter или как не выстрелить себе в ногу
• (Dev Ru)
Как формировать топовые команды
• (Dev Ru)
Ozon Tech Community Techdoc MeetupКак обычно - поставьте 👍 и поделитесь подборкой!
Android
• Google Generative AI Sample: пример работы с Gemini
• ThrowInDB — Разбираю домашний хлам или сам себе склад
• Detekt: как статический анализ помогает улучшить код автотестов
• Multitasking Intrusion and Preventing Screenshots in Android Apps
• Crash Course on the Android UI Layer
• Navigating Multiple Technical Migrations in Our Domain: Motivation and Strategy
#android
😮 Привет, читатели! На связи PROMOBILE
Если вы ищете способы оптимизировать свое мобильное приложение, вывести в топ позиции и привлечь больше органических пользователей, то наша команда готова в этом помочь!
🔎 Какие услуги предоставляем?
🅰 App Store Optimization (аудит, конкурентный анализ, полное сопровождение);
📱 Услуги с гарантией и оплатой за результат (позиции ключевых запросов, репутация, индексация приложения, топ категории и пр. KPI);
🔍 Продвижение ключевых запросов в App Store (iPhone/iPad) и Google Play;
⭐ Работа с репутацией.
🤔 Почему стоит обратиться?
🔝Доступ к качественному источнику мотивированного трафика;
🔝Покрытие всех стран, дополнительных локализаций, неограниченные объемы;
🔝Сопровождение на каждом этапе и обмен опытом, экспертиза в нишах любой сложности;
🔝Продвинутые возможности работы (управление конверсией показов по запросу, RR, индексирование запроса)
Свяжитесь с нами для получения бесплатной и индивидуальной стратегии по оптимизации вашего проекта!
@Ilya_login
https://promobile.app
Android
• Используйте Gemini в своих приложениях для Android
• Kotlin под капотом: как избавится от рекурсии
• MVI Architecture with Jetpack Compose
• Leverage Gemini in your Android apps
• Optimizing Mobile App Performance
• dugguRK/kotlin-mutex-a-comprehensive-guide-5771a3f59713">Kotlin Mutex: A Comprehensive Guide
#android