Тестовый комплект рынка возвращает «неподдерживаемый API не может использоваться фоновым агентом»
-
12-12-2019 - |
Вопрос
Прежде всего, мое приложение строит и хорошо работает хорошо, без исключения.
Когда я запускаю тестовый комплект рынка, включенный в SDK WP7, я получаю тонну предупреждений об использовании неподдерживаемой API. Этот вопрос DLL (API), в котором рассматривается файл DLL (API), в том месте, где живут мои контроллеры, модели, утилиты и другие ресурсы (что-либо непосредственно подключено к интерфейсу UI).
Методы, используемые моим фоновым агентом, включают некоторые вызовы на службу для отдыха и обновление живой плитки.Тем не менее, Test Kit MarketPlace жалуется на вызовы классов и методов, которые не называются классами фонового агента.
Вопрос Вот - это все еще проходит проверку Microsoft?В конце концов, фоновый агент не делает ничего нелегала (с точки зрения вызовов API), он просто имеет возможность сделать это).
Решение
Это упоминается в «Разработка Advanced App Windows Phone Phone 7.5, которое подключается к книге облака, опубликованной группой Patters & Fruitics
Этот проект содержит интерфейсы, адаптеры и фасады для функциональности API Windows Phone, которая не поддерживается фоновыми агентами.Создание этого проекта было необходимо для того, чтобы пройти проверку возможностей, выполняемой в рамках процесса подачи заявки на приложение Windows Phone.Это связано с тем, что набор API, не поддерживаемых фоновыми агентами, должен находиться в проекте, не указанном проектом Tailspin.phoneagent.Для получения дополнительной информации см. « Неподдерживаемые API для фоновых агентовДля Windows Phone " на msdn.
Таким образом, у вас должен быть проект библиотек для вашего фона рабочего и еще один для библиотек, которые использует ваше приложение.
Другие советы
Я бы подумал, что он, скорее всего, потерпит неудачу для рынка, если тестовый комплект помечает предупреждения.
Вероятно, лучшее решение будет разделено распределению DLL на 2 части, то, что содержит все функциональные возможности для фонового агента, но избегает вызовов API, вызывая проблему, а другую DLL, содержащую все остальное. Обе DLL могут быть использованы в приложении, но просто «безопасный» один для фонового агента.
Мне пришлось сделать что-то подобное для приложения Cayphone Lite (приложение PayPal), которое в настоящее время находится на рынке.
HTH, Rupert.