Cómo incluir la política de privacidad en opciones de configuración de la aplicación en Windows 8

Hace unos días estaba subiendo una de mis primeras aplicaciones para la Windows 8 Store, así que, antes de subirla, decidí darle un último repaso a las exigencias de la Store, entonces recordé algo que vi en el MSP Summit de Madrid de la semana pasada: si usas Internet en tu app, debes incluir una política de privacidad dentro del menú de configuración de tu aplicación, enmarcada dentro de la barra de charms. Tras una búsqueda rápida por los foros de MSDN no encontré nada, así que, yendo a algo más potente, estos son los resultados de la búsqueda. Vamos allá:

Primero hemos de crear una web donde dejemos clara nuestra política de privacidad. En mi caso, la aplicación no recogía datos de usuario de ningún tipo, sencillamente usaba Internet para mostrar información, así que tomé uno cualquiera de ejemplo y lo modifiqué, quedando así. Guarda el link a tu página, ya que tendrás que ponerlo cuando subas la aplicación a la store.

Segundo vamos al código. La mecánica es sencilla, nos suscribimos al evento CommandsRequested de la vista actual en otro evento que tengamos o método. Lo suyo es hacerlo en el OnNavigatedTo o LoadState, aunque me gusta separarlos y usarlos acorde a su nombre. Así que, al OnNavigatedTo:


protected override void OnNavigatedTo(NavigationEventArgs e){

SettingsPane.GetForCurrentView().CommandsRequested += principal_CommandsRequested;

}

Después de esto el paso es obvio, crear el principal_CommandsRequested :


void principal_CommandsRequested(SettingsPane sender, SettingsPaneCommandsRequestedEventArgs args){

AddSettingsCommands(args);

}

¿Alguien duda del siguiente paso?


public static void AddSettingsCommands(SettingsPaneCommandsRequestedEventArgs args)

{

args.Request.ApplicationCommands.Clear();

SettingsCommand privacyPref = new SettingsCommand("privacyPref", "Política de Privacidad", (uiCommand) =>{Windows.System.Launcher.LaunchUriAsync(newUri("http://danielrozo.es/privacy-policy")); });

args.Request.ApplicationCommands.Add(privacyPref);

}

Y con esto debería estar todo hecho, compiláis y corréis la aplicación y veréis cómo sale “Política de Privacidad” bajo la configuración de vuestra aplicación y cuando hagáis clic os llevará a la página que hayáis configurado al efecto :).


One Comment

So, what do you think ?