La gestione delle applicazioni è accessibile dal menu my dashboard > windows phone
e si presenta come nella schermata seguente dove è possibile visualizzare le applicazioni già inserite, il loro stato e i relativi dettagli.
Tramite il link submit new app è possibile inviare una nuova applicazione: il processo è molto semplice e richiede le informazioni indicate anche nella guida alla certificazione. Vediamo insieme i vari passi per poi vedere il risultato finale su una nostra applicazione reale già pubblicata.
Il wizard è realizzato, in Silverlight, e comprende 5 step: gli step 2 e 3 vengono ripetuti per le varie lingue utilizzate nel pacchetto XAP inviato.
La prima schermata consente di inserire il nome dell'applicazione (può essere diversa da lingua a lingua), la piattaforma (che prevede oltre a Windows Phone 7, anche il buon vecchio Windows Mobile 6.x), la lingua di default (per meglio dire il principale) e la versione.
Nella combo del linguaggio occorre indicare la Culture di default ovvero quella impostata da Visual Studio nelle proprietà del progetto Silverlight o XNA, nel tab Settings, Assembly Information:
Queste impostazioni vengono inserite nel file AssemblyInfo.cs
, come si nota dal listato seguente:
using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using System.Resources; // General Information about an assembly is controlled through the following // set of attributes. Change these attribute values to modify the information // associated with an assembly. [assembly: AssemblyTitle("Testa o Croce 3D")] [assembly: AssemblyProduct("ThinkAhead.HeadAndTail 3d")] [assembly: AssemblyDescription("")] [assembly: AssemblyCompany("Microsoft")] [assembly: AssemblyCopyright("Copyright © ThinkAhead 2011")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] // Setting ComVisible to false makes the types in this assembly not visible // to COM components. If you need to access a type in this assembly from // COM, set the ComVisible attribute to true on that type. Only Windows // assemblies support COM. [assembly: ComVisible(false)] // On Windows, the following GUID is for the ID of the typelib if this // project is exposed to COM. On other platforms, it unique identifies the // title storage container when deploying this assembly to the device. [assembly: Guid("ae8d2494-d042-4baa-b157-143f546ae640")] // Version information for an assembly consists of the following four values: // // Major Version // Minor Version // Build Number // Revision // [assembly: AssemblyVersion("1.0.0.0")] [assembly: NeutralResourcesLanguageAttribute("en")]
Una volta inseriti questi dati è possibile eseguire l'upload del package XAP che rappresenta l'applicazione e, terminate questa operazione, il form presenta altri 3 campi che consentono, rispettivamente, di indicare alcune note private sull'applicazione (potrebbero essere il numero interno di Build
, il numero di Iteration
oppure qualunque altra info che possa servire).
Si possono indicare le note al tester che eseguirà il test dell'applicazione: ad esempio, la nostra applicazione Kind Love richiede due giorni di utilizzo prima di poter fornire consigli amorosi all'utente, quindi abbiamo indicato al tester come sbloccare da config questo limite per poter testare tutta l'applicazione.
Si possono anche segnalare technical exception, ovvero eccezioni rispetto alle regole del Marketplace: anch'esse ovviamente devono essere validate e richiedono quindi un processo di approvazione più lungo.
Ogni applicazione infatti viene fatta passare da un setaccio che analizza il codice internamente per scoprire se ci sono violazioni alle policy ecco i tre controlli:
- verifica parole non consentite o offese
- verifica l'utilizzo corretto delle API
- controllo manuale, per verificare il corretto funzionamento dell'applicazione rispetto alle linee guida UI Design and Interaction, alle specifiche Application Certification Requirements.
Questa analisi sul codice riguarda anche le lingue supportate dall'applicazione, che vengono usate per proporci i passi 2 e 3 per ogni lingua:
Nella parte sinistra appare un menu che consente di vedere la lingua per la quale stiamo inserendo i dati nella parte destra. Molto importanti le keyword che consentono agli utenti di trovare la nostra applicazione.
L'analisi sul codice serve anche a individuare le feature del telefono utilizzate dall'applicazione. Non si può barare, anzi, è necessario che il codice che utilizza le API del telefono sia esplicito e non passi da reflection o altri meccanismi per invocare le API. Ogni applicazione infatti deve dichiarare cosa utilizza in modo che l'utente possa accettare o meno l'utilizzo di queste feature. L'analisi dello XAP compone l'elenco delle feature che vengono dichiarate dall'applicazione.
Icone ed altri elementi descrittivi
Scrollando la pagina, sempre relativamente ad ogni singola lingua possiamo effettuare l'upload delle varie icone applicative e degli screen shot come si nota nell'immagine seguente per la nostra top seller Testa o Croce 3D:
Si può eseguire l'upload di 8 screenshot per ogni lingua. Gli artwork inseriti, insieme alla descrizione e alla categoria, corrispondono a quanto si presenterà nella schermata di dettaglio dell'applicazione su Microsoft Zune:
Le immagini degli screenshot devono rappresentare effettivamente uno screenshot 480x800 e Zune consente di zoomare a dimensione reale:
L'ultima pagina consente di definire le informazioni commerciali, come la disponibilità di una versione trial e, ovviamente, il prezzo in tutte le lingue:
La nostra Testa o Croce 3D è stata già rilasciata, ma ci è servita per vedere l’intero processo della pubblicazione. Non è ovviamente possibile utilizzare lo stesso nome di una applicazione esistente.