Представляю первый практический видеокурс по реактивному
программированию на RxJava 2.0 с примерами на Kotlin.
Этот курс будет полезен начинающим разработчикам, которые хотят научиться использовать RxJava для эффективного управления многопоточностью.
Курс состоит из 16 уроков и 29 тестов, каждый из которых наглядно показывает применение Rx, а в конце каждого урока - тесты для закрепления материала.
Кроме того, вы можете задавать вопросы в комментариях к уроку - я буду стараться отвечать максимально быстро.
После курса вы сможете:
Использовать RxJava для запросов в сеть, базу данных
Избавиться от Callback Hell в ваших Android-приложениях
Писать асинхронный код, используя операторы subscribeOn/observeOn
Использовать операторы RxJava (map/flatMap/filter/zip/merge и др.)
Понимать чем отличаются разные типы Observable
Уметь обрабатывать ошибки с помощью операторов onErrorReturnItem(), retry() и др.
Стоимость курса всего 1290 рублей, но для подписчиков @android_school_ru
в течение недели действует специальная скидка 30%
с промокодом debounce. Пожалуйста, не забудьте оставить отзыв на Stepic.
Ссылка на курс https://stepik.org/course/62807/promo
программированию на RxJava 2.0 с примерами на Kotlin.
Этот курс будет полезен начинающим разработчикам, которые хотят научиться использовать RxJava для эффективного управления многопоточностью.
Курс состоит из 16 уроков и 29 тестов, каждый из которых наглядно показывает применение Rx, а в конце каждого урока - тесты для закрепления материала.
Кроме того, вы можете задавать вопросы в комментариях к уроку - я буду стараться отвечать максимально быстро.
После курса вы сможете:
Использовать RxJava для запросов в сеть, базу данных
Избавиться от Callback Hell в ваших Android-приложениях
Писать асинхронный код, используя операторы subscribeOn/observeOn
Использовать операторы RxJava (map/flatMap/filter/zip/merge и др.)
Понимать чем отличаются разные типы Observable
Уметь обрабатывать ошибки с помощью операторов onErrorReturnItem(), retry() и др.
Стоимость курса всего 1290 рублей, но для подписчиков @android_school_ru
в течение недели действует специальная скидка 30%
с промокодом debounce. Пожалуйста, не забудьте оставить отзыв на Stepic.
Ссылка на курс https://stepik.org/course/62807/promo
ANDROID SCHOOL.RU - Android на практике pinned «Представляю первый практический видеокурс по реактивному программированию на RxJava 2.0 с примерами на Kotlin. Этот курс будет полезен начинающим разработчикам, которые хотят научиться использовать RxJava для эффективного управления многопоточностью. Курс…»
#room #миграции
Как написать миграцию базы данных для Room?
Миграции базы данных порой пугают начинающих разработчиков и вместо правильной обработки смены версии БД, многие выбирают просто удаление старой базы данных вместе с данными.
Такой способ не подойдет для приложений, которые хранят данные, потому что в этом случае при обновлении приложения - все данные удалятся.
Поэтому в этой статье мы рассмотрим миграции версий базы данных на примере использования Room и научимся тестировать корректность миграций.
А я напоминаю, что совсем скоро, промокод на курс RxJava для начинающих станет недоступен, поспешите!
http://androidschool.ru/2020/03/24/room-migrations/
Как написать миграцию базы данных для Room?
Миграции базы данных порой пугают начинающих разработчиков и вместо правильной обработки смены версии БД, многие выбирают просто удаление старой базы данных вместе с данными.
Такой способ не подойдет для приложений, которые хранят данные, потому что в этом случае при обновлении приложения - все данные удалятся.
Поэтому в этой статье мы рассмотрим миграции версий базы данных на примере использования Room и научимся тестировать корректность миграций.
А я напоминаю, что совсем скоро, промокод на курс RxJava для начинающих станет недоступен, поспешите!
http://androidschool.ru/2020/03/24/room-migrations/
#собеседования
Какие вопросы задают и как подготовиться к собеседованию на позицию Android-разработчик?
Начинающие разработчики не могут похвастаться большим числом проектов и опытом. Однако, если вас позвали на собеседование, нужно воспользоваться этим шансом и проявить себя на все 200%. Для этого нужно хорошенько подготовиться к собеседованию. Как это сделать? Читайте в сегодняшней статье.
Мы рассмотрим основные вопросы по Android и сопутствующим технологиям, таким как Java/Kotlin/Rx, а также в статье есть общие советы по подготовке и список книг
http://androidschool.ru/2020/03/26/interview/
@android_school_ru
Какие вопросы задают и как подготовиться к собеседованию на позицию Android-разработчик?
Начинающие разработчики не могут похвастаться большим числом проектов и опытом. Однако, если вас позвали на собеседование, нужно воспользоваться этим шансом и проявить себя на все 200%. Для этого нужно хорошенько подготовиться к собеседованию. Как это сделать? Читайте в сегодняшней статье.
Мы рассмотрим основные вопросы по Android и сопутствующим технологиям, таким как Java/Kotlin/Rx, а также в статье есть общие советы по подготовке и список книг
http://androidschool.ru/2020/03/26/interview/
@android_school_ru
#room #fts #поиск
Как реализовать полнотекстовый поиск в Android-приложении?
Вы когда-нибудь задумывались, как можно реализовать поиск в приложении для
чтения книг?
В этой статье мы рассмотрим как реализовать полнотекстовый поиск при использовании популярной среди Android-разработчиков ORM Room. Это может вам пригодиться, если вы разрабатываете приложение для чтения книг или, например в вашем приложении есть много текстовой информации по которой необходимо сделать поиск.
https://bit.ly/2xF2j6g
@android_school_ru
Как реализовать полнотекстовый поиск в Android-приложении?
Вы когда-нибудь задумывались, как можно реализовать поиск в приложении для
чтения книг?
В этой статье мы рассмотрим как реализовать полнотекстовый поиск при использовании популярной среди Android-разработчиков ORM Room. Это может вам пригодиться, если вы разрабатываете приложение для чтения книг или, например в вашем приложении есть много текстовой информации по которой необходимо сделать поиск.
https://bit.ly/2xF2j6g
@android_school_ru
Medium
Полнотекстовый поиск в Room
В этой статье мы рассмотрим как реализовать полнотекстовый поиск при использовании популярной среди Android-разработчиков ORM Room. Это…
#RxJava2
5 частых ошибок при работе с RxJava
Всем привет! Мы рассмотрим наиболее часто встречающиеся ошибки,
которые допускают начинающие разработчики, которые только-только пишут
реактивный код на RxJava. Порой такие ошибки могут серьёзно влиять на
производительность вашего приложения, и, кроме того, иногда усложняют
чтение вашей Rx — цепочки. Поэтому прочитайте эту статью и старайтесь
избегать их в будущем!
https://bit.ly/2UXV0OZ
@android_school_ru
5 частых ошибок при работе с RxJava
Всем привет! Мы рассмотрим наиболее часто встречающиеся ошибки,
которые допускают начинающие разработчики, которые только-только пишут
реактивный код на RxJava. Порой такие ошибки могут серьёзно влиять на
производительность вашего приложения, и, кроме того, иногда усложняют
чтение вашей Rx — цепочки. Поэтому прочитайте эту статью и старайтесь
избегать их в будущем!
https://bit.ly/2UXV0OZ
@android_school_ru
Medium
5 частых ошибок при работе с RxJava
Всем привет! Мы рассмотрим наиболее часто встречающиеся ошибки, которые допускают начинающие разработчики, которые только-только пишут…
#RecyclerView #MergeAdapter
Делаем код в адаптере чище с помощью MergeAdapter.
Надоели перегруженные и сложные адаптеры в вашем проекте, напоминающие картинку ниже? Каждый раз при добавлении нового типа ячейки хочется переписать адаптер для RecyclerView чтобы код читался проще?
Есть множество подходов, чаще всего рекомендуется использовать подход delegate adapter или, например библиотеку groupie для динамического создания списков с различными типами view, о работе с которой я планирую написать статью или даже туториал в ближайшее время.
Но сегодня я расскажу о новом классе MergeAdapter появившемся в android совсем недавно, который поможет инкапсулировать
логику вашего адаптера для разных ячеек, тем самым соответствовать принципам SOLID.
https://bit.ly/2UG4e3t
@android_school_ru
Делаем код в адаптере чище с помощью MergeAdapter.
Надоели перегруженные и сложные адаптеры в вашем проекте, напоминающие картинку ниже? Каждый раз при добавлении нового типа ячейки хочется переписать адаптер для RecyclerView чтобы код читался проще?
Есть множество подходов, чаще всего рекомендуется использовать подход delegate adapter или, например библиотеку groupie для динамического создания списков с различными типами view, о работе с которой я планирую написать статью или даже туториал в ближайшее время.
Но сегодня я расскажу о новом классе MergeAdapter появившемся в android совсем недавно, который поможет инкапсулировать
логику вашего адаптера для разных ячеек, тем самым соответствовать принципам SOLID.
https://bit.ly/2UG4e3t
@android_school_ru
#скидка
Всем привет! Для новых участников канала, и тех, кто по каким-то причинам
не успел воспользоваться предыдущей скидкой, делюсь промокодом на почти 20% скидку на практический онлайн-курс RxJava 2.0, максимально адаптированный для разработки Android-приложений.
Курс идеально подойдет для начинающих Android-разработчиков, понимающих Java или Kotlin.
После курса вы сможете:
Использовать RxJava для запросов в сеть, базу данных
Избавиться от Callback Hell в ваших Android-приложениях
Писать асинхронный код, используя операторы subscribeOn/observeOn
Использовать операторы RxJava (map/flatMap/filter/zip/merge и др.)
Уметь обрабатывать ошибки с помощью RxJava
Научитесь работать с различными видами Subjects: PublishSibject, BehaviorSibject и т.д.
Курс активно дорабатывается и добавляются новые темы, но и цена со временем будет увеличиваться, так что не упустите выгодную цену.
Вы всегда сможете задать вопросы в комментариях к уроку и получить своевременный ответ.
Промокод observable действует неделю.
https://stepik.org/course/62807/promo
@android_school_ru
Всем привет! Для новых участников канала, и тех, кто по каким-то причинам
не успел воспользоваться предыдущей скидкой, делюсь промокодом на почти 20% скидку на практический онлайн-курс RxJava 2.0, максимально адаптированный для разработки Android-приложений.
Курс идеально подойдет для начинающих Android-разработчиков, понимающих Java или Kotlin.
После курса вы сможете:
Использовать RxJava для запросов в сеть, базу данных
Избавиться от Callback Hell в ваших Android-приложениях
Писать асинхронный код, используя операторы subscribeOn/observeOn
Использовать операторы RxJava (map/flatMap/filter/zip/merge и др.)
Уметь обрабатывать ошибки с помощью RxJava
Научитесь работать с различными видами Subjects: PublishSibject, BehaviorSibject и т.д.
Курс активно дорабатывается и добавляются новые темы, но и цена со временем будет увеличиваться, так что не упустите выгодную цену.
Вы всегда сможете задать вопросы в комментариях к уроку и получить своевременный ответ.
Промокод observable действует неделю.
https://stepik.org/course/62807/promo
@android_school_ru
Stepik: online education
Программирование на RxJava 2.0 для Android.
На этом курсы вы научитесь использовать библиотеку RxJava 2.0 для программирования Android-приложений. Мы рассмотрим концепцию реактивного программирования, научимся писать многопоточный код и использовать основные операторы Rx.
#видео
Хочу поделиться с вами отличным набором видеоуроков от коллег из Яндекс.
Школа мобильной разработки — набор лекций об устройстве Android.
Часть материала уже немного устарела, но даже сейчас будет очень полезна как начинающим,так и уже более-менее опытным разработчикам. Очень хорошо помогает систематизировать знания и выявить пробелы, сохраняй в подборки чтобы не забыть.
https://bit.ly/39Ngxz5
@android_school_ru
Хочу поделиться с вами отличным набором видеоуроков от коллег из Яндекс.
Школа мобильной разработки — набор лекций об устройстве Android.
Часть материала уже немного устарела, но даже сейчас будет очень полезна как начинающим,так и уже более-менее опытным разработчикам. Очень хорошо помогает систематизировать знания и выявить пробелы, сохраняй в подборки чтобы не забыть.
https://bit.ly/39Ngxz5
@android_school_ru
Цель канала - максимально полезные статьи и туториалы для Android-разработчиков.
Поэтому небольшой опрос, что вас интересует и о каких темах хотелось бы узнать больше:
Поэтому небольшой опрос, что вас интересует и о каких темах хотелось бы узнать больше:
Anonymous Poll
18%
Rxjava и корутины
5%
Room, Realm, и БД
24%
Паттерны и архитектура
32%
Туториалы для новичков
8%
Собеседования и карьера
13%
Android Architecture Components
ANDROID SCHOOL.RU - Android на практике pinned «#скидка Всем привет! Для новых участников канала, и тех, кто по каким-то причинам не успел воспользоваться предыдущей скидкой, делюсь промокодом на почти 20% скидку на практический онлайн-курс RxJava 2.0, максимально адаптированный для разработки Android-приложений.…»
#RecyclerView #Groupie
Как сделать сложный список с вложенным RecyclerView за 20 минут?
Вы когда-нибудь думали как сделать список контента как в приложении Google Play?
Списки являются основным способом представления различного контента в мобильных приложениях. Будь то социальная сеть, приложение для чтения книг или интернет-магазин, в большинстве таких приложений встречаются списки с разными видами ячеек, разного уровня вложенности. Очень многих такая распространённая задача как: отобразить RecyclerView в ячейке RecyclerView ставит в тупик и они начинают использовать ScrollView - что категорически запрещено (так как OutOfMemory тут обеспечен) или ViewPager.
Поэтому я написал очень подробный туториал на эту тему с примером проекта на GitHub.
Итак, задача: создать список для отображения различного вида контента, при этом каждая категория, то есть ячейка списка может содержать неограниченное количество более мелких ячеек и иметь горизонтальный скрол. Звучит сложно? Если вы думаете что это сложная задача, над которой вам нужно будет работать всю неделю, то спешу вас обрадовать, мы сделаем такой список примерно за полчаса. В конце у вас получится вот такой список как на картинке.
http://tiny.cc/nx5dnz
@android_school_ru
Как сделать сложный список с вложенным RecyclerView за 20 минут?
Вы когда-нибудь думали как сделать список контента как в приложении Google Play?
Списки являются основным способом представления различного контента в мобильных приложениях. Будь то социальная сеть, приложение для чтения книг или интернет-магазин, в большинстве таких приложений встречаются списки с разными видами ячеек, разного уровня вложенности. Очень многих такая распространённая задача как: отобразить RecyclerView в ячейке RecyclerView ставит в тупик и они начинают использовать ScrollView - что категорически запрещено (так как OutOfMemory тут обеспечен) или ViewPager.
Поэтому я написал очень подробный туториал на эту тему с примером проекта на GitHub.
Итак, задача: создать список для отображения различного вида контента, при этом каждая категория, то есть ячейка списка может содержать неограниченное количество более мелких ячеек и иметь горизонтальный скрол. Звучит сложно? Если вы думаете что это сложная задача, над которой вам нужно будет работать всю неделю, то спешу вас обрадовать, мы сделаем такой список примерно за полчаса. В конце у вас получится вот такой список как на картинке.
http://tiny.cc/nx5dnz
@android_school_ru
#android #sourcecode
Что скрывается в исходниках Android?
Спасибо всем, кто ответил в опросе, ваша обратная свзяь очень полезна при разарботке контента для блога.
Вижу, что в тройке лидеров туториалы для новичков, Rx и архитектура. Значит не зря я активно дорабатываю курс по RxJava - вам точно пригодится!
А пока я дорабатываю статью по паттернам и пилю новый туториал по Android, хочу поделиться с вами забавной пасхалкой, которую нашёл во время отладки кода.
Во время поиска коварного бага, я нашёл новый тип layout - BlinkLayout, который появился в исходном коде Android в 2011 года!
Для чего он нужен и можно ли его использовать - читайте в статье. Если вы думали, что читать исходники Android
утомительно и скучно - то вот вам доказательство, что это ещё и весело!
https://bit.ly/2VOYN2J
@android_school_ru
Что скрывается в исходниках Android?
Спасибо всем, кто ответил в опросе, ваша обратная свзяь очень полезна при разарботке контента для блога.
Вижу, что в тройке лидеров туториалы для новичков, Rx и архитектура. Значит не зря я активно дорабатываю курс по RxJava - вам точно пригодится!
А пока я дорабатываю статью по паттернам и пилю новый туториал по Android, хочу поделиться с вами забавной пасхалкой, которую нашёл во время отладки кода.
Во время поиска коварного бага, я нашёл новый тип layout - BlinkLayout, который появился в исходном коде Android в 2011 года!
Для чего он нужен и можно ли его использовать - читайте в статье. Если вы думали, что читать исходники Android
утомительно и скучно - то вот вам доказательство, что это ещё и весело!
https://bit.ly/2VOYN2J
@android_school_ru
Medium
BlinkLayout в Android
В этой истории я расскажу о том, что дебажить и изучать исходный код не только полезно, но и весело. Исследуя работу LayoutInlater и…
#di #service_locator
Чем отличается Dependency injection от Service Locator ?
Всем привет! Пока я пишу новый мини-туториал по одному из самых популярных
DI - фреймворков для Kotlin Android-приложений под названием Koin, чтобы вы не скучали, написал статью - введение, которая наглядно (надеюсь) покажет отличия между двумя популярными подходами и вообще объяснить что такое Dependency Injection и зачем оно нужно вам, если вы хотите писать гибкие и масштабируемые, а самое главное тестируемые приложения. Кстати такие вопросы любят задавать и на собеседованиях в том числе, так что думаю статья будет актуальна.
https://bit.ly/2A18wue
@android_school_ru
Чем отличается Dependency injection от Service Locator ?
Всем привет! Пока я пишу новый мини-туториал по одному из самых популярных
DI - фреймворков для Kotlin Android-приложений под названием Koin, чтобы вы не скучали, написал статью - введение, которая наглядно (надеюсь) покажет отличия между двумя популярными подходами и вообще объяснить что такое Dependency Injection и зачем оно нужно вам, если вы хотите писать гибкие и масштабируемые, а самое главное тестируемые приложения. Кстати такие вопросы любят задавать и на собеседованиях в том числе, так что думаю статья будет актуальна.
https://bit.ly/2A18wue
@android_school_ru
Medium
Чем отличается Dependency injection от Service Locator ?
Продолжаю тему паттернов проектирования и в этом посте мы рассмотрим чем отличаются 2 озвученных в заголовке паттерна и для чего они нужны…
#новый_курс #alarm_manager #notifications
Всем привет! Выходные - отличная возможность научиться чему-то новому и полезному! Поэтому представляю вам новый бесплатный мини-курс по разработке Android-приложений.
Очень часто возникают задачи, в которых нужно выполнять какую-то логику по расписанию или в запланированное время.
Это могут быть сетевые запросы для обновления виджета, отправление аналитики, или уведомление пользователля. Для такого
рода задач вы можете использовать AlarmManager и именно о нём будет этот мини-курс.
Мы разработаем приложение Фитнес-календарь, который будет напоминать вам о ежедневных тренировках. В процессе выполнения проекта вы освоите работу с Android Notifications для отображения уведомлений, а также вы научитесь использовать Alarm Manager и Broadcast Receiver для запуска механизма напоминаний.
Вы освоите:
Android Notifications и Notification Channels
PendingIntent
Alarm Manager
BroadcastReceiver
Room для хранения информации в качестве локальной БД
Примерное время для выполнения: 1.5 -2 часа
В результате у вас будет полноценное приложение и понимание, как использовать перечисленные компоненты.
https://androidschool.ru/courses/fitness-android-notifications-alarm-manager/
@android_school_ru
Всем привет! Выходные - отличная возможность научиться чему-то новому и полезному! Поэтому представляю вам новый бесплатный мини-курс по разработке Android-приложений.
Очень часто возникают задачи, в которых нужно выполнять какую-то логику по расписанию или в запланированное время.
Это могут быть сетевые запросы для обновления виджета, отправление аналитики, или уведомление пользователля. Для такого
рода задач вы можете использовать AlarmManager и именно о нём будет этот мини-курс.
Мы разработаем приложение Фитнес-календарь, который будет напоминать вам о ежедневных тренировках. В процессе выполнения проекта вы освоите работу с Android Notifications для отображения уведомлений, а также вы научитесь использовать Alarm Manager и Broadcast Receiver для запуска механизма напоминаний.
Вы освоите:
Android Notifications и Notification Channels
PendingIntent
Alarm Manager
BroadcastReceiver
Room для хранения информации в качестве локальной БД
Примерное время для выполнения: 1.5 -2 часа
В результате у вас будет полноценное приложение и понимание, как использовать перечисленные компоненты.
https://androidschool.ru/courses/fitness-android-notifications-alarm-manager/
@android_school_ru
#отладка #flipper #lynx
3 Полезных инструмента и приёма для разработчиков для отладки и тестирования приложений
Cегодня мы поговорим именно об инструментах и лучших практиках, которые облегчат вам и вашим тестировщикам жизнь при отладке и проверке мобильных приложений. Бывало так, что нужно посмотреть логи прямо в приложении, а студии не было рядом?
Или быстро посмотреть запрос/ответ или значение базы данных? Поэтому тут поделюсь отличными инструментами, которые на мой взгляд, довольно сильно улучшают производительность разработчика и всей команды в целом, при этом не требуют много времени для интеграции.
https://bit.ly/3hbrsYn
@android_school_ru
3 Полезных инструмента и приёма для разработчиков для отладки и тестирования приложений
Cегодня мы поговорим именно об инструментах и лучших практиках, которые облегчат вам и вашим тестировщикам жизнь при отладке и проверке мобильных приложений. Бывало так, что нужно посмотреть логи прямо в приложении, а студии не было рядом?
Или быстро посмотреть запрос/ответ или значение базы данных? Поэтому тут поделюсь отличными инструментами, которые на мой взгляд, довольно сильно улучшают производительность разработчика и всей команды в целом, при этом не требуют много времени для интеграции.
https://bit.ly/3hbrsYn
@android_school_ru
Medium
3 Полезных инструмента и приёма для разработчиков для отладки и тестирования приложений
Всем привет! Работа разработчика не ограничивается написанием нового кода и фич. К сожалению, большая часть нашей работы состоит из…
#adb #приёмы_эффективности
5 полезных команд Android Debug Bridge, которые повысят вашу эффективность
Всем привет! Помимо того, что я веду курсы по Android-разработке, недавно начал вести курс для тестировщиков мобильных приложений. Ну там рассказать как тестировать производительность приложений, проверить overdraw, runtime-permisions и кучу ещё всего для проверки именно мобильных приложений. Одной из тем была работа с adb (Android Debug Bridge).
Если вы раньше использовали эту штуку только для установки/удаления apk, то спешу поделиться с вами удобнейшим набором команд на все случаи жизни. Рекомендую ознакомиться и использовать - повысите эффективность и заметно вырастите в глазах коллег.
Из интересного:
- Быстрая проверка UI приложения через смену конфигурации экрана
- Сброс прав/разрешений приложения (очень удобно для тех, кто не хочет тратить время на поиски в настройках)
- Изменение SharedPreference (Спорим вы не знали об этом?)
- Сохранение логов в файл
- Ввод текста в EditText (а если знаете python то можно написать скрипт и не вводить одно и тоже при авторизации)
Здесь я указал самые частые кейсы, которыми пользуюсь сам, но с полным списком команд можете ознакомиться по ссылке
https://gist.github.com/Pulimet/5013acf2cd5b28e55036c82c91bd56d8
Ну а ещё, совсем скоро вас ждёт новый курс по работе с одним из компонентов Android Jetpack - WorkManager
@android_school_ru
5 полезных команд Android Debug Bridge, которые повысят вашу эффективность
Всем привет! Помимо того, что я веду курсы по Android-разработке, недавно начал вести курс для тестировщиков мобильных приложений. Ну там рассказать как тестировать производительность приложений, проверить overdraw, runtime-permisions и кучу ещё всего для проверки именно мобильных приложений. Одной из тем была работа с adb (Android Debug Bridge).
Если вы раньше использовали эту штуку только для установки/удаления apk, то спешу поделиться с вами удобнейшим набором команд на все случаи жизни. Рекомендую ознакомиться и использовать - повысите эффективность и заметно вырастите в глазах коллег.
Из интересного:
- Быстрая проверка UI приложения через смену конфигурации экрана
- Сброс прав/разрешений приложения (очень удобно для тех, кто не хочет тратить время на поиски в настройках)
- Изменение SharedPreference (Спорим вы не знали об этом?)
- Сохранение логов в файл
- Ввод текста в EditText (а если знаете python то можно написать скрипт и не вводить одно и тоже при авторизации)
Здесь я указал самые частые кейсы, которыми пользуюсь сам, но с полным списком команд можете ознакомиться по ссылке
https://gist.github.com/Pulimet/5013acf2cd5b28e55036c82c91bd56d8
Ну а ещё, совсем скоро вас ждёт новый курс по работе с одним из компонентов Android Jetpack - WorkManager
@android_school_ru
Gist
Adb useful commands list
Adb useful commands list. GitHub Gist: instantly share code, notes, and snippets.
#новый_курс #work_manager #rxworker
Если вы ещё не работали с мощным и гибким инструментом из Android JetPack - WorkManager - то этот бесплатный практический курс для вас! В этом курсе вы научитесь управлять фоновыми задачами, используя рекомендованный Google компонент – WorkManager. Это современный способ для управления задачами, которые должны выполняться не в UI – потоке, даже когда пользователь уже активно не взаимодействует с приложением.
Задачи, эффективно решаемые с помощью WorkManager
- Выполнение сетевых запросов с заданной периодичностью
- Очищение кэша базы данных раз в сутки
- Обновление информации для виджетов
- Последовательное выполнение фоновых задач
- Скачивание тяжёлых файлов
- Трекинг геолокации пользователя в фоне
В этом курсе вы разработаете приложение-геотрекер. Приложение получает координаты устройства и сохраняет в локальную БД Room каждые 15 минут.
Вы освоите:
- Запуск фоновых задач без работы приложения через WorkManager
- Условия запуска фоновой задачи с использованием Constraints (наличие сети, состояние батареи и т.д.)
- Виды задач OneTimeWorkRequest и PeriodicWorkRequest
- Работа с RxWorker
- Способы получения геолокации через FusedLocationProviderClient
- Room для хранения информации в качестве локальной БД
- Flipper как инструмент для отладки Android-приложений
Курс бесплатный, но требуется регистрация. После регистрации вам доступны уроки и пошаговые примеры кода. Не забудьте оставить обратную связь и оценить курс
https://androidschool.ru/courses/background-tasks-with-workmanager/
@android_school_ru
Если вы ещё не работали с мощным и гибким инструментом из Android JetPack - WorkManager - то этот бесплатный практический курс для вас! В этом курсе вы научитесь управлять фоновыми задачами, используя рекомендованный Google компонент – WorkManager. Это современный способ для управления задачами, которые должны выполняться не в UI – потоке, даже когда пользователь уже активно не взаимодействует с приложением.
Задачи, эффективно решаемые с помощью WorkManager
- Выполнение сетевых запросов с заданной периодичностью
- Очищение кэша базы данных раз в сутки
- Обновление информации для виджетов
- Последовательное выполнение фоновых задач
- Скачивание тяжёлых файлов
- Трекинг геолокации пользователя в фоне
В этом курсе вы разработаете приложение-геотрекер. Приложение получает координаты устройства и сохраняет в локальную БД Room каждые 15 минут.
Вы освоите:
- Запуск фоновых задач без работы приложения через WorkManager
- Условия запуска фоновой задачи с использованием Constraints (наличие сети, состояние батареи и т.д.)
- Виды задач OneTimeWorkRequest и PeriodicWorkRequest
- Работа с RxWorker
- Способы получения геолокации через FusedLocationProviderClient
- Room для хранения информации в качестве локальной БД
- Flipper как инструмент для отладки Android-приложений
Курс бесплатный, но требуется регистрация. После регистрации вам доступны уроки и пошаговые примеры кода. Не забудьте оставить обратную связь и оценить курс
https://androidschool.ru/courses/background-tasks-with-workmanager/
@android_school_ru
#MLKit #CameraX #LandmarkApi #Firebase #WikipediaApi
Новый курс: Распознавание образов на базе ML Kit и CameraX в Android.
Машинное обучение и нейронные сети окружают нас повсюду и только глухой не слышал о ML, Deep Learning и других баззвордах. А как дела обстоят с мобильными приложениями? Насколько сложно использовать методы ML в современных мобильных приложениях?
Не обязательно быть кандидатом наук, чтобы использовать ML при разработке собственных приложений. В этом мини-курсе предлагается разработать приложение - сканер известных достопримечательностей. Вы наводите камеру на Эйфелеву Башню и узнаёте интересные факты о ней. С помощью ML Kit SDK - это делается в несколько строк кода.
В этом курсе вы научитесь:
- Использовать ML Kit для задач распознавания изображений, в частности landmark recognition API
- Применять новый компонент CameraX - рекомендуемый Google для разработки приложений использующих камеру
- Получать данные из Wikipedia API
- Использовать Retrofit для сетевых запросов
Курс бесплатный, но требуется регистрация. После регистрации вам доступны уроки и пошаговые примеры кода. Не забудьте оставить обратную связь и оценить курс!
https://androidschool.ru/courses/landmark-recognition-api-ml-kit/
@android_school_ru
Новый курс: Распознавание образов на базе ML Kit и CameraX в Android.
Машинное обучение и нейронные сети окружают нас повсюду и только глухой не слышал о ML, Deep Learning и других баззвордах. А как дела обстоят с мобильными приложениями? Насколько сложно использовать методы ML в современных мобильных приложениях?
Не обязательно быть кандидатом наук, чтобы использовать ML при разработке собственных приложений. В этом мини-курсе предлагается разработать приложение - сканер известных достопримечательностей. Вы наводите камеру на Эйфелеву Башню и узнаёте интересные факты о ней. С помощью ML Kit SDK - это делается в несколько строк кода.
В этом курсе вы научитесь:
- Использовать ML Kit для задач распознавания изображений, в частности landmark recognition API
- Применять новый компонент CameraX - рекомендуемый Google для разработки приложений использующих камеру
- Получать данные из Wikipedia API
- Использовать Retrofit для сетевых запросов
Курс бесплатный, но требуется регистрация. После регистрации вам доступны уроки и пошаговые примеры кода. Не забудьте оставить обратную связь и оценить курс!
https://androidschool.ru/courses/landmark-recognition-api-ml-kit/
@android_school_ru
#новый_курс #unit_tests #mockito #mvp
В этом мини-курсе на @android_school_ru мы разработаем приложение для поиска и сохранения любимых фильмов, а потом напишем Unit-тесты, используя Mockito.
Unit-тесты являются залогом здорового сна для разработчика. Если ваш код покрыт тестами, то количество багов будет стремительно уменьшаться - ваши пользователи перестанут писать негативные отзывы в Play Market, а вы наконец-то займётесь разработкой новых интересных фичей вместо постоянного исправления багов. К тому же тесты являются отличной документацией - по ним можно легко понять логику. А ещё они заставляют декомпозировать ваш код на мелкие тестируемые части.
Кроме unit-тестов, мы рассмотрим такую архитектуру как MVP и перепишем приложение так,
чтобы оно соответствовало принципам такой архитектуры для дальнейшего покрытия тестами.
После прохождения мини-курса вы сможете:
- Писать собственные Unit-тесты
- Использовать Mockito для написания unit-тестов
- Применять архитектурный паттерн MVP для разработки Android-приложений
В итоге вы научитесь писать unit-тесты на базе Mockito и разрабатывать Android-приложения в соответствии с паттерном MVP.
Курс бесплатный, но требуется регистрация. После регистрации вам доступны уроки и пошаговые примеры кода. Не забудьте оставить обратную связь и оценить курс!
https://androidschool.ru/courses/mockito-unit-tests-with-mvp/
@android_school_ru
В этом мини-курсе на @android_school_ru мы разработаем приложение для поиска и сохранения любимых фильмов, а потом напишем Unit-тесты, используя Mockito.
Unit-тесты являются залогом здорового сна для разработчика. Если ваш код покрыт тестами, то количество багов будет стремительно уменьшаться - ваши пользователи перестанут писать негативные отзывы в Play Market, а вы наконец-то займётесь разработкой новых интересных фичей вместо постоянного исправления багов. К тому же тесты являются отличной документацией - по ним можно легко понять логику. А ещё они заставляют декомпозировать ваш код на мелкие тестируемые части.
Кроме unit-тестов, мы рассмотрим такую архитектуру как MVP и перепишем приложение так,
чтобы оно соответствовало принципам такой архитектуры для дальнейшего покрытия тестами.
После прохождения мини-курса вы сможете:
- Писать собственные Unit-тесты
- Использовать Mockito для написания unit-тестов
- Применять архитектурный паттерн MVP для разработки Android-приложений
В итоге вы научитесь писать unit-тесты на базе Mockito и разрабатывать Android-приложения в соответствии с паттерном MVP.
Курс бесплатный, но требуется регистрация. После регистрации вам доступны уроки и пошаговые примеры кода. Не забудьте оставить обратную связь и оценить курс!
https://androidschool.ru/courses/mockito-unit-tests-with-mvp/
@android_school_ru
#kotlin_coroutines #новый_курс
Мини-курс "Введение в Kotlin Coroutines" - подойдёт для начинающих разработчиков, которые до этого не использовали Kotlin Coroutines. В нём мы разберём основы работы с корутинами. В результате вы сможете использовать Kotlin Coroutines в своих Android-приложениях для сетевых запросов, взаимодействия с UI и любых других асинхронных операций. Это всего лишь введение, призванное показать вам пример работы с корутинами, а более мощный продвинутый практический курс будет доступен осенью.
После прохождения туториала вы поймете:
- Как создать coroutines.
- Как запустить асинхронную операцию через корутины
- Обработка ошибок через coroutines.
Мы разработаем приложение - упрощенный клон Instagram. Пользователь сможет накладывать определённые фильтры на изображения. Загрузку изображений и применение фильтров мы будем реализовывать через Kotlin Coroutines.
Курс бесплатный, но требуется регистрация. После регистрации вам доступны уроки и пошаговые примеры кода. Не забудьте оставить обратную связь и оценить курс
https://androidschool.ru/courses/kotlin-coroutines-intro/
@android_school_ru
Мини-курс "Введение в Kotlin Coroutines" - подойдёт для начинающих разработчиков, которые до этого не использовали Kotlin Coroutines. В нём мы разберём основы работы с корутинами. В результате вы сможете использовать Kotlin Coroutines в своих Android-приложениях для сетевых запросов, взаимодействия с UI и любых других асинхронных операций. Это всего лишь введение, призванное показать вам пример работы с корутинами, а более мощный продвинутый практический курс будет доступен осенью.
После прохождения туториала вы поймете:
- Как создать coroutines.
- Как запустить асинхронную операцию через корутины
- Обработка ошибок через coroutines.
Мы разработаем приложение - упрощенный клон Instagram. Пользователь сможет накладывать определённые фильтры на изображения. Загрузку изображений и применение фильтров мы будем реализовывать через Kotlin Coroutines.
Курс бесплатный, но требуется регистрация. После регистрации вам доступны уроки и пошаговые примеры кода. Не забудьте оставить обратную связь и оценить курс
https://androidschool.ru/courses/kotlin-coroutines-intro/
@android_school_ru