Подтвердить что ты не робот

Android и зависимость от инъекций

Я искал вокруг, зря, некоторую информацию об использовании контейнера инъекций зависимостей в разработке Android. В частности, как переопределить создание Activity таким образом, который также будет работать при возвращении из-за смерти (по какой-либо причине).

Есть ли у кого-нибудь опыт в этой области?

4b9b3361

Ответ 2

Наиболее подходящей библиотекой инъекций для зависимостей Android является Dagger by Square. Оба Spring и Guice предназначены для приложений Java, а не для Android. Если ваше единственное требование - простое управление зависимостями, Dagger - лучший вариант и имеет поддержку JSR-330.

Ответ 3

Вы также можете рассмотреть Spring ME. Хотя я изначально предназначен для Java ME, я видел отчеты от людей, использующих его для Android. Выгода будет заключаться в том, что у вас есть знакомая модель программирования (Spring) без штрафа: Spring У меня есть 0k footprint.

Ответ 4

Если вы используете Spring в других проектах, вы не будете очень довольны Spring для Android (это только библиотека REST с поддержкой Auth), Spring ME (полностью другой рабочий процесс и уменьшенный набор функций) или Крошечный Spring (например, только Spring -подобная конфигурация).

Однако вы можете попробовать мой проект RoboSpring. Из описания:

RoboSpring является (реальным) портом Spring Framework для платформы Android. Кроме того, он предлагает предварительную поддержку функциональности, введенной RoboGuice, например, инъекции. Просмотр ссылок на действия и многое другое. RoboSpring основан на версии 3.1.0 RELEASE Spring core, beans, контексте и компонентах aop. Он предлагает следующие функции:

  • Настроить компоненты приложения с помощью файла конфигурации Spring (XML)
  • Освоить компоненты Android с помощью beans из контекста приложения Spring.
  • Внесите контекст приложения Android в свой Spring Beans.
  • Ввести представления в действия.
  • ... и многое другое

https://github.com/dthommes/RoboSpring

Ответ 5

Существует также новый проект Spring для Android: Tiny Spring. Он решает самые основы конфигурации XML, но не делает все, что делает Spring.