7 Android библиотек, о которых должен знать каждый разработчик

Android библиотекиВ этом небольшом обзоре я поделюсь с вами информацией о библиотеках, которые могут пригодиться при разработке мобильных приложений. В своей повседневной работе Android разработчик вынужден решать множество разноплановых задач: выполнять запросы в соответствии с restful API, осуществлять сериализацию данных, загружать и обрабатывать изображения, разрабатывать и оптимизировать структуру проекта, вести журнал событий. Решение этих задач убивает огромное количество времени, если вы пытаетесь решать их с чистого листа, но зачем изобретать велосипед? Использование описанных ниже библиотек позволяет не только улучшить качество кода, но и на порядок повысить Вашу производительность как разработчика.

Gson - библиотека для работы в JSON

Gson - простая и компактная библиотека для работы с JSON объектами в Java. С ее помощью можно проводить сериализацию и десериализацию Java объектов в JSON. Gson использует Java Generic и может использоваться непосредственно вашими Java модулями или вызываться из сторонних библиотек.

По большому счету вся работа с Gson сводится к использованию двух методов: fromJson() и toJson(). Первый из них преобразует Json строку в Java модель, которая задается вторым параметром метода. Второй метод решает обратную задачу преобразуя Java модель в Json строку.

Для того, чтобы использовать эту библиотеку в своем проекте, необходимо подключить ее в build.gradle:

dependencies{
compile 'com.google.code.gson:gson:2.8.2'
}

Более подробную информацию о библиотеке можно найти здесь.

Google Dagger - библиотека для Dependency Injection

На сегодняшний день библиотека Dagger является, пожалуй, лучшим решением для реализации патерна Dependency Injection (DI) в android приложении. Среди альтернативных решений можно упомянуть Robo Guice, Butter Knife или Android annotations. Каждое из них имеет свои плюсы и минусы. По моему мнению, Google Dagger ver.2 является лучшим выбором для реализации надежного и хорошо структурированого патерна Dependency Injection. Вторая версия библиотеки обеспечивает отличную разработку и повышение производительности в сочетании с постоянной проверкой графа объектов, полной отслеживаемостью, легкостью отладки.

Для подключения библиотеки в gradle нужно добавить следующие строки:

dependencies {
  compile 'com.google.dagger:dagger:2.x'
  annotationProcessor 'com.google.dagger:dagger-compiler:2.x'
  compile 'com.google.dagger:dagger-android-support:2.x' //if you use support libraries
}

Изучение возможностей этой библиотеки потребует от Вас некоторых усилий. Вот ссылка на документацию.

Retrofit 2 - библиотека для Restful API запросов

Наиболее удобным способом осуществления Restful общения с удаленным сервером по http(s) является использование библиотеки Retrofit 2. Retrofit предоставляет в распоряжение разработчика type-safe Http Client на базе библиотеки OkHttp. Вы создаете экземпляр Retrofit с помощью его builder метода, после этого вы реализуете вызов метода и присоединяете callback объект. Внутри этого объекта нужно переопределить два стандартных метода: onResponse и onFailure. Retrofit позволяет модифицировать заголовок запроса, добавлять перехватчик для цепочки запросов, реализовывать собственный аутентификатор и model converter factory.

Для использования Retrofit необходимо модифицировать файл build.gradle

dependencies {
   compile 'com.squareup.retrofit2:retrofit:2.3.0'
}

Более подробную информацию о библиотеке можно получить здесь

Android Ion - библиотека для работы с изображениями

С помощью этой библиотеки можно организовать асинхронное скачивание изображений из сети и их загрузку в ImageView. Все Ion операции возвращают Future Object и могут быть изящно отменены. Фактически, Ion объединяет функции нескольких библиотек Android в одну. Это отличный способ для решения задач асинхронных запросов, загрузки изображений, загрузки файлов, отмены запросов и многое другое.

Для подключения библиотеки используйте

dependencies {
   compile 'com.koushikdutta.ion:ion:2.+'
}

Более подробную информацию о работе библиотеки можно найти в GitHub репозитории проекта.

Crashlytics - инструмент мониторинга и предоставления отчетов о сбоях

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

Чтобы использовать Crashlytics в своем приложении, необходимо установить Fabric plugin в Android studio. Зайдите в меню File -> Settings -> Plugins, затем в окне поиска введите "Fabric", выберите в результатах поиска "Fabric for Android Studio" и щелкните Install. После этого у вас пояится панель в Android Studio, где можно нажать "Sign up" и создать новый аккаунт на fabric.io, после чего можно завершить установку. Как только вы подтвердите свою учетную запись, введите свои учетные данные, а затем из списка продуктов выберите Crashlytics.

Подробную информацию о работе с инструментом можно найти на сайте fabric.io.

Picasso - библиотека для работы с изображениями

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

Для использования Picasso необходимо добавить в build.gradle строки

dependencies {
   compile 'com.squareup.picasso:picasso:2.5.2'
}

Robolectric - фреймворк для проведения юнит тестов

Фреймворк для проведения юнит тестирования непосредственно в JVM, а не на эмуляторах или реальных устройствах. Robolectric тесты могут охватывать многие операции, такие как view inflation, загрузка ресурсов, которые вы не можете проверить с помощью обычных JUnit тестов. Таким образом, вы получаете возможности, близкие к тестированию на реальных устройствах.

Для запуска Robolectric юнит тестов, прежде всего нужно включить библиотеку Robolectric в gradle файл. Если вы используете Android Studio 3 или выше, необходимо включить слияние ресурсов в gradle.

testImplementation "org.robolectric:robolectric:3.6.1"
 
android {
  testOptions {
    unitTests {
      includeAndroidResources = true
    }
  }
}

Аннотируйте свой тест с помощью Robolectric test runner:

@RunWith(RobolectricTestRunner.class)
  public class AccountActivityTest {
}

Для изучения возможностей фреймворка изучите Robolectric.org.

Заключение

Мы живем в очень быстрый век. Каждый день в Google Play появляются сотни новых приложений, и скорость разработки очень важна для современного программиста. Чтобы не отстать от поезда современных технологий, необходимо быть проактивным разработчиком и постоянно находиться в поиски лучших библиотек и инструментов, которые повысят вашу производительность и обогатят ваш опыт. Не замыкайтесь в себе, используйте инструменты, SDK и библиотеки. Можете почитать мою статью "9 Bulletproof ways to become a better developer", где рассказывается приемах улучшения профессиональных навыков. В этой статье я рассказываю о семи очень полезных библиотеках. Возможно, я забыл что-то важное, поделитесь в комментариях.

Источник: 7 Android Libraries Every Developer Should Know About


Наши соцсети

Подписаться Facebook Подписаться Вконтакте Подписаться Twitter Подписаться Google Подписаться Telegram

Популярное

Ссылки

Новости [1] [2] [3]... Android/ iOS/ J2ME[1] [2] [3]) Android / Архив

Рейтинг@Mail.ru Яндекс.Метрика
MobiLab.ru © 2005-2018
При использовании материалов сайта ссылка на www.mobilab.ru обязательна