#Firebase
Обновления продуктов Firebase
👉 Локальный эмулятор теперь поддерживает Firebase Authentication. Подробности здесь
👉 Preview channels в Firebase Hosting позволят вам посмотреть ваши изменения до их публикации
👉 Новые Firebase Extetintions. Например, в альфу уже есть расширения, которые позволяют понять онлайн или оффлайн какой-то пользователь
👉 Новые инструменты для организации Remote Config
Аналитика
👉 Редизайн Firebase Performance Monitoring
👉 Google Analytics 4 Measurement Protocol - возможность логирования событий напрямую в Google Analytics
👉 Новое Analytics Data API, предоставляющее доступ к отчетам Google Analytics и позволит вам создавать свои отчеты
👉 Admin API - настройка аккаунтов Аналитики и их прав
👉 Возможность импорта собственных сегментов из BigQuery в Firebase т.е. вы сможете использовать любые сегменты в Remote Config, Cloud Messaging и In-App Messaging. Подробности здесь
Обновления продуктов Firebase
👉 Локальный эмулятор теперь поддерживает Firebase Authentication. Подробности здесь
👉 Preview channels в Firebase Hosting позволят вам посмотреть ваши изменения до их публикации
👉 Новые Firebase Extetintions. Например, в альфу уже есть расширения, которые позволяют понять онлайн или оффлайн какой-то пользователь
👉 Новые инструменты для организации Remote Config
Аналитика
👉 Редизайн Firebase Performance Monitoring
👉 Google Analytics 4 Measurement Protocol - возможность логирования событий напрямую в Google Analytics
👉 Новое Analytics Data API, предоставляющее доступ к отчетам Google Analytics и позволит вам создавать свои отчеты
👉 Admin API - настройка аккаунтов Аналитики и их прав
👉 Возможность импорта собственных сегментов из BigQuery в Firebase т.е. вы сможете использовать любые сегменты в Remote Config, Cloud Messaging и In-App Messaging. Подробности здесь
The Firebase Blog
Helpful product updates from Firebase Summit 2020
Пост для Android-разработчиков, которые следят за безопасностью своих приложений 🔥🔥🔥
Авторский канал «paradiSEcurity» расскажет про информационную безопасность мобильных приложений.
В кратких, но емких постах раскрываются важные темы:
🌶 как создавать безопасные приложения
🌶 как сделать реверс приложения
🌶 почему сложно организовать голосование на выборах через приложение
Если интересуешься лучшими практиками защиты приложений и хочешь понимать, почему даже они не всегда выдерживают хакерские атаки, то 👉 @paradisecurity
Авторский канал «paradiSEcurity» расскажет про информационную безопасность мобильных приложений.
В кратких, но емких постах раскрываются важные темы:
🌶 как создавать безопасные приложения
🌶 как сделать реверс приложения
🌶 почему сложно организовать голосование на выборах через приложение
Если интересуешься лучшими практиками защиты приложений и хочешь понимать, почему даже они не всегда выдерживают хакерские атаки, то 👉 @paradisecurity
Telegram
paradiSEcurity
Проблемы разработки, безопасности и жизни
Cтикеры – https://t.iss.one/addstickers/hackerwomanParadisecurity
Есть вопросы, пиши @mother_paradisecurity_bot
Cтикеры – https://t.iss.one/addstickers/hackerwomanParadisecurity
Есть вопросы, пиши @mother_paradisecurity_bot
#UI
Some common mistakes when doing layout in Android
UI должен быть четкий и быстрый, допущение ошибок там черевато плохим UX. Автор стать указывает на основные ошибки, которые допускают разработичики:
👉 Не используете
👉 Использование
👉 Добавление лишних уровней вложенности/лишних ViewGroup
👉 Добавление
👉 Использование RecyclerView для фиксированного короткого набора данных, вместо статического Layout
Some common mistakes when doing layout in Android
UI должен быть четкий и быстрый, допущение ошибок там черевато плохим UX. Автор стать указывает на основные ошибки, которые допускают разработичики:
👉 Не используете
ConstraintLayout
или все его возможности👉 Использование
ConstraintLayout
, там где задачу можно решить более простым, например FrameLayout
или LinearLayout
👉 Добавление лишних уровней вложенности/лишних ViewGroup
👉 Добавление
ViewGroup
в корне layout, когда там можно использовать <merge>
👉 Использование RecyclerView для фиксированного короткого набора данных, вместо статического Layout
Medium
Some common mistakes when doing layout in Android.
Layouting is an art and we should be an artist.
#AndroidBroadcast #Security
Безопасность Android приложений, Артем Кулаков из Redmadrobot
Продолжаем защищать наши приложения от злоумышленников. В рамках выпуска мы пройдется по основным этапам защиты приложения и построим алгоритм как обеспечивать безопасность
вашего продукта от злоумышленников.
Гость выпуска - Артем Кулаков, Android TeamLead в Redmadrobot. Интересуется безопасностью приложений и серверов. Любит все виды reverse engineering и вообще всякие низкоуровневые вещи.Автор Telegram канала "Android Guards" @android_guards, в котором найдете обсуждение вопросов, касающихся безопасности Android.
Безопасность Android приложений, Артем Кулаков из Redmadrobot
Продолжаем защищать наши приложения от злоумышленников. В рамках выпуска мы пройдется по основным этапам защиты приложения и построим алгоритм как обеспечивать безопасность
вашего продукта от злоумышленников.
Гость выпуска - Артем Кулаков, Android TeamLead в Redmadrobot. Интересуется безопасностью приложений и серверов. Любит все виды reverse engineering и вообще всякие низкоуровневые вещи.Автор Telegram канала "Android Guards" @android_guards, в котором найдете обсуждение вопросов, касающихся безопасности Android.
YouTube
Безопасность Android приложений, Артем Кулаков из Redmadrobot
#AndroidBroadcast #Безопасность #Android
Продолжаем защищать наши приложения от злоумышленников. Готовим марафон вопросов, чтобы составить четкий гайд как обеспечить защиту наших продуктов.
Гость выпуска - Артем Кулаков, Android TeamLead в Redmadrobot.…
Продолжаем защищать наши приложения от злоумышленников. Готовим марафон вопросов, чтобы составить четкий гайд как обеспечить защиту наших продуктов.
Гость выпуска - Артем Кулаков, Android TeamLead в Redmadrobot.…
#Jetpack
Обзор DataStore Library. Прощаемся с SharedPreference?
Android Jetpack содержит уже множество решений, которые улучшают старые, а иногда даже убивают. Сможет ли DataStore убить
В статье автор разбирается в особенностях новой библиотеки и как с ней работать, а также сравнивает ее с другими решениями.
Обзор DataStore Library. Прощаемся с SharedPreference?
Android Jetpack содержит уже множество решений, которые улучшают старые, а иногда даже убивают. Сможет ли DataStore убить
SharedPreference
? Ключевые отличия новой библиотеки, что она полностью асинхронная на основе Kotlin Coroutines и может хранить типизированные объекты на основе Protobuf, в дополнение к парам "ключ-значение".В статье автор разбирается в особенностях новой библиотеки и как с ней работать, а также сравнивает ее с другими решениями.
У меня остается вопрос: "где шифрование данных для "ключ-значение"?
#Kotlin
Breaking down destructuring declarations
Разбор и применение Kotlin Destructuring declarations, которая позволяет удобнее работать с data классами. Да и расширение можно добавить к любому типу и в итоге эту фичу получится использовать с любым классом. Например, коллекциями
Breaking down destructuring declarations
Разбор и применение Kotlin Destructuring declarations, которая позволяет удобнее работать с data классами. Да и расширение можно добавить к любому типу и в итоге эту фичу получится использовать с любым классом. Например, коллекциями
Medium
Breaking down destructuring declarations
Kotlin Vocabulary — destructuring
#Jetpack
Обновления Android JetPack от 28 октября
Что нового:
👉 Startup 1.0.0 - новый способ правильно инициализировать компоненты в вашем приложении в правильном порядке
👉 Tracing 1.0.0 - выделение инструментов для добавления трейсов в Systrace и Perfetto
👉 WorkManager 2.5.0-beta01 - поддержка работы во множестве процессов и исправление багов
👉 Navigation Compose 1.0.0-alpha01 - интеграция Navigation Arch Component с Jetpack Compose. Навигация не использует Fragment
👉 Paging Compose 1.0.0-alpha01 - интеграция между Paging Library и Jetpack Compose
Также вас ждут выделение Wear в отдельные библиотеки, другие минорные обновления по альфам и переходы из альф в beta, из beta в rc.
Обновления Android JetPack от 28 октября
Что нового:
👉 Startup 1.0.0 - новый способ правильно инициализировать компоненты в вашем приложении в правильном порядке
👉 Tracing 1.0.0 - выделение инструментов для добавления трейсов в Systrace и Perfetto
👉 WorkManager 2.5.0-beta01 - поддержка работы во множестве процессов и исправление багов
👉 Navigation Compose 1.0.0-alpha01 - интеграция Navigation Arch Component с Jetpack Compose. Навигация не использует Fragment
👉 Paging Compose 1.0.0-alpha01 - интеграция между Paging Library и Jetpack Compose
Также вас ждут выделение Wear в отдельные библиотеки, другие минорные обновления по альфам и переходы из альф в beta, из beta в rc.
#Kotlin #Coroutines
kotlinx.coroutines 1.4.0: Introducing StateFlow and SharedFlow
Совсем недавно вышел KotlinX Coroutines 1.4.0 и 2 важных изменения, которые состоялись в этом - это стабилизация StateFlow и SharedFlow, и появление последнего. ConflatedBroadcastChannel теперь deprecated
В статье рассказываются подробности о StateFlow и SharedFlow и их API. Также вы можете посмотреть видео с обзором обновлений в Coroutine.
kotlinx.coroutines 1.4.0: Introducing StateFlow and SharedFlow
Совсем недавно вышел KotlinX Coroutines 1.4.0 и 2 важных изменения, которые состоялись в этом - это стабилизация StateFlow и SharedFlow, и появление последнего. ConflatedBroadcastChannel теперь deprecated
В статье рассказываются подробности о StateFlow и SharedFlow и их API. Также вы можете посмотреть видео с обзором обновлений в Coroutine.
#Firebase
Use Firebase Auth on Devices without Google Play Services
Firebase двигает в сторону независимости от работы на устройствах только с Google Play Services (GMS) и добавляет поддержку работы Firebase Authentication без GMS.
Use Firebase Auth on Devices without Google Play Services
Firebase двигает в сторону независимости от работы на устройствах только с Google Play Services (GMS) и добавляет поддержку работы Firebase Authentication без GMS.
#Firebase
Firebase Android BoM 26.0.0 (Bill of Materials)
Библиотека для управления всеми версиями Firebase в одном месте, указывая только версию BoM. Какие версии включены в соответствующую версию BoM можно найти здесь
Firebase Android BoM 26.0.0 (Bill of Materials)
Библиотека для управления всеми версиями Firebase в одном месте, указывая только версию BoM. Какие версии включены в соответствующую версию BoM можно найти здесь
#Jetpack #Navigation
MAD Skills Navigation Wrap-Up
На этой неделе прошла серия уроков по Navigation Component и в статье вы найдете подведение итогов
5 ноября на YouTube канале "Android Broadcast" пройдет битва в том чтобы выяснить, какой навигационный подход лучше
MAD Skills Navigation Wrap-Up
На этой неделе прошла серия уроков по Navigation Component и в статье вы найдете подведение итогов
5 ноября на YouTube канале "Android Broadcast" пройдет битва в том чтобы выяснить, какой навигационный подход лучше
#Animation #UI
Animation Tutorials
Руководство по различным типам анимациями в Android на основе примеров. Рассматривается Drawable, Property, Vector, Physics анимации, Transition и много всего. Также рассматривается как связать анимации с Coroutine
Animation Tutorials
Руководство по различным типам анимациями в Android на основе примеров. Рассматривается Drawable, Property, Vector, Physics анимации, Transition и много всего. Также рассматривается как связать анимации с Coroutine
#Android #Security
Уязвимости в реализации межпроцессного взаимодействия в Android-приложениях
Разбор организации безопасности межпроцессной безопасности в Android ОС:
👉 Особенности межпроцессного взаимодействия (IPC)
👉 Как обеспечивается безопасность IPC в Android
👉 Примеры уязвимостей и что он позволяют сделать злоумышленникам
👉 Автоматизация проверок уязвимостей: Drozer, Android Lint, Find Bugs
Уязвимости в реализации межпроцессного взаимодействия в Android-приложениях
Разбор организации безопасности межпроцессной безопасности в Android ОС:
👉 Особенности межпроцессного взаимодействия (IPC)
👉 Как обеспечивается безопасность IPC в Android
👉 Примеры уязвимостей и что он позволяют сделать злоумышленникам
👉 Автоматизация проверок уязвимостей: Drozer, Android Lint, Find Bugs
#Flutter #Crossplatform
Для всех тех, кто интересуется кроссплатформенной разработкой, я могу порекомендовать канал Oh, my Flutter @ohmyflutter.
Автор Миша Зотьев - практикующий Flutter разработчик. Регулярно делает подборку новостей из мира Flutter разработки и делится ими с вами.
В канале вы найдете контент по различным направлениям:
👉 Новинки в самом Flutter: Navigator 2.0, App Clips, "Адаптация к iOS 14"
👉 Полезные сервисы и библиотеки: Faker, GitHub Actions, Codemagic
👉 Решение проблем: "Http trouble beta", "Не находит устройство"
Для всех тех, кто интересуется кроссплатформенной разработкой, я могу порекомендовать канал Oh, my Flutter @ohmyflutter.
Автор Миша Зотьев - практикующий Flutter разработчик. Регулярно делает подборку новостей из мира Flutter разработки и делится ими с вами.
В канале вы найдете контент по различным направлениям:
👉 Новинки в самом Flutter: Navigator 2.0, App Clips, "Адаптация к iOS 14"
👉 Полезные сервисы и библиотеки: Faker, GitHub Actions, Codemagic
👉 Решение проблем: "Http trouble beta", "Не находит устройство"
#HMS
10 вопросов к поддержке HMS
В СНГ популярны телефоны Huawei на которых сейчас есть HMS вместо GMS. Поддержка разработчиков компании Huawei в России делится ответами на самые распространенные вопросы:
👉 Будет ли работать React-native и Firebase SDK на телефонах Huawei без Google Service и без изменений кода?
👉 Какие гибридные приложения поддерживает HMS?
👉 Как открыть AppGallery напрямую из приложения?
👉 Как создать Huawei Android Emulator?
👉 Что может система управления продуктами (PMS) в службе HMS In-App Purchase?
👉 Как получить доступ к payload push-уведомлений HMS?
На YouTube канале Android Broadcast вы можете найти выпуск с инженером поддержки Huawei где он ответил на эти и другие вопросы.
10 вопросов к поддержке HMS
В СНГ популярны телефоны Huawei на которых сейчас есть HMS вместо GMS. Поддержка разработчиков компании Huawei в России делится ответами на самые распространенные вопросы:
👉 Будет ли работать React-native и Firebase SDK на телефонах Huawei без Google Service и без изменений кода?
👉 Какие гибридные приложения поддерживает HMS?
👉 Как открыть AppGallery напрямую из приложения?
👉 Как создать Huawei Android Emulator?
👉 Что может система управления продуктами (PMS) в службе HMS In-App Purchase?
👉 Как получить доступ к payload push-уведомлений HMS?
На YouTube канале Android Broadcast вы можете найти выпуск с инженером поддержки Huawei где он ответил на эти и другие вопросы.
#AndroidBroadcast #Architecure #Navigation
Навигационная битва (Livestream)
Четверг, 10:00 (GMT+3)
За долгие годы в Android разработки я так и не смог найти серебряной пули для красивой организации навигации в Android приложении. Каждый раз упирался в какие-то ограничения.
Порой казалось, что святой грааль был найден, но фантазия дизайнеров и менеджеров показывала слабости решений.
Пора собраться и найти лучшее решение в библиотеке или понять что все, придется делать каждый раз руками
Гости:
- Андрей Зайцев, Андроид разработчик в ЦФТ. Устал от библиотек навигации. Свое решение ближе.
- Константин Цховребов, Teamlead KMM в JetBrains. Автор библиотеки Cicerone
- Влад Шипугин, Android разработчик в Redmadrobot. Эксперт по Navigation Arch Component
Не забываем подписаться на YouTube канал Android Broadcast, чтобы не пропустить самые интересные видео в мире Android разработки.
Навигационная битва (Livestream)
Четверг, 10:00 (GMT+3)
За долгие годы в Android разработки я так и не смог найти серебряной пули для красивой организации навигации в Android приложении. Каждый раз упирался в какие-то ограничения.
Порой казалось, что святой грааль был найден, но фантазия дизайнеров и менеджеров показывала слабости решений.
Пора собраться и найти лучшее решение в библиотеке или понять что все, придется делать каждый раз руками
Гости:
- Андрей Зайцев, Андроид разработчик в ЦФТ. Устал от библиотек навигации. Свое решение ближе.
- Константин Цховребов, Teamlead KMM в JetBrains. Автор библиотеки Cicerone
- Влад Шипугин, Android разработчик в Redmadrobot. Эксперт по Navigation Arch Component
Не забываем подписаться на YouTube канал Android Broadcast, чтобы не пропустить самые интересные видео в мире Android разработки.
#Gradle
Introducing Java toolchains
В Gradle 6.7 появилась возможность удостовериться что необходимая версия JDK установлена на компьютере и использовать ее для всех Gradle тасков (пока набор поддерживаемых ограничен)
Introducing Java toolchains
В Gradle 6.7 появилась возможность удостовериться что необходимая версия JDK установлена на компьютере и использовать ее для всех Gradle тасков (пока набор поддерживаемых ограничен)
#MLKit #CameraX
Building Barcode/QR code scanner for Android using Google ML Kit and CameraX
В статье разбирается пример создания сканера QR кодов. Для работы с камерой используется новомодная CameraX, а Google ML Kit анализирует изображение в кадре.
ML Kit Barcode Scanning API
Building Barcode/QR code scanner for Android using Google ML Kit and CameraX
В статье разбирается пример создания сканера QR кодов. Для работы с камерой используется новомодная CameraX, а Google ML Kit анализирует изображение в кадре.
ML Kit Barcode Scanning API
#Kotlin
Kotlin Android Extensions deprecated. Что делать? Инструкция по миграции
В следующей версии Kotlin 1.4.20. Kotlin Android Extentions будет deprecated, а Parcelize станет отдельным плагином. Пришло время мигрировать на другое решение, что отказаться от работы с
Kotlin Android Extensions deprecated. Что делать? Инструкция по миграции
В следующей версии Kotlin 1.4.20. Kotlin Android Extentions будет deprecated, а Parcelize станет отдельным плагином. Пришло время мигрировать на другое решение, что отказаться от работы с
findViewById
. В качестве альтернативы предлагается View Binding от Google, на который и описывается миграция