Imaginaros que tenéis una aplicación y os habéis decidido a hacer una versión trial para que la gente se la pueda descargar y probarla. Así podán ver si le gusta y si es así la comprarán.
A los usuarios les gustan las versiones trial porque pueden probar antes la aplicación que van a comprar.
Esta semana vamos a aprender a crear una aplicación trial de una aplicación que tengamos hecha.
La aplicación de la que partiremos tendrá 5 botones en la pantalla principal a cada una de las 5 funcionalidades que la versión completa ofrece. En la versión de prueba solo podrán consultarse 2 de esas seis funcionalidades.
Creando un ejemplo
Primero abriremos Visual Studio 2010 for Windows Phone. Pulsaremos en el menú File -> New Project y seleccionamos los siguientes valores:
- Visual C#: Silverlight for Windows Phone
- Name: AplicacionFormula1
- Location: (el que queráis, yo por ejemplo he usado...) C:\A_warterrain_A\Ejemplos WP7\
- Solution name: AplicacionFormula1
Figura 1.
Seleccionamos el control ApplicationTitle (el texto “MY APPLICATION”) y cambiamos el valor de su propiedad Text por “TEMPORADA 2011”.
Después cambiamos el control PageTitle (el texto “page name”) y cambiamos el valor de su propiedad Text por “formula 1”.
Vamos a arrastrar un control Image desde la pestaña Tolbox hasta nuestra página y lo pondremos en la parte superior para darle un mejor aspecto.
Tenemos una foto que he sacado de Internet.
Figura 2.
La agregáis como hicimos en el artículo anterior. Y deberíais tener el aspecto siguiente:
Figura 3.
Ahora solo quedan ir arrastrando los botones. Para ello desde la pestaña Toolbox, cogiendo el control Button lo arrastramos al formulario. Esto lo haremos en 5 ocasiones, añadiendo un total de 6 botones a nuestro formulario. Después les pondremos los siguientes textos en su propiedad Content:
- Clasificación.
- Circuitos.
- Últimas noticias.
- Pilotos.
- Escuderías.
- Comprar versión completa.
No vamos a hacer las pantallas de cada botón. Con esto va a ser suficiente para el tutorial.
Supongamos que tenemos esta aplicación y queremos que la versión completa permita al usuario consultar todas las pantallas y oculte el botón “Comprar versión completa”. La versión trial solo permite ver los botones “Pilotos”, “Escuderias” y “Comprar versión completa”.
Vamos a definir este comportamiento en el método load. Pinchamos en el evento Loaded en la ventana de propiedades del grid. Y creamos el evento.
Figura 4.
Para saber si la versión de la aplicación es Trial o Completa hay una función que tra Visual Studio llamada IsTrial(). Para utilizar este método hay que agregar esta librería:
using Microsoft.Phone.Marketplace;
Después debemos crear un atributo LicenseInformation:
public LicenseInformation licenseInfo = new LicenseInformation();
Y por ultimo llamar al método istrial de este objeto:
if (licenseInfo.IsTrial()) { … }
Sencillo, ¿verdad?
Veamos el código que pondremos en el método Loaded del grid:
private void ContentPanel_Loaded(object sender, RoutedEventArgs e)
{
if (licenseInfo.IsTrial())
{
buttonCircuitos.IsEnabled = false;
buttonClasificacion.IsEnabled = false;
buttonNoticias.IsEnabled = false;
buttonPilotos.IsEnabled = true;
buttonEscuderias.IsEnabled = true;
buttonComprar.IsEnabled = true;
}
else
{
buttonCircuitos.IsEnabled = true;
buttonClasificacion.IsEnabled = true;
buttonNoticias.IsEnabled = true;
buttonPilotos.IsEnabled = true;
buttonEscuderias.IsEnabled = true;
buttonComprar.IsEnabled = false;
}
}
Ahora vamos a meter la lógica del botón “Comprar versión completa”. Lo que se hará al ejecutar este botón es abrir el marketplace para que el usuario pueda comprar el programa. Para ello agregaremos la librería:
using Microsoft.Phone.Tasks;
Para poder utilizar la clase MarketplaceDetailTask.
private void buttonComprar_Click(object sender, RoutedEventArgs e)
{
MarketplaceDetailTask detailTask = new MarketplaceDetailTask();
detailTask.Show();
}
Y con esto ya estaría todo listo. Si el usuario compra la versión completa, al entrar en la aplicación de nuevo se mostrarían os botones activos de la versión completa.
Como véis es muy sencillo crear aplicaciones trial y full con esta sencilla técnica.
¿Cómo probamos la versión full y la versión trial?
Es muy fácil, vamos a meter una pregunta en el método Loaded de la pantalla que hemos creado que se lancará antes de iniciarse la aplicación. En esta pregunta seleccionaremos si queremos que se ejecute la versión trial o la versión full.
Os dejo cómo hemos modificado el código:
private void ContentPanel_Loaded(object sender, RoutedEventArgs e)
{
if (CheckIsTrial())
{
buttonCircuitos.IsEnabled = false;
buttonClasificacion.IsEnabled = false;
buttonNoticias.IsEnabled = false;
buttonPilotos.IsEnabled = true;
buttonEscuderias.IsEnabled = true;
buttonComprar.IsEnabled = true;
}
else
{
buttonCircuitos.IsEnabled = true;
buttonClasificacion.IsEnabled = true;
buttonNoticias.IsEnabled = true;
buttonPilotos.IsEnabled = true;
buttonEscuderias.IsEnabled = true;
buttonComprar.IsEnabled = false;
}
}
private bool CheckIsTrial()
{
#if DEBUG
MessageBoxResult result = MessageBox.Show("Click OK para simular la licencia FULL y CANCEL para simular la licencia TRIAL", "Simulador de licencia", MessageBoxButton.OKCancel);
if (result == MessageBoxResult.OK)
{
return false;
}
else
{
return true;
}
#else
return licenseInfo.IsTrial();
#endif
}
Cuando entréis en vuestra aplicación podéis seleccionar una versión u otra y ver que todo está correcto.
Figura 5. Selección de modo trial o completa.
Figura 6. Modo trial.
Figura 7. Modo completo.
Pues nada. Hasta aquí la lección de hoy. Espero que os sea de mucha utilidad y vendáis muchas aplicaciones.
Happy programming!
Recursos de este artículo
- Artículo “How to: Implement the Trial experience in Your Application for Windows Phone”.
- Artículo “How to: Test and Debug your Trial Application for Windows Phone”.







0 comentarios:
Post a Comment