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
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
Main Loop (Главный цикл) в Android Часть 1. Пишем свой цикл

Крутая статейка про то, как устроен Main Loop приложения на примере самописной реализации. Кстати, про Handler, Lopper, MessageQueue иногда спрашивают на собесах, поэтому рекомендую почитать и понять как устроен Main Loop.
👍2
Forwarded from Digital Media
Чаты на вебсокетах

Наткнулся на серию статей про чаты на вебсокетах. Оставляю тут линки, вдруг кому-то будет полезно. От выбора протоколов и инструментов до реализации на мобилках.

👉 Чаты на вебсокетах в iOS
👉 Чаты на вебсокетах. Теперь про Android
👉 Чаты на вебсокетах. Теперь про бэкенд
👍2