Неподдерживаемые API для AudioPlayerAgent - PullRequest
5 голосов
/ 02 февраля 2012

Я бы хотел использовать различные API, перечисленные на этой странице "Неподдерживаемые API для фоновых агентов" , из моего AudioPlayerAgent. На этой странице конкретно упоминается ScheduledTaskAgents:

Существует набор API, которые нельзя использовать в коде, выполняемом Запланированная задача. Это включает в себя код, содержащийся в классах, которые реализуют ScheduledTaskAgent как код в любых библиотеках, которые вызываются из ScheduledTaskAgent. Некоторые из этих API обнаружены разработкой инструменты и выдаст ошибку во время выполнения или компиляции. Другие API ограничено отправкой приложения Windows Phone Marketplace процесс.

Значит ли это, что AudioPlayerAgents может использовать API, перечисленные на этой странице? Оба наследуют Microsoft.Phone.BackgroundAgent, но на этой странице явно упоминается только один, и я не уверен, считается ли AudioPlayerAgent Scheduled Task. Кто-нибудь может подтвердить это так или иначе?

1 Ответ

1 голос
/ 02 февраля 2012

Я думаю, что «Неподдерживаемые API-интерфейсы от фоновых агентов» применимы и к Background Audio, за явным исключением BackgroundAudioPlayer.Я поддержал это, пытаясь добавить один из неподдерживаемых API-интерфейсов к агенту и запустив SDK's Marketplace Test Kit для моего тестового проекта (я пробовал Microsoft.Devices.VibrateController).

Это вызвало ожидаемый сбой:

Сведения о результате

[ОШИБКА]: Фоновый агент не может использовать неподдерживаемый API.Сборка AudioPlaybackAgent1.dll пытался использовать Microsoft.Devices.VibrateController :: get_Default.

[ОШИБКА]: Фоновый агент не может использовать неподдерживаемый API.Сборка AudioPlaybackAgent1.dll пытался использовать Microsoft.Devices.VibrateController :: Start.

[ОШИБКА]: фоновый агент не может использовать неподдерживаемый API.Сборка AudioPlaybackAgent1.dll пытался использовать Microsoft.Devices.VibrateController.

Я бы посоветовал вам проверить свои API в отношении этого инструмента и посмотреть, какой результат вы получите.

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

...