Pregunta

En primer lugar, mi aplicación se construye y corre perfectamente bien, sin excepciones.

Cuando ejecuto el kit de pruebas del mercado incluido en el SDK WP7, obtengo un montón de advertencias sobre el uso de una API no compatible.

Ahora, el archivo DLL (API) en la pregunta es donde viven mis controladores, modelos, clases de utilidad y otros recursos (cualquier cosa que no esté conectada directamente a la UI).

Los métodos utilizados por mi agente de fondo incluyen algunas llamadas a un servicio de descanso y actualizando una baldosa en vivo.Sin embargo, el kit de pruebas de mercado se queja de las clases y las llamadas de los métodos que no están siendo llamados por las clases de agentes de fondo.

Pregunta aquí es: ¿seguirá pasando la inspección por Microsoft?Después de todo, el agente de antecedentes no está haciendo nada ilegal (en términos de llamadas API), solo tiene la posibilidad de hacerlo).

¿Fue útil?

Solución

Esto se menciona en "Desarrollar una aplicación avanzada de Windows Phone 7.5 que se conecta al libro de la nube" publicado por el Grupo de Patters & Practices

Este proyecto contiene interfaces, adaptadores y fachadas para la funcionalidad API de Windows Phone que no es compatible con los agentes de fondo.La creación de este proyecto fue necesaria para aprobar la validación de la capacidad realizada como parte del proceso de envío de aplicaciones de Windows Phone Marketplace.Esto se debe a que el conjunto de API no respaldado por los agentes de fondo debe residir en un proyecto que no hace referencia al proyecto TAILSPIN.PHONEAGENTE.Para obtener más información, consulte " API no compatibles para agentes de fondopara Windows Phone " en MSDN.

Por lo tanto, debe tener un proyecto para las bibliotecas para su trabajador de antecedentes y otro para las bibliotecas que utiliza su aplicación.

Otros consejos

Pensaría que es muy probable que falle la inspección para el mercado si el kit de prueba está marcando advertencias.

Probablemente la mejor solución sería dividir la DLL en cuestión en 2 partes, una que contiene toda la funcionalidad para el agente de fondo, pero evita las llamadas API que causan el problema y la otra DLL que contiene todo lo demás. Tanto las DLL podrían utilizarse en la aplicación, sino solo la "segura" para el agente de fondo.

Tuve que hacer algo similar para la aplicación PayPhone Lite (una solicitud de PayPal) que se encuentra actualmente en el mercado.

hth, Rupert.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top