2010-05-28 3 views
7

Новый вопрос об android и сервисах. В настоящее время я разрабатываю приложение, которое должно отправлять изображения на сервер. Также должно быть возможно отправить больше изображений параллельно.Android-сервис с несколькими темами

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

Но у меня возникает несколько проблем с этим подходом. Имеются ошибки с привязкой, событие ожидания уведомления начинает свою деятельность совершенно новым, поэтому я теряю информацию о текущей отправке изображений и т. Д.

Может кто-нибудь рассказать мне, как я мог бы спроектировать такую ​​проблему соответствующим образом.

ТНХ

ответ

9

Я хотел бы использовать объект контроллера, который создается в вашем application классе. Этот контроллер такой же для всех ваших действий. Если загрузка изображения запускается, контроллер создает новую службу/поток и контролирует ее состояние и показывает уведомление. Каждое действие теперь может запрашивать у контроллера состояние его процесса и показывать пользователю соответствующую информацию. Таким образом, контроллер, живущий в приложении lifecyle, будет привязан к сервису, а не к короткоживущей деятельности.

Был разговор с меткой brady на дроидсоне, об этом вы можете найти слайды на slideshare. Это становится интересным в более поздней части слайдов, когда объясняется использование знака архитектуры. Я боролся с той же проблемой в течение нескольких недель и пришел к тем же результатам, и я рад, что, наконец, какой-то ресурс существует в сети по этой теме.

+0

+1 для указателя на отличную презентацию. – mezmo

+0

отличная ссылка. работает отлично. спасибо – Masala

Смежные вопросы