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-приложений

Наткнулся на статью, про локализацию и о некоторых особенностях, которые не рассматриваются в официальных ресурсах.

И вспомнил еще про одну крутую статью – там рассматривается подход, с помощью которого можно в рантайме переопределять строковые ресурсы в проекте через ваш бэкенд, переводы в xml layout там тоже учитываются. Если ваше приложение требует изменения строк по воздуху, без выпуска новой версии – статья для вас.
👍2
Podlodka стартует 6-ой сезон Android Crew

В программе: крутые спикеры, сессии в лайве, ламповое общение и обмен кейсами в слаке, записи (для тех, кто не успевает на лайв). Интенсив продлится две недели. Сессии проходят дважды в день: утром и вечером.

В первую неделю разбирают работу с сетью:

👉 как правильно проектировать сетевой слой приложения 
👉 погружаемся в протоколы передачи данных и осознанно их выбираем
👉 лучшие практики дизайна API и клиент-серверного взаимодействия

На второй неделе обсуждают дебаг до релиза и после:

👉 инструменты отладки и кейсы их применения
👉 как и зачем мониторить приложение в продакшене 
👉 системное отслеживание за перформансом приложения

Как всегда не большая, но приятная скидка по промокоду mobile_native6 😎

Cтарт: 18 октября
Промокод: mobile_native6
Купить билет: Podlodka Android Crew
👍1
Kotlin’s Flow in ViewModels: it’s complicated

Неплохая статейка, про реактивные подходы в ViewModel и сравнение: LiveData, Flow, StateFlow.
👍1
Top 50 Android Interview Questions For Android Developer Jobs

Очередной список вопросов с ответами по Android.
👍1
Forwarded from Digital Media
На выходных посмотрел довольно интересный видос и мягко говоря, был шокирован цыфрами зарплат в России. Из услышанного, 250К – средний миддл 😳, либо я где-то не там работаю, либо нужно походить по собесам 😁

Посмотрев видос, можно смело идти к руководству и просить повышения 😂
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Летающая пицца в мобильном приложении: как делали промоушен комбо «Дюна»

Прикольная реализация летающих компонентов. Оставлю тут линк, вдруг кому-то понадобится поработать с SensorManager.
👍1
Еще одна статейка про передачу данных между фрагментами. Открыл для себя новый подход из статьи через SavedStateHandle.

А вот тут, можно посмотреть как использовать Fragment Result Listener.
👍1
Jetpack Compose. Подборка на все случаи жизни👇

Прошло не так много времени с момента релиза. Я немного подождал, понаблюдал за всем происходящим и понял, что мнения сообщества разделилось 50/50: есть те, кто прям топит за него и есть те, кто относится пока еще нейтрально, как я 😁. Похоже, что тренд все таки будет смещаться в эту сторону, но думаю не быстро – сообществу нужно время на изучение, принятие нового подхода и вот это вот всё – время еще есть 😉

Поэтому и решил собрать популярные материалы для плавного входа в одном посте👇

Official Resources

• Официальная документация
• Практический курс от гугла
• API Guidelines for Jetpack Compose

Navigations

• Navigating in Jetpack Compose
• Android Bottom Navigation Bar With Jetpack Compose
• Navigation in multi module Android Compose UI project + Hilt
• Animations in Navigation Compose

Architecture

• Providing AssistedInject supported ViewModel for Composable using Hilt
• ViewModels using Compose: MutableStateFlows or MutableStates?
Compose UI and the death of ViewModel

Style/Theme

• Theming in Compose
• Jetpack Compose: Layouts
• Jetpack Compose: Theme and Typography
Jetpack Compose: Styling Text
• Сustom theme in Jetpack Compose

List

• Бесконечная автопрокрутка списков с помощью RecyclerView и LazyLists в Compose
• Jetpack Compose: Building Grids
• List animations in Compose: Swipe to delete
• Video playback in LazyColumn in Jetpack Compose
• Basic Drag-n-Drop in Jetpack Compose

Side-Effects

• Jetpack Compose Side-Effects I — LaunchedEffect
• Jetpack Compose Side-Effects II — rememberCoroutineScope
Jetpack Compose Side-Effects III — rememberUpdatedState

Testing

• Testing in Jetpack Compose – Codelab
• How to test Jetpack Compose
Kakao Compose

Tools

• Accompanist — первый аккорд. Обзор библиотеки для Jetpack Compose
• Jetpack Compose internals
• JetpackCompose App
Jetpack/JetBrains Compose Playground
• A Vocabulary of Jetpack Compose Terms

@mobile_native – не стесняйся, подпишись 🤝
👍21🔥1
Modern data storage on Android: Meet Jetpack DataStore

Очередная статейка про использование DataStore. Там есть интересная табличка с сравнением фичей SharedPreferences, PreferencesDataStore и ProtoDataStore.

А вот тут Codelab по DataStore.
👍2
Android Dev Summit 2021 | All Sessions

Для тех, кто по каким-либо причинам пропустил или просто не успел посмотреть, вот тут плейлист со всеми докладами, а тут есть все темы.

Из интересного

👉 Kotlin Flows in practice
👉 WorkManager: Back to the foreground
👉 Implementing Material You using Jetpack Compose
👉 Material You: Applying dynamic color to your app and brand
👉 Design to code
👉 Material Design 3
👍1
5 amazing Gradle Plugins for Android apps

5 Gradle плагинов, которые помогут почистить неиспользуемые ресурсы, отследить проблемы на этапе сборки и пофиксить проблемы Gradle кеша.
👍1🤔1
Easy convert from Figma designs to Android Jetpack Compose code

Плагин, с помощью которого можно конвертировать дизайн из Figma в Jetpack Compose code.
👍1
Migrating to Material Design 3

Краткий гайд по миграции с M2 на M3, в котором рассмотрены основные штуки: Colors and Themes, DynamicColors, Typography и т.д.

Полезные ссылки:

👉 Color theming
👉 Applying Dynamic Color codelab
👉 Widgets
👉 Customizing Material
👉 Material Theme Builder (Figma plugin)
👍1
How to organize your debug and release Android code

Статья про организацию debug и release кода. Полезно будет для начинающих и для тех, кто не работал с source sets.
👍1
Как проверить наличие интернет-соединения?

Спойлер – никак!

За последние несколько дней, в одном из публичных собесов и в некоторых ТГ-чатиках, задают достаточно актуальный вопрос – «Как проверить наличие интернет-соединения?»

Так вот, на 100% убедиться в наличии интернет-соединения никак нельзя. Есть несколько распространенных способов, которые принято юзать и через которые можно косвенно проверить наличие инета, но нужно понимать, что это не 100% гарантия.

Способ 1ConnectivityManager. Наиболее распространенный, который встречается чаще и в общем-то для типовых задач, вполне подходит. Нужно понимать, что через ConnectivityManager можно проверить активные подключения интерфейсов, но никак не наличие выхода в интернет. Простой пример – wifi точки (метро, макдак, ТЦ и т.д.), подключение есть, но выхода в интернет нет – нужна авторизация.

Способ 2 – Выполнить любой запрос. Этот способ встречается реже и так же не дает 100% гарантии. Суть простая – выполняем простой запрос к какому-нибудь серваку, получили 200 OK – считаем, что интернет есть. Тут проблема в другом – найти сервак, который будет постоянно доступен, а как мы знаем, в последнее время падает всё (google, cloudflare, facebook, amazon, etc). В одном из собесов говорили о серваках 8.8.8.8, 1.1.1.1, но и они порой бывают не доступны.

Такие дела. И несколько полезных ссылок👇

👉 Monitor connectivity status and connection metering
👉 Implementing Internet Connectivity Checker in Android Apps
👉 How To Monitor Internet Connection in Android Using Kotlin and LiveData
👉 How to check internet connection on Android "Q"

@mobile_native
👍3
Design Patterns in Android with Kotlin

В статье собраны наиболее популярные паттерны с кратким пояснением и примерами для каждого. От Builder до Clean Architecture 😉
👍2
Modeling Android Screens as State

Неплохая статья, про сравнение различных подходов к проектированию стейтов для экранов.

- Monolithic State
- Mutually-Exclusive States
- Granular States
- Mavericks
👍2
Как не выйти в Window при работе с Window?

Крутая статья, про один из методов lifecycle onResume() и Window, как они связаны, кто кого вызывает и вот это вот всё.

В начале статьи есть вопрос «Что произойдет, если заморозить onResume при первом запуске приложения внутри Activity» и есть 4 варианта ответа. Так вот, попробуйте подумать и дать свой ответ, неглядя правильный ответ – возможно вас, как и меня удивит правильный ответ. Почему-то я выбрал 1 вариант 🤷
👍1
В AppMetrica появилась атрибуция установок из Facebook Ads для Android

Теперь AppMetrica поддерживает трекинг установок из Facebook для Android-девайсов. Cтатистику по нему можно посмотреть в отчете User Acquisition.

Используйте данные об установках чтобы:

👉 Оценивать доход от встроенных и e-com покупок
👉 Наблюдать за удержанием новых юзеров и LTV от них
👉 Анализировать конверсию в покупку для пользователей, которые пришли с рекламы в Facebook
👍1