Mobile Native ️️ – Telegram
Mobile Native ️️
5.61K subscribers
1.13K photos
20 videos
3 files
1.28K links
Полезные материалы по мобильной разработке. Статьи, подборки, нововведения, анонсы.

Пробустить канал → https://news.1rj.ru/str/mobile_native?boost

Автор: @artemiygreg
iOS / Swift: @swift_tips
Библиотеки и инструменты: @mobile_dev_tools
Митапы: @meetup_today
Download Telegram
В Android 12 добавили Splash Screen API

Основные требования👇

• фон экрана обязателен и должен быть не прозрачным
• иконка приложения должна быть векторной, если есть анимация – не более 1000 мс
• фон иконки приложения не обязателен

Можно кастоматизировать какие-то настройки, но вот время показа Splash Screen – 1 сек смущает. Понятно, что время запуска приложения играет большую роль и все такое, но кажется, что не все приложения смогут адаптировать существующие сплеш экраны под новое API с загрузкой в 1 сек.

Официальная документация тут: Splash Screen API
Пример адаптации под новое API: Exploring Android 12 Splash
Multiple back stacks – новая фича для фрагментов, с помощью которой можно сохранять стэки фрагментов и переключаться между ними.

В статье автор рассказывает как применять multiple back stacks в свежей версии Navigation и Fragment.
У многих Android разработчиков, особенно у начинающих очень часто возникает вопрос про разницу между compileSdkVersion и targetSdkVersion.

Вот собственно хорошая статейка, в которой все подробно расписано.
Serializable vs Parcelable

Хорошая статья, в которой автор подробно объясняет что и как.

Если коротко

Serializable использует рефлексию и создает много временных объектов, за счет чего потребляет больше памяти и работает медленно.

Parcelable не использует рефлексию, поэтому работает быстрее и более производительнее.
Миграция с LiveData на Kotlin’s Flow

В статье описывается, что такое SharedFlow и StateFlow, какие параметры имееют, с примерами стратегий у Flow и то, когда что лучше использовать.
Несколько ресурсов по изучению Kotlin

Kotlinlang.org – официальная документация по языку

Kotlinlang.ru – неофициальная документация на русском языке, проект поддерживается усилиями энтузиастов.

Введение в язык Котлин – бесплатный видеокурс на Сoursera, предназначен для начинающих.
Туториал по созданию Gradle плагинов

В статье рассматриваются способы упаковки и публикации плагинов + кастомные Gradle task.
Автоматические миграции в Room

Для тех, кто упустил. В Room теперь есть автомиграции, и это значительно облегчит жизнь разработчикам. Теперь не нужно будет писать кучу миграций руками с проверками версий БД и т.д., достаточно будет указать с какой версии и на какую мигрируем. Но, нужно понимать, что автомиграция покрывает не все кейсы, иногда нужно будет по старинке написать руками.
Плагин KMM для AppCode

Появился плагин, с помощью которого можно писать на Objective-C / Swift / Kotlin в одной IDE. Подсветка кода, все дела. В скором времени обещают миграцию текущих .xcodeproj и .xcworkspace проектов на Gradle DSL.

Выглядит прикольно, когда-нибудь я выделю время и наконец-то попробую KMM 😁
Топ-10 плагинов для IntelliJ IDEA

JetBrains в своем блоге подготовили подборку лучших плагинов для IntelliJ IDEA. Открыл для себя несколько прикольных, которые сразу поставил 👇

Key Promoter X
WakaTime
Rainbow brackets
Вчера наткнулся на статью про адаптацию приложения под HMS. Ранее мне не приходилсь делать поддержку HMS, но в скором времени может пригодиться. Поэтому оставлю линк тут, вдруг кому-то еще будет полезно.
Вышла новая часть курса Android Basics in Kotlin про Room.
Несколько примеров по использованию Kotlin Property Delegate в Android

В первом примере показано использование делегатов для SharedPreferences, View, Fragment Arguments. Второй пример - ViewBinding на основе Kotlin Property Delegate.

Кстати, а все уже выпилили Kotlin Synthetic?)
Обновление Kotlin 1.5.20

– Эксперементальная поддержка методов, генерируемых Lombok
– Конкатенация строк через invokedynamic
– Поддержка JSpecify nullability аннотаций
– Улучшения и ускорения в Gradle

и еще много всего.
Вы что-нибудь слышали про AppSearch? 🤔

Я до вчерашнего дня не слышал. Так вот, AppSearch – это Jetpack библиотека, которая позволяет производить эффективный, полнотекстовый поиск на устройстве. Пока что доступна только alpha версия.
Новые меры безопасности в Google Play

Play Dev ID requirements + 2-Step Verification. При создании новой учетки нужно будет указывать email + номер телефона. Ну и появилась двухфакторная верификация.
С августа 2021 для всех новых приложений нужно будет выгружать Android App Bundle вместо привычного APK. Так же Google берет на себя управление подписью приложения.

Ребята из AppTractor подготовили хорошую статью на эту тему. Там про общие моменты apk и aab, как подписываются пакеты, про безопасность и т.д..
Мифы о Scope Storage

Scope Storage актуальная тема на текущий момент, которая вызывает недопонимание у некоторых разработчиков. Если у приложения выставлен
targetSdkVersion=29
, можно проставить флаг в манифесте
requestLegacyExternalStorage=true
и система будет игнорировать ограничения Scope Storage. Но начиная с 11 версии Android, это не прокатит, система будет игнорировать флаг
requestLegacyExternalStorage
.

На Medium есть актуальная статейка на эту тему, в которой подробно рассказывают что к чему.
Пример использования Clean архитектуры под Android, с актуальным стеком (Kotlin Flow, Hilt)

Проект на Github
Крутые лекции по Android для начинающих

Наткнулся недавно на плейлист с лекциями от Android Academy. Посмотрел несколько видосов - крутые лекции от крутых ребят, доступно, понятно и на русском языке, в общем всё как мы любим. Для начинающих зайдет.

А на гитхабе можно посмотреть крутой Android Roadmap
Большая шпаргалка по Android сервисам

В статье рассказывают про использование сервисов, bound сервисы и про отличия между foreground и background.