Использование Ion с контекстом приложения

Я заинтересован в использовании Ion/AndroidAsync для "бэкенда" приложения для Android. Я не хочу делать длительные вызовы, привязанные к компоненту Android, поэтому у меня есть фоновый слой, который остается в живых до тех пор, пока Application является живым. Этот фоновый слой имеет API, который позволяет пользовательскому интерфейсу выполнять асинхронные вызовы для выполнения различных задач и возвращает Future в пользовательский интерфейс (также допускает обратный вызов, который выполняется в главном потоке), чтобы он мог передаваться между компонентами, если это необходимо.

Мне нравится API Ion, но я не хочу вызывать его из Activity; скорее, я хотел бы использовать его в своем фоновом слое, поскольку "задаче" также может потребоваться выполнение других длительных операций в сочетании с сетевым вызовом. При этом, я столкнусь с любыми проблемами, если я передам заявление Context в Ion.with()?

2 ответа

Решение

Это будет хорошо работать с контекстом приложения. Он никогда не отменяет никаких запросов, поскольку контекст приложения никогда не умирает. Но это то, что вы хотите.

  1. Мой проект использует экземпляр Ion по умолчанию с запросом контекста приложения для всех изображений.
  2. http://www.programcreek.com/java-api-examples/index.php?api=com.koushikdutta.ion.loader.HttpLoader
    этот пример с открытым исходным кодом использует контекст, чтобы получить контекст приложения. Таким образом, вы можете использовать приложение.
  3. Но у экземпляра Ion есть ссылка на приложение, я думаю, что длинная задача может вызвать утечку экземпляра приложения.
  4. Ion.getDefault (Контекст контекста).cancelAll(Объект o); Это поможет вам лучше справиться с вашей заявкой.
Другие вопросы по тегам