Android Broadcast
14.2K subscribers
3.53K photos
342 videos
11 files
5.91K links
Подборка новостей и статей для Android разработчиков.

Реклама и связь с автором @ab_manager

РКН https://abdev.by/rkn_tg_ab
Download Telegram
#Jetpack

Обновление Android Jetpack 24.06.20

Прошло уже больше недели, а я не написал о новом релизе Jetpack. Что у нас тут:
👉 Новая стабильная версия Navigation 2.3.0: поддержка Dynamic Feature, Activity Result и др
👉 Biometric 1.1.0-alpha01 - наконец-то пофиксили все утечки памяти из первой версии
👉 Новые Emoji 1.1.0
👉 Новый мажорный релиз WorkManager на подходе - вышла первая rc
#Kotlin

Kotlin dilemma: Extension or Member

Extension функции - одна из самых популярных возможностей языка Kotlin, но проблема ее в том что разработчики слишком увлеклись ей и используют ее для всего.

Когда стоит сделать extension функцию:
👉 Nullable receiver
👉 Вы не можете модифицировать класс
👉 Сделать интерфейс/класс минималистичным
#Conference #Online #CFP

Сообщество Mobile People организовывают глобальную онлайн-конференцию Mobile Z-Days и ищут спикеров

Событие пройдет 8-10 сентября, а до 3 июля можно подать заявку, чтобы стать спикером!

Темы, которые будут на конференции: Android, iOS, Flutter, React Native, Xamarin
#Espresso #Testing

Testing Espresso Matchers

Espresso - это фреймворк для UI тестирования Android приложений. Для поиска определенной view в иерархии или для проверки состояния view в Espresso используются объекты класса org.hamcrest.Matcher

Можно использовать как множество готовых Matchers, покрывающих большинство кейсов, так и создавать собственные. Например, для редких состояний view или для custom view.

В статье расписано как можно реализовать собственный Matcher на примере custom view, и как его потом использовать в UI тестах.
#Dagger #Hilt

EXPLORING HILT: APPLICATION LEVEL CODE GENERATION

Хотите узнать как работает магия? Тогда вам стоит почитать в статью и отправиться в путешествие какой код генерирует Hilt - расширение Dagger для Android разработки
#Architecture

Вероятно, хватит рекомендовать «Чистый код»

В мире разработки ПО Роберт Мартин считается своего рода "иконой". Этот человек написал несколько книг, которые стали для многих программистов настольными. Но один из главных нюансов программирования в том, что оно постоянно развивается и видоизменяется, то что было актуально 10 лет назад сегодня может быть абсолютно нерелевантным.

Автор в статье рассказывает о неточностях и проблемах книги "Чистый код", рассказывает о том что сам код, приведённый в книге, не такой уж и "чистый". Автор не использует правило "критикуешь - предлагай", что было бы весьма актуально для подобной темы.

Интересно узнать ваше мнение относительно этой статьи, поэтому не поленитесь после прочтения поставить палец вверх или вниз в конце этого поста.
#Benchmark #Flutter #React

Native vs Flutter vs React Native: тестируем производительность в работе с UI-элементами

В статье сравнивается потребление ресурсов и быстродействие при отрисовке различных типов анимаций между нативными приложениями на Android и iPhone и такими же приложениями написанными на Flutter и React Native.

Ожидаемо, нативные приложения работают быстрее и показывают лучшие результаты в рендеринге и использовании ресурсов, Flutter держится в середине, React Native оказался наиболее медленным.
#Meetup #Online #Android11

Организаторы Android Academy из разных городов и проведут пять встреч о Android 11 и помогут узнать о всех его особенностях

Формат: раз в две недели, полтора часа горячих обсуждений, кода и выводов!
Когда: 7 июля в 19:00 (GMT+3)
#Android11 #ScopedStorage

Bringing modern storage to Viber’s users

В Android 11 ограничения к доступу файловой системы будут введены, после того как были отложены в Android 10. Вам придется проверить как вы работаете с файлами, обращаетесь к медиа и как это подружить между новыми и старыми версиями.

На своем примере рассказывают разработчики из Viber как они прошли этот путь и сделали доступ к файловой системе по всем последним рекомендациям
#GooglePlay #Subscription

New features to acquire and retain subscribers

Google Play пополняется новыми возможностями по работе с подписками:
👉 Новое flow для использования промокода теперь поможет пользователям проще получить подписку по нему
👉 Промокод для множества пользователей, которые можно использовать в рекламных кампаниях.
👉 Возможность указать что даёт подписка. При отмене подписки эта информацию будет показана пользователю
👉 Пользователи могут возобновить недавно истекшую подписку через приложение Google Play
👉 Уведомление о предстоящем уменьшение цены на подписку
👉 Функции «Account hold» и «Restoration» будут работать для всех приложений по умолчанию с 1 ноября 2020
👉 «Subscrption pause» и «Resubscribe» будут включены с возможностью отключения с 1 ноября 2020

Всем разработчикам рекомендуется перейти на Google Play Billing Library v2 или v3
Android Broadcast
ОПРОС ДЛЯ РАЗРАБОТЧИКОВ ПОД ANDROID:
Какой ОС на своем оснвном компьютере для разработке вы пользуетесь?
Больше всего среди Android разработчиков маководов. С чем это связано? С ОС или железом от компании? Также интересно узнать мнение людей кто сам выбирает Windows, а не на работе дали комп такой.

Все ответы пишите в @android_broadcast_talks
#UI

How I resolved WindowManager.BadTokenException for Toast#handleShow()?

Для всех тех кто сталкивался с тем, что падает приложение с WindowManager.BadTokenException при показе Toast, то эта статья объяснит вам как устроена система работы окон приложения и какую роль играют в ней токены.

Помимо всего вы получите библиотеку для показа Toast без проблем на любой версии Android
#AR #ARCore

ARCore Depth API открыли для всех

ARCore - это SDK для работы с дополненной реальностью. ARCore, в отличие от своего предшественника (проекта Tango), не требует специальной аппаратной поддержки, благодаря чему может применяться на различных Android устройствах.

В продолжение развития проекта Google выпустил ARCore Depth API, которое может строить карту глубины и позволяет при отображении цифровых объектов учитывать положение других объектов. И для этого не нужно никаких специальных датчиков или нескольких камер - достаточно одной обычной камеры 💪
#Android11 #Security

New Android 11 tools to make apps more private and stable

Android 11, как и любой другой мажорный релиз этой ОС, привнесли улучшения в безопасности и предоставили нам 2 новых API.

Data Access Auditing API
Позволит вам отслеживать доступ к закрытым и защищенным данным, например местоположение.

Process Exit Reasons
Возможность получить причину падения приложения. История крешей теперь доступна через ActivityManager. С помощью ActivityManager.setProcessStateSummary() вы сможете добавить свою собственную информацию, которая будет полезна в отладке
#Android11 #Security

Package visibility in Android 11

В Android 11 введены ограничения для доступа к установленным приложениям на устройстве. Теперь вы можете получить доступ к информации только тех приложений, id которых укажите заранее в манифесте вашего приложения и какие действия с ними можно делать (пример описания пакетов для доступа).

Получить доступ ко всем установленным приложениям все же остался с помощью нового разрешения QUERY_ALL_PACKAGES. Публикация приложений, использующих это разрешение, будет ограничена новой политикой Google Play.
#Kotlin

Kotlin 1.4-M3 is Out: Standard Library Changes

Вышел последний milestone (превью версия) Kotlin 1.4. За этим нас ждет RC версия, в которой финализируются фичи.

Что нового в 1.4-M3:
👉 Kotlin JVM библиотеки теперь содержат информацию о Java 9 модулях. Раньше так сделать было нельзя из-за бага в Android Gradle Plugin
👉 Функциональные интерфейсы в стандартной библиотеке. Благодаря поддержке SAM в Kotlin классах такие интерфейсы как Comparator теперь помечены функциональными
👉 Новые операторы для коллекций: sumOf, minOf, maxOf, flatMapIndexed
👉 Функции min и max для коллекций переименованы в minOrNull и maxOrNull, а существующие версии помечены как deprecated
👉 Аннотация Throws теперь добавлена в общую библиотеку, а не только в JVM
👉 Функции containsindexOf и lastIndexOf для FloatArray и DoubleArray помечены deprecated
👉 Добавлена возможность конвертации KType в Java Type без подключения библиотеки рефлексии
#Android11 #Online #Meetup

Android 11 Beta Meetup

Android 11 Beta был анонсирован 10-го июня, но GDG Москва решили не собираться по этому поводу сразу, а дать сообществу и экспертам немного времени, чтобы попробовать с ним поработать, накопить опыт и вопросы, а потом уже собраться и поговорить об этом!

Федор Цымбал, СТО компании MERA, выступит с докладом "Новинки Android 11 о которых не все слышали".
Где конечно будет говорить о фишках Android 11. Однако в этот раз это будут не Bubbles, IME Animations, One-Time Permissions и прочие новинки, о которых слышали все, кто хоть немного интересовался 11-й версией. Он расскажет о том, что еще не так широко известно, однако должно быть не менее важно или интересно как разработчику под Android, так и простому пользователю.

После доклада к митапу присоединится Кирилл Розов, создатель канала @android_broadcast, для того чтобы обсудить новинки и ответить на ваши вопросы!

Если вы хотите предложить к обсуждению интересующую вас тему, вы можете это сделать через форму регистрации

🎁Автора самой интересной темы ждет приз!