StartAndroid – Telegram
StartAndroid
9.95K subscribers
389 photos
10 videos
5 files
1.87K links
Канал об Android (Андроид) разработке

Сайт - http://startandroid.ru

Чат - https://news.1rj.ru/str/startandroidchat

Контакты - https://startandroid.ru/ru/about/cntct5.html

Реклама - https://startandroid.ru/ru/about/reklama.html

РКН - https://shorturl.at/p7iUr
Download Telegram
🚀 Хотите создать свое первое приложение на Android?

📚 Приглашаем на бесплатный вебинар в OTUS c Даниилом Поповым, экс-разработчиком Авито и Mail.Ru Group.

За 2 часа мы сделаем несложное Android приложение, которое будет позволять держать фокус на важном деле и не отвлекаться на смартфон. Приложение будет засекать время и, если пользователь не включал экран смартфона в течение заданного времени, то будет давать небольшую награду, в противном случае накопленные награды будут сгорать.

Мы сможем поработать с системными рассылками (broadcast), жизненным циклом приложения, хранилищем данных и версткой пользовательского интерфейса.

📌 Бесплатный урок пройдет в рамках онлайн-курса «Специализация Android Developer» и дает возможность попробовать формат обучения в OTUS.

👉 Чтобы попасть на мероприятие, зарегистрируйтесь на вебинар https://otus.pw/FdSI/

#реклама
👍9👎3
В Android Studio Dolphin Canary 6 у разработчиков наконец-то дошли руки до Logcat.

Добавили форматирование, кастомизацию и возможность открывать несколько Logcat окон.

А также улучшили механизм поиска, добавив туда ключи (package, tag, level, ...) и автодополнение.

#androidstudio #logs

https://androidstudio.googleblog.com/2022/03/android-studio-dolphin-canary-6-now.html
🔥68👍15👏2🤩21👎1🎉1
Автор показывает, как одну и ту же задачу будут решать разработчики с разным уровнем знания Java Concurrency.

Третье решение реализовано с помощью механизма CompletableFuture. Интересная штука, определенно стоит того, чтобы изучить ее подробнее.

#java #concurrency

https://habr.com/ru/company/piter/blog/655069/
👍9🔥2🤮2👎1
Серия видео и статей о Jetpack DataStore:
- Introduction
- All about Preferences DataStore
- All about Proto DataStore
- DataStore-serialization, sync work, and dependency injection
- DataStore-handling data migration and testing

#android #jetpack #datastore

https://android-developers.googleblog.com/2022/03/jetpack-datastore-wrap-up.html
👍8👎2🔥2
Когда не знаете, что будет завтра — вкладывайте в себя. Поступите на онлайн-курс «Android Developer. Professional» на Kotlin от OTUS. Курс предназначен для разработчиков с опытом от 1 года. Пройдите тест и узнайте, готовы ли вы к обучению.

👉🏻ПРОЙТИ ТЕСТ ПО УГЛУБЛЁННОЙ ANDROID-РАЗРАБОТКЕ: https://otus.pw/L1ed/

— Хотите протестировать учебный процесс заранее? Регистрируйтесь на бесплатный 2-дневный практический интенсив «Animated Vector Drawable» — СЕГОДНЯ, 21 марта в 20:00 мск: https://otus.pw/PhBQ/

#реклама
💩13👍8👎1
Новая библиотека Jetpack Core Performance, пока в альфе. Подскажет, насколько мощным железом обладает девайс, на котором выполняется ваше приложение

#android #hardware #performance

https://android-developers.googleblog.com/2022/03/using-performance-class-to-optimize.html
👍14🔥2👏1
Как протестировать приложение на Flutter с информацией из сети?

📌 6 апреля в 20:00 в OTUS пройдет demo-занятие в рамках онлайн-курса «Flutter Mobile Developer». Вебинар проведет Дмитрий Золотов, Flutter Developer в Яндексе с опытом работы более 20 лет.

🚀 На открытом уроке мы разберемся, как создать тесты для сетевых приложений на Flutter и проверим работу простого клиента для отображения мероприятий из публичного API на всех уровнях: модульные тесты, тесты виджетов, интеграционные тесты.

Созданные тесты будут интегрированы в единый сценарий сборки в конвейере CI.

👉 Для записи на мероприятие, пройдите вступительный тест https://otus.pw/FuuL/

#реклама
👍6👎4
Базовые рекомендации по решению проблем с производительностью приложения

#android

https://medium.com/ww-tech-blog/practical-android-profiling-58ece24934f7
👍8👏2
👍20🤔6
Вышел Kotlin 1.6.20. Одна из интересных новых фич - context receivers.

На словах объяснить непросто, но можно рассмотреть простой пример: внутри нашего кастомного View класса нам понадобилась функция конвертирования dp в px. На скриншоте выше - два варианта реализации.


Первый вариант - обычная Extension функция для Float. Внутри класса View мы сможем ее вызвать и передать ей this, чтобы она получила доступ к resources и все посчитала.


Второй вариант - использует context receivers. Оператором context мы даем этой Extension функции понять, что она будет вызвана внутри контекста View класса.

Как попасть в контекст View класса?

В нашем случае мы просто будем вызывать эту функцию внутри нашего View класса. Она сама вытянет из него resources. Нам уже не надо будет явно передавать view в функцию, как мы это делали в первом варианте.

Еще один способ попасть в контекст View класса - with(view) { ... }. В блоке кода оператора with мы сможем вызывать нашу функцию dpToPx() и она сама доберется до view, который мы передали в with().


Если же попытаться вызвать такую функцию вне контекста View, то студия выдаст ошибку: No required context receiver found.

#kotlin #extension #receiver

https://blog.jetbrains.com/kotlin/2022/04/kotlin-1-6-20-released/
👍44🔥6🤔61🥰1
Блог об Android разработке

Короткие посты с картинками о различных аспектах, с которыми сталкиваешься во время разработки:

t.me/dolgo_polo_dev/20 — Да кто этот ваш Context
t.me/dolgo_polo_dev/22 — Главная цель архитектуры или зачем столько страданий
t.me/dolgo_polo_dev/31 — Handler & Looper
t.me/dolgo_polo_dev/55 — Kotlin Coroutine — корутины за 100 слов
t.me/dolgo_polo_dev/60 — Xml - зачем префиксы android, tools, app

Карта канала — t.me/dolgo_polo_dev/36

#реклама
👍33
Google Play снова форсит нас повышать target API level.

C 01 ноября 2022 приложение станет недоступным для установки, если его target API level устарел более, чем на два года.

#android #googleplay #targetapi

https://android-developers.googleblog.com/2022/04/expanding-plays-target-level-api-requirements-to-strengthen-user-security.html
👍8😱42💩1
🚀 Как создать приложение с управлением сложными жестами, как в Opera?

📌 Об этом расскажет Дмитрий Золотов, Flutter Developer в Яндексе, 18 апреля в 20:00 мск

На открытом уроке мы:

🔸 Разберемся с принципами обнаружения жестов во Flutter
🔸 Создадим детекторы для сложных жестов управления приложением (подобно жестам мышью в Opera)
🔸 Создадим простую библиотеку для встраивания в другие приложения.

📚 Занятие дает возможность предварительно попробовать онлайн-курс «Flutter Mobile Developer» от OTUS и познакомиться с преподавателем.

👉 Для регистрации пройдите вступительный тест https://otus.pw/zbiv/

#реклама
💩12👍5🔥2
Пишут, что в Kotlin 1.7 добавят возможность явного указания типа для property getter.

Это упростит описание двойных объектов типа LiveData/MutableLiveData и StateFlow/MutableStateFlow

#kotlin

https://nikoladespotoski.medium.com/overriding-backing-property-type-in-kotlin-1-7-5581cd30e77a
👍58🔥33👏52🤔1🤮1