Ads 468x60px

Perfil

martes, 7 de agosto de 2012

Desarrollo en Windows Phone 7 (Parte 1)




Empezar a crear una aplicaciĂłn de Windows Phone

IntroducciĂłn y Fundamentos
Empezar a crear una aplicaciĂłn de Windows Phone

Windows Phone 7 incluye varias herramientas para ayudarte a crear y publicar aplicacionesEstetutorial describe las herramientas de desarrollo y cĂłmo empezar a crear tu primera aplicaciĂłn paraWindows Phone.
El inicio rápido contiene las siguientes secciones:
·         InstalaciĂłn de las Herramientas de desarrollo
·         Crear un nuevo proyecto
·         Agregar un TextBlock
·         RealizaciĂłn de la primera aplicaciĂłn
·         Ejecutar la aplicaciĂłn en un telĂ©fono
·         AdiciĂłn de gráficos
·         Agregar un botĂłn
·         Agregar animaciĂłn
·         PublicaciĂłn en el Mercado de Aplicaciones
·         ¿QuĂ© sigue?
Nota:
Los ejemplos en estos artĂ­culos, sobre el uso de Silverlight se ejecutan en el navegador, parasimular el comportamiento para Windows PhoneEl procedimiento real puede ser ligeramente diferente en el emulador de Windows Phone o en un dispositivo Windows Phone.
InstalaciĂłn de las herramientas de desarrollo
Puedes descargar e instalar todo lo necesario para crear y publicar aplicaciones de Windows Phone. En los siguientes elementos, selecciona la descarga que corresponda y a continuaciĂłn, haz clic en los enlaces para instalar las herramientas: 
Para desarrolladores en C#:
Si eres un desarrollador de C #, instalar los siguientes vĂ­nculos:
1.       Herramientas de Windows Phone para desarrolladores
2.       Herramientas de Windows Phone para desarrolladores, actualizaciĂłn de Enero 2011.
Para desarrolladores en Visual Basic:
Si eres un desarrollador de Visual Basic, debes tener previamente instalado Visual Studio 2010 Professional, Premium o Ultimate, para utilizar Visual Basic para Windows Phone. Visual Basic para Windows Phone no es compatible con Visual Studio 2010 Express.
Si eres un desarrollador de Visual Basic, instala lo siguiente:
  1. Herramientas para desarrolladores de Visual Basic:
  1. Herramientas para desarrolladores de Visual Basic, actualizaciĂłn, Enero 2011:

3.       Herramientas para desarrolladores de Microsoft Visual Basic, Windows Phone– RTW:
CreaciĂłn de un nuevo proyecto
DespuĂ©s de haber instalado las herramientas de desarrollo Windows Phone, la forma más fácil de crear tu primera aplicaciĂłn es utilizando Visual Studio. 
  1. En el menĂş Inicio, selecciona Microsoft Visual Studio 2010 Express para Windows Phone.
  2. En el menĂş Archivo, haz clic en Nuevo proyecto


Esto abre el cuadro de diálogo de un Nuevo proyecto. Al lado izquierdo del cuadro de diálogo se presentan proyectos de diferentes plantillas. Al seleccionar Silverlight para Windows Phone, en la parte central del cuadro de diálogo, se muestran los diferentes tipos de aplicaciones que se pueden crear.



  1. A la izquierda, selecciona Silverlight para Windows Phone.
  2. En el centro, selecciona la plantilla de AplicaciĂłn de Windows Phone.
  3. Agregar el nombre HelloWorld_Phone al proyecto, y haz clic en Aceptar.
Se creará un nuevo proyecto de Silverlight para Windows Phone y luego se abrirá el diseñador, tal como se muestra en la siguiente imagen.

De forma predeterminada, Visual Studio se divide en tres paneles. (Dependiendo de su configuración, sus paneles pueden ser distintos). A la izquierda está la vista Diseño, en el centro es el punto de vista XAML, y de la derecha es el Explorador de soluciones.
En el Explorador de soluciones, hay una serie de archivos de proyecto.  Los archivos que se utilizarán en este tutorial son MainPage.xaml y MainPage.xaml.cs. MainPage.xaml define la interfaz de usuario de la aplicaciĂłn. XAML es un lenguaje declarativo basado en XML, utilizado para crear y diseñar elementos de la interfaz de usuario. Para obtener más informaciĂłn acerca de XAML, visualice el siguiente enlace: InformaciĂłn general sobre XAML [http://msdn.microsoft.com/es-es/library/cc189036%28v=VS.95%29.aspx].
Si expande MainPage.xaml, verá un archivo de cĂłdigo de C# subyacente, llamado MainPage.xaml.cs. Un archivo de cĂłdigo subyacente se uniĂł a un archivo XAML  a travĂ©s de una clase parcial, y contiene la lĂłgica para el archivo XAML. Para obtener más informaciĂłn acerca de cĂłdigo subyacente y clases parciales, visualizar en MSDN: cĂłdigo subyacente y clases parciales[http://msdn.microsoft.com/es-es/library/cc221357%28v=VS.95%29.aspx
La separación entre la interfaz de usuario y el código, te permite crear elementos de la interfaz en el lenguaje de marcación XAML y luego usar una parte del archivo del código subyacente para responder a eventos y manipular los objetos que se declaran en XAML. Esta separación hace que sea fácil para los diseñadores y desarrolladores trabajar juntos de forma eficaz en los mismos proyectos.

Agregar un TextBlock

A continuaciĂłn, se añadirá un simple TextBlock que muestra el mensaje "Hola, mundo". Hay diferentes maneras en las que se pueden agregar elementos, pero esta secciĂłn va a utilizar la caja de herramientas y la vista de diseño.  
  1. Si el MainPage.xaml no está abierto, haz doble clic en MainPage.xaml en el Explorador de soluciones.
  2. En el menĂş Ver, haz clic en Otras ventanas y, a continuaciĂłn, haz clic en el Caja de herramientas. La ventana de la caja de herramientas aparecerá.
  3. Cambiar el tamaño de la caja de herramientas para que pueda visualizarla, así como también la vista de diseño del teléfono.
  1. Desde la caja de herramientas, arrastra un control TextBlock  en el panel principal del telĂ©fono. 


  1. En la vista de diseño, asegúrate de que el TextBlock esté seleccionado.
  2. En la ventana de propiedades, establece en la propiedad Text Hola, mundo!
  3. Establece la propiedad FontSize a 50.
  4. Ajuste la propiedad  Width a 70.
Luego actualiza la vista diseño, debe tener el siguiente aspecto:



RealizaciĂłn de la primera aplicaciĂłn
Ahora que has creado tu primera aplicaciĂłn de Silverlight para Windows Phone, necesitas ejecutarlo. Vamos a usar el emulador incorporado de Windows Phone que simula un dispositivo de Windows Phone. Usando el emulador de Windows Phone, puedes probar y depurar sus aplicaciones de forma rápida en el escritorio sin tener que implementar la aplicaciĂłn en el dispositivo. 
Para iniciar el emulador, sólo tendrás que iniciar una sesión de depuración para la aplicación. Visual Studio pondrá en marcha el emulador y cargará la aplicación en ella.
  1. Para iniciar la aplicaciĂłn en modo de depuraciĂłn, presione F5 o elija Depurar-> Iniciar depuraciĂłn.
Si hay errores de compilación de la aplicación, Visual Studio mostrará información del error. Después de unos momentos un emulador en la ventana debe aparecer, como lo muestra la siguiente imagen.
Toma unos minutos para abrir el emulador e iniciar el depurador por primera vez. Para agilizar las sesiones posteriores de depuraciĂłn, no cierres la ventana del emulador. En su lugar, elije Depurar-> Detener depuraciĂłn, para suspender la depuraciĂłn. Esto dejará el emulador en funcionamiento, por lo que la prĂłxima sesiĂłn de depuraciĂłn se cargará más rápidamente. 
  1. Para detener la depuraciĂłn, selecciona Depurar-> Detener depuraciĂłn.

Ejecutar la aplicaciĂłn en un Windows Phone

Para ejecutar la aplicaciĂłn en un Windows Phone, debes desbloquear el dispositivo mediante las herramientas de registro de Windows Phone para desarrolladores. Esta herramienta se encuentra en el MenĂş Inicio de Herramientas para Desarrolladores en Windows Phone.
Si aĂşn no tienes una cuenta en el sitio Concentrador de Aplicaciones (App Hub), regĂ­strate ahora en App Hub https://users.create.msdn.com/Register/ el portal oficial de desarrolladores para Windows Phone.
1.       Inicia el software Zune en tu computadora
2.       Conecta el telĂ©fono a la computadora
3.       Se mostrará las herramientas de registro para desarrolladores  de Windows Phone, a continuaciĂłn, ingresa las credenciales de Windows Live ID, asociadas con tu cuenta de App Hub

4.       En el asistente de registro, introduce la informaciĂłn necesaria acerca de la identificaciĂłn de tu telĂ©fono. Tu telĂ©fono está desbloqueado y listo para recibir las implementaciones de aplicaciones en Visual Studio

5.       En Visual Studio, la implementaciĂłn en el telĂ©fono es tan sencillo como seleccionar " Dispositivo de Windows Phone 7" (en lugar de un emulador) en el destino de implementaciĂłn
6.       DespuĂ©s de seleccionar el dispositivo de Windows Phone 7 en la lista desplegable, puedes implementar el dispositivo desbloqueado utilizando las mismas tĂ©cnicas yprocesos de depuraciĂłn como lo harĂ­as con el emuladorNota
Para una implementaciĂłn exitosa, el telĂ©fono debe estar conectado al computador con la pantalla abierta, y el software de Zune debe permanecer en ejecuciĂłn. 

Adición de gráficos

En Silverlight, puedes agregar gráficos utilizando formas. Puedes crear formas simples, como rectángulos o formas más complejas, tales como polĂ­gonos, brochas, los cuales se utilizan para la pintura o los objetos de color en Silverlight. Para obtener más informaciĂłn acerca de los gráficos y las brochas, consulta los tutoriales Gráficos y Brochas.
Vamos a empezar agregando un StackPanel alrededor de un TextBlock. Un panel es un contenedor que se utiliza para agrupar y diseñar elementos de la interfaz de usuario. Cada aplicación debe tener al menos un Panel. Un StackPanel expone cada uno de los elementos ya sea de forma vertical u horizontal, dependiendo de la orientación. El Grid y Canvas permiten un posicionamiento más exacto de los elementos.
La figura que crearás será una elipse, esta aparecerá después del TextBlock en el StackPanel. Debes especificar la altura y el ancho de la elipse, así como su relleno. Para el relleno, debes especificar una brocha para colorear la elipse.
En lugar de utilizar la vista Diseño, en esta ocasiĂłn se va a trabajar en la vista XAML. 
  1. Cierra la ventana de la caja de herramientas
  2. En la vista XAML, busca el TextBlock que has agregado
  3. Vuelve a colocar el elemento TextBlock en el XAML

XAML

<StackPanel>
<TextBlock FontSize="50" Text="Hello, World!" />
<Ellipse Fill="Blue" Height="150" Width="300"
Name="FirstEllipse" />
</StackPanel>


4.       Presiona F5 para ejecutar la aplicaciĂłn.
La siguiente imagen muestra el emulador de la aplicación hasta ahora. Sin embargo, no hay interacción con el usuario, por lo que no hace mucho, pero vamos a añadir más controles consecutivamente.
  1. Para interrumpir la depuraciĂłn, selecciona Depurar-> Detener depuraciĂłn.
Agregar un BotĂłn
Lo siguiente que se va a agregar a la aplicación es un botón, con él, los usuarios pueden interactuar con las aplicaciones de Silverlight, la cual tiene una rica biblioteca de controles que incluyen un botón, TextBox, ListBox, y muchos más.
Hay dos partes que deben tomarse en cuenta al añadir un botón. La primera parte consiste en agregar un botón de elemento para el XAML. La segunda parte consiste en añadir un poco de lógica para controlar los eventos generados por la interacción del usuario, tales como hacer clic en el botón.
1.       En la vista XAML, agrega el  siguiente cĂłdigo XAML despuĂ©s de la etiqueta <Ellipse />.

XAML


<Button Height="150"
Width="300"
Name="FirstButton"
Content="Tap" />
Debes darle al botĂłn un valor con el nombre de "FirstButton", para que puedas acceder al cĂłdigo. El atributo Content especifica el texto que aparece en el botĂłn. Los atributos Height y Width especifican la altura y el ancho del botĂłn.  
Silverlight cuenta con un modelo de aplicación orientada a eventos. Cuando pasan ciertas cosas en tu aplicación, como cuando un usuario hace clic en un botón o se carga la aplicación, se produce un evento. Tú puedes agregar código, denominado controlador de eventos, el cual hace algo en específico cuando un evento se produce. Vamos a añadir un controlador para evento Click.
Visual Studio puede crear los controladores de eventos para ti.
2.       En la vista Diseño, selecciona el botĂłn.
3.       En la ventana Propiedades, haz clic en la pestaña Eventos. Una lista de eventos para el botĂłn aparecerá.
4.       Haz doble clic en el evento Click
El cĂłdigo subyacente del archivo MainPage.xaml.cs se abrirá y deberĂ­as ver el controlador de eventos FirstButton_Click.  
5.       Dentro de las llaves, agrega el siguiente cĂłdigo al controlador de eventos.
C#

private void FirstButton_Click (object sender, RoutedEventArgs e)
  {
   if (FirstButton.Contentas string == "Tap")
   {
           FirstButton.Content = " Tap Again";
   }
   else
   {
        FirstButton.Content = "Tap";
   }
El controlador de eventos FirstButton_Click, realiza la siguiente acciĂłn: cuando el botĂłn es pulsado, el texto que se muestra en el botĂłn alterna entre "Tap" and "Tap Again".


6.       Presiona F5 para ejecutar la aplicaciĂłn.
En el siguiente ejemplo se muestra el controlador de eventos, para probarlo, haga clic en el botĂłn.

XAML

<StackPanel>
     <TextBlock FontSize="50" Text="Hello, World!" />
     <Ellipse Fill="Blue" Height="150" Width="300"
   Name="FirstEllipse" />
     <Button Height="150"
Width="300"
Content="Tap"
Name="FirstButton"
Click="FirstButton_Click" />
</StackPanel>

Agregando animaciĂłn

La Ăşltima cosa que vamos a agregar a la aplicaciĂłn es un poco de animaciĂłn. Vamos a crear una animaciĂłn muy simple que comprime la elipse y luego la expande al salir, pero se puede hacer mucho más con animaciones. Para obtener más informaciĂłn acerca de las animaciones, consulte la informaciĂłn general sobre animaciones http://msdn.microsoft.com/es-es/library/cc189019(v=VS.95).aspx en MSDN.
Para crear una animaciĂłn tiene que hacer tres cosas: crear un StoryBoard, crear una animaciĂłn y a continuaciĂłn, agrega cĂłdigo para iniciar la animaciĂłn.
Un StoryBoard es un contenedor que se utiliza para animaciones en grupo. Desde el StoryBoard, las animaciones se pueden  iniciar y detener. Las animaciones en Silverlight van cambiando el valor de su propiedad en un lapso de tiempo. El Storyboard.TargetName es una propiedad que especifica el objeto al que la animaciĂłn se aplicará. Storyboard.TargetProperty especifica la propiedad en el objeto que se animará. La propiedad To especifica el valor para animar. El AutoReverse especifica si la animaciĂłn se debe repetir cuando está terminado el regreso a su posiciĂłn inicial. La propiedad Duration especĂ­fica el tiempo que se toma la animaciĂłn. Por ejemplo, si deseas que la duraciĂłn sea de un segundo, debes establecer la duraciĂłn a "00:00:01" (cero horas: cero minutos: un segundo).   
  1. En el Explorador de soluciones, haz doble clic en MainPage.xaml.
  2. En la vista XAML, reemplaza el StackPanel actual con el siguiente XAML.
XAML
<StackPanel>
<StackPanel.Resources>
Storyboard x:Name="FirstStoryBoard">
  <DoubleAnimation Storyboard.TargetName="FirstEllipse"
Storyboard.TargetProperty="Width"
To="1" AutoReverse="True"
Duration="00:00:01" />
</Storyboard>
</StackPanel.Resources>
<TextBlock FontSize="50" Text="Hello, World!" />
<Ellipse Fill="Blue" Height="150" Width="300"
Name="FirstEllipse" />
<Button Height="150"
Width="300"
Name="FirstButton"
Content="Click"
Click="FirstButton_Click" />
</StackPanel>

Este XAML crea una secciĂłn StackPanel.Resources que contiene un elemento StoryBoard.  El StoryBoard se denomina FirstStoryBoard, para que se pueda acceder a Ă©l en el cĂłdigo. La animaciĂłn cambia el ancho de la propiedad de la elipse, que es un tipo Double, por lo que utiliza un DoubleAnimation. La propiedad Storyboard.TargetName especifica el objeto FirstEllipse. El Storyboard.TargetProperty especifica la propiedad Width sobre la elipse. La propiedad To se establece en 1, por lo que el ancho se reducirá a partir de su valor actual de 200 a 1. La propiedad AutoReverse se establece en True, para que la animaciĂłn se repita. La propiedad Duration se establece en un segundo.   


Ahora lo que necesitas es iniciar la animaciĂłn. Para esto, se llama al mĂ©todo Begin en el StoryBoard.  
3.       En el MainPage.xaml.cs, agrega la siguiente llamada al mĂ©todo Begin para iniciar la animaciĂłn FirstStoryBoard cuando se hace clic en el FirstButton.
C#
private void FirstButton_Click(object sender, RoutedEventArgs e)
{
            if (FirstButton.Content as string == "Tap")
{
    FirstButton.Content = "Tap Again"
}
            else
{
     FirstButton.Content = "Tap";
}
            FirstStoryBoard.Begin();
}
  1. Presiona F5 para ejecutar la aplicaciĂłn.
En el siguiente ejemplo se muestra la animaciĂłn con hacer clic en el botĂłn

PublicaciĂłn en el Mercado de Aplicaciones

Cuando hayas terminado la aplicaciĂłn, es probable que desees una descarga gratuita o su venta para distribuciĂłn al pĂşblico. Esto se hace mediante la presentaciĂłn de una solicitud en el mercado de Windows Phone. Para saber cĂłmo hacerlo, consulta Publicando tu aplicaciĂłn en el Marketplace.

¿QuĂ© sigue?

Ahora que ya has sido introducido en tu primera aplicaciĂłn de Windows Phone, Ă©chale un vistazo a la GuĂ­a de diseño de interfaz de usuario para Windows Phone.  No todo en este documento será inmediatamente adecuado para ti, pero puedes volver a Ă©l de vez en cuando para repasar las mejores prácticas. Una vez que hayas terminado, vuelve aquĂ­ y consulta el siguiente enlace que se adentra en XAML, el lenguaje de marcado declarativo para crear la interfaz de usuario de la aplicaciĂłn: Creando la interfaz de usuario de Windows Phone (XAML).