Как переключиться с основного приложения на фоновый агент? - PullRequest
2 голосов
/ 19 ноября 2011

Хотелось бы узнать, возможно ли переключиться с приложения переднего плана на фоновый агент и наоборот поделиться некоторыми данными из этих двух задач?

Более подробно, я хотел бы сделать загрузку , которая начинается с переднего плана (Рис. A), и когда пользователь нажимает кнопку «Назад», загрузка продолжается с помощью фонового агента (Рис. B).

Изображение здесь: http://imageshack.us/f/823/testter.jpg/

Ответы [ 2 ]

2 голосов
/ 21 ноября 2011

Фоновая передача файлов - это то, что вам нужно. Он может загружать (и скачивать) файлы, пока приложение не запущено:

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

2 голосов
/ 20 ноября 2011

Вы понимаете, что не можете постоянно обновлять плитку с помощью PeriodicTask, верно?Минимальное время обновления составляет 30 минут, если только вы не отправляете push-уведомления (что я здесь, я полагаю, вы не будете, поскольку это операция на стороне клиента).

И сама плитка не имеет особого смысла.И я не думаю, что использование задачи, которая может максимально выполняться в течение 25 секунд, имеет огромный смысл для загрузки файла.

Так что, я думаю, мы можем заключить, что это будет невозможно сделать,Вместо этого вы должны разрешить приложению работать в фоновом режиме, установив для ApplicationIdleDetectionMode значение Disabled

PhoneApplicationService.Current.ApplicationIdleDetectionMode = IdleDetecetionMode.Diabled"

Затем пользователь может нажать кнопку «Домой», и загрузка будет выполняться в фоновом режиме.

...