Background agents: occhio alle librerie che utilizzate!

Print Content | More

Se seguite regolarmente il mio blog ormai dovreste conoscere bene i background agents, dato che ho dedicato molti post a riguardo. Come vi avevo spiegato in uno dei post introduttivi sull’argomento, ci sono una serie di operazioni che i background agents non possono fare, come accedere alla fotocamera o al microfono. In più, Microsoft ha pubblicato nella documentazione su MSDN un elenco completo di tutte le API “proibite”, che potete trovare all’indirizzo http://msdn.microsoft.com/en-us/library/hh202962(v=VS.92).

Quello che non è così scontato, ma che è molto importante da tenere a mente, è che i tool di analisi del Marketplace fanno una semplice analisi delle reference contenute all’interno di una DLL e non sono in grado di verificare quali classi o metodi avete effettivamente utilizzato.

Mi sono imbattuto in questo “problema” nello sviluppo della versione Mango dell’applicazione del mio blog: ho realizzato una libreria (chiamata con molta fantasia qmatteoq.Utilities) che contiene tutta una serie di helper e classi di utilità, che coprono diversi aspetti dello sviluppo di un’applicazione Windows Phone: si va da alcuni helper per accedere allo storage a converters, passando per un wrapper per il NavigationService da utilizzare con il pattern MVVM.

All’interno del background agent ho aggiunto una reference a questa libreria, per poter accedere ai miei helper per leggere e scrivere dall’Isolated Storage. Il problema è che, sottoponendo l’applicazione al Marketplace Test Kit (il sostituto dell’utility CapDetect), venivano riscontrate delle reference non valide: Il motivo è proprio perchè la mia libreria qmatteoq.Utilities contiene dei riferimenti a classi non valide (come PhoneApplicationFrame o PhoneApplicationService): questo nonostate all’interno del background agent non fossero poi effettivamente usate.

Una soluzione al momento non c’è, se non quella di suddividere le vostre librerie in più progetti, assicurandovi di non includere riferimenti a classi proibite in quello che andrete ad utilizzare nel vostro background agent.


Windows Phone , Microsoft , Background agents

1 comments

Related Post


(will not be published)
(es: http://www.mysite.com)