Проблемы с фоновой передачей файлов

У меня эта проблема при использовании фоновой передачи файлов в WP7. Она отлично работает, когда мое приложение работает, но как только я нажимаю кнопку Windows, оно останавливается (и возобновляется, когда я снова активирую приложение). Разве фоновая передача файлов не запускается в фоновом режиме, даже когда ваше приложение деактивировано? Должен ли он быть в отдельном классе (какой-то класс фонового агента, отдельный от основного проекта?) Действительно неприятно, когда я делаю все, что здесь говорится в руководстве: http://msdn.microsoft.com /en-us/library/hh202959(v=vs.92).aspx.

Есть ли какие-то «особые» вещи, которые мне нужно сделать, чтобы убедиться, что он работает в фоновом режиме, или какие-то методы, может быть, те, которые я создал сам (чтобы получить URL-адрес и т. д.), к которым нельзя получить доступ в деактивированном состоянии? Может, я не могу добавить в очередь, когда деактивирован?

Большое спасибо за ваше время :)

РЕДАКТИРОВАТЬ: Небольшая отладка говорит мне, что файл в очереди действительно загружается. Он завершается, но не загружает следующий, пока я не активирую приложение повторно. Могу ли я при этом не использовать свои собственные методы, переменные и т. Д.? Может у меня внутренняя очередь, скажем, на 20 пунктов. Как я могу затем заполнить очередь загрузки (максимум 5), когда она дойдет до нуля?

РЕДАКТИРОВАТЬ2: В примере от Microsoft они говорят, что вы можете добавить в очередь позже:

// Check to see if the maximum number of requests per app has been exceeded.
if (BackgroundTransferService.Requests.Count() >= 5)
{
// Note: Instead of showing a message to the user, you could store the
// requested file URI in isolated storage and add it to the queue later.
MessageBox.Show("The maximum number of background file transfer requests for this application has been exceeded. ");
return;
}

Но это не так. скажите, можем ли мы сделать это в фоновом режиме или нет. Поскольку речь идет о фоновой передаче файлов, они должны были упомянуть об этом, иначе мы должны предположить, что это можно сделать в фоновом режиме, что, похоже, не так. Но мы не можем этого знать. Кто-нибудь может подтвердить это на 100%?

6
задан kgrevehagen 22 November 2011 в 08:14
поделиться