Windows Phone 7.5 "Mango" - Krasis Press

download Windows Phone 7.5 "Mango" - Krasis Press

of 39

description

Este documento contiene el índice y el primer capítulo completo del libro "Windows Phone 7.5, desarrollo de aplicaciones en Silverlight" de Josué Yeray Julián, editado Krasis Press.En él encontrarás la mejor guía práctica para desarrolladores de WIndows Phone 7.5 "Mango", y la única en español. Se trata de un libro práctico y lleno de consejos con el que podrás estar generando aplicaciones avanzadas para la plataforma móvil de Microsoft en muy poco tiempo.Estamos seguros de que te va a encantar este libro.

Transcript of Windows Phone 7.5 "Mango" - Krasis Press

Windows Phone 7.5Desarrollo de aplicaciones en Silverlight.Jous Yeray Julin Ibon Landa

WINDOWS PHONE 7.5 DESARROLLO DE APLICACIONES EN SILVERLIGHT.No est permitida la reproduccin total o parcial de este libro, ni su tratamiento informtico, ni la transmisin de ninguna forma o por cualquier medio, ya sea electrnico, mecnico, por fotocopia, por registro u otros mtodos, sin el permiso previo y por escrito de los titulares del Copyright. Dirjase a CEDRO (Centro Espaol de Derechos Reprogrficos, www.cedro.org) si necesita fotocopiar o escanear algn fragmento de esta obra.

DERECHOS RESERVADOS 2011, respecto a la primera edicin en espaol, por Krasis Consulting, S. L. www.Krasis.com ISBN: 978-84-939036-6-4 Depsito Legal: XXXX Impreso en Espaa-Printed in Spain

AgradecimientosEscribir un libro consume una cantidad ingente de tiempo, normalmente del tiempo que debera estar dedicado a tu familia, por lo que tengo que agradecer a mi mujer Hilda y a mis hijos, Roberto, Laura y Sofia la eterna paciencia que han demostrado tener conmigo, con mis fines de semana delante del ordenador escribiendo y desarrollando. Siempre he pensado que una de las razones por las que hoy estoy escribiendo un libro, un blog e intentando aprender cada da algo ms, es el espritu de superacin y trabajo que me inculcaron desde muy pequeo quienes me rodeaban, por todo ello gracias pap y mam. No estara aqu sin vosotros. Tambin tengo que agradecer a todos mis compaeros de Plain Concepts, sobre todo a los de Bilbao, que aguantan incansablemente mis chapas sobre Windows Phone y Silverlight. Gracias chicos, es un placer trabajar con vosotros cada da!. Para terminar, gracias a mi abuela, Josefa, siempre ests en mi corazn. Josu Yeray Julin

A mi hija Laia, que sin lugar a dudas es lo mejor que me ha pasado. Ibon Landa

ContenidoAGRADECIMIENTOS ............................................................................................ iii CONTENIDO.......................................................................................................... iv PRLOGO .............................................................................................................. xi 1.- CONOCIENDO WINDOWS PHONE ........................................................... 15 1.- Introduccin................................................................................................................................ 15 2.- Arquitectura de Windows Phone ......................................................................................... 16 2.1.- Modelo de hardware .................................................................................................... 16 2.2.- Modelo de software ...................................................................................................... 18 2.2.1.- Modelo de aplicacin ............................................................................................ 19 2.2.2.- Modelo de UI .......................................................................................................... 19 2.2.3.- Integracin con la nube ........................................................................................ 19 2.2.4.- Runtime de aplicaciones ....................................................................................... 19 3.- Preparando nuestro entorno ................................................................................................. 21 3.1.- Descargando el SDK ..................................................................................................... 21 3.2.- Microsoft Visual Studio 2010 para Windows Phone ............................................ 22 3.2.1.- Windows Phone Application .............................................................................. 24 3.2.2.- Windows Phone Databound Application ........................................................ 24 3.2.3.- Windows Phone Class Library ........................................................................... 25 3.2.4.- Windows Phone Panorama Application .......................................................... 25 3.2.5.- Windows Phone Pivot Application ................................................................... 26 3.2.6.- Windows Phone 3D Graphics Application ..................................................... 26 3.2.7.- Windows Phone Audio Playback Agent .......................................................... 26 3.2.8.- Windows Phone Audio Streaming Agent ........................................................ 27 3.2.9.- Windows Phone Task Scheduler Agent .......................................................... 27 3.3.- Microsoft Expression Blend 4 para Windows Phone ........................................... 27 3.4.- Emulador de Windows Phone ................................................................................... 29 3.5.- Application Deployment Tool .................................................................................... 32 3.6.- Developer Registration Tool ...................................................................................... 33 3.7.- Marketplace Test Tool ................................................................................................. 34 4.- Silverlight para Windows Phone............................................................................................ 35 5.- Conclusin .................................................................................................................................. 36 2.- INTRODUCCIN A SILVERLIGHT PARA WINDOWS PHONE .............. 37 1.- Introduccin................................................................................................................................ 37 2.- Todo es XAML .......................................................................................................................... 38 3.- Marcos, pginas y elementos. ................................................................................................. 39 3.1.- Marcos .............................................................................................................................. 39iv

Contenido v

3.2.- Pginas............................................................................................................................... 40 3.3.- Elementos ........................................................................................................................ 41 3.3.1.- UIElement ................................................................................................................ 42 3.3.2.- FrameworkElement ............................................................................................... 42 3.3.3.- Control ..................................................................................................................... 42 4.- Poniendo orden en nuestra pantalla ..................................................................................... 42 4.1.- Propiedades adjuntas .................................................................................................... 43 4.2.- Canvas ............................................................................................................................... 43 4.3.- StackPanel ........................................................................................................................ 45 4.4.- Grid ................................................................................................................................... 47 4.4.1.- Tamao de columnas y filas ................................................................................. 53 5.- Recursos, estilos y plantillas .................................................................................................... 57 5.1.- Recursos ........................................................................................................................... 57 5.2.- Estilos ................................................................................................................................ 61 5.2.1.- Estilos en Expression Blend ................................................................................. 64 5.3.- Plantillas ............................................................................................................................ 67 5.3.1.- Estados visuales ...................................................................................................... 71 5.3.2.- Plantillas en Expression Blend ............................................................................. 73 5.4.- Jerarqua de cercana en estilos y plantillas. ............................................................ 79 6.- Conclusin ................................................................................................................................... 80 3.- SILVERLIGHT PARA WINDOWS PHONE A FONDO ............................... 81 1.- Introduccin ................................................................................................................................ 81 2.- Bosques y rboles ...................................................................................................................... 81 2.1.- VisualTreeHelper ........................................................................................................... 84 3.- Sistema de propiedades de Silverlight .................................................................................. 89 3.1.- DependencyObject........................................................................................................ 89 3.2.- DependencyProperty .................................................................................................... 89 3.3.- AttachedProperty .......................................................................................................... 93 4.- Sistema de enlace a datos de Silverlight ............................................................................... 95 4.1.- Definiendo Datos ....................................................................................................... 95 4.2.- Expresiones de enlace a datos .................................................................................... 97 4.3.- Contexto de datos ........................................................................................................ 99 4.4.- Comportamiento de enlace a datos ....................................................................... 100 4.4.1.- Mode ....................................................................................................................... 100 4.4.2.- UpdateSourceTrigger .......................................................................................... 103 4.4.3.- Converters ............................................................................................................ 105 4.5.- Enlazando Listas............................................................................................................ 109 4.5.1.- Plantillas de datos ................................................................................................. 111 5.- MVVM ......................................................................................................................................... 118 5.1.- Qu es MVVM? ........................................................................................................... 118 5.2.- MVVM en Windows Phone ....................................................................................... 120 5.3.- Comandos ...................................................................................................................... 121 5.3.1.- Implementando comandos................................................................................. 121 5.3.2.- DelegateCommand .............................................................................................. 124 6.- Conclusin ................................................................................................................................. 126

vi Windows Phone 7.5 - Desarrollo de aplicaciones en Silverlight

4.- WINDOWS PHONE A FONDO .................................................................. 127 1.- Introduccin.............................................................................................................................. 127 2.- Servicio de navegacin ........................................................................................................... 127 2.1.- Navegando entre pginas ........................................................................................... 128 2.2.- Utilizando el botn por hardware........................................................................... 129 2.3.- Eventos de navegacin ............................................................................................... 132 2.4.- Paso de parmetros en la navegacin..................................................................... 135 2.4.1.- Parmetros simples ............................................................................................. 135 2.4.2.- Parmetros complejos ........................................................................................ 137 2.5.- Navegacin en MVVM ................................................................................................ 141 3.- Almacenamiento local ............................................................................................................ 144 3.1.- Isolated Storage ............................................................................................................ 144 3.2.- SQL Server CE ............................................................................................................. 151 3.2.1.- Optimizaciones: Columna IsVersion ............................................................... 155 3.2.2.- Optimizaciones: INotifyPropertyChanging .................................................... 156 3.2.3.- Optimizaciones: Consultas compiladas .......................................................... 159 4.- Ciclo de vida de una aplicacin ............................................................................................ 159 4.1.- Tombstoning ................................................................................................................. 161 4.1.1.- Tombstoning en pginas ..................................................................................... 161 4.1.2.- Tombstoning en aplicacin ................................................................................ 166 4.1.3.- Idle Detection ....................................................................................................... 170 5.- Lanzadores y Selectores ........................................................................................................ 170 5.1.- Lanzadores..................................................................................................................... 170 5.1.1.- BingMapsDirectionsTask .................................................................................... 171 5.1.2.- BingMapsTask ....................................................................................................... 172 5.1.3.- EmailComposeTask ............................................................................................. 174 5.1.4.- MarketplaceDetailTask ....................................................................................... 174 5.1.5.- MarketplaceHubTask .......................................................................................... 174 5.1.6.- MarketplaceReviewTask..................................................................................... 175 5.1.7.- MarketplaceSearchTask ...................................................................................... 175 5.1.8.- MediaPlayerLauncher .......................................................................................... 176 5.1.9.- PhoneCallTask ...................................................................................................... 176 5.1.10.- SearchTask....................................................................................................... 177 5.1.11.- ShareLinkTask ................................................................................................. 177 5.1.12.- ShareStatusTask ............................................................................................. 178 5.1.13.- SmsComposeTask ......................................................................................... 178 5.1.14.- WebBrowserTask.......................................................................................... 178 5.2.- Selectores ...................................................................................................................... 179 5.2.1.- AddressChooserTask ......................................................................................... 179 5.2.2.- CameraCaptureTask ........................................................................................... 180 5.2.3.- EmailAddressChooserTask ............................................................................... 182 5.2.4.- PhoneNumberChooserTask ............................................................................. 182 5.2.5.- PhotoChooserTask ............................................................................................. 183 5.2.6.- SaveContactTask.................................................................................................. 185 5.2.7.- SaveEmailAddressTask ....................................................................................... 187 5.2.8.- SavePhoneNumberTask ..................................................................................... 187

Contenido vii

5.2.9.- SaveRingtoneTask ................................................................................................ 187 6.- Contactos y calendarios ......................................................................................................... 189 6.1.- Agregados de datos ..................................................................................................... 189 6.2.- Acceder a los datos de contactos ........................................................................... 190 6.3.- Acceder a los datos de calendarios ......................................................................... 192 7.- Conclusin ................................................................................................................................. 194 5.- WINDOWS PHONE A FONDO II ............................................................... 195 1.- Introduccin .............................................................................................................................. 195 2.- Sensores ..................................................................................................................................... 195 2.1.- Acelermetro ............................................................................................................... 195 2.2.- Brjula ............................................................................................................................. 201 2.3.- Giroscopio ..................................................................................................................... 205 2.4.- Movimiento combinado .............................................................................................. 207 3.- Hardware ................................................................................................................................... 212 3.1.- Cmara ........................................................................................................................... 212 3.1.1.- Windows Phone Camera API ........................................................................... 213 3.1.2.- Silverlight 4 Webcam API .................................................................................. 219 3.2.- Micrfono ...................................................................................................................... 222 3.3.- Sintonizador de radio.................................................................................................. 227 3.4.- Informacin del dispositivo ....................................................................................... 228 4.- Geo localizacin ....................................................................................................................... 229 4.1.- Buenas prcticas ........................................................................................................... 230 4.2.- Geo localizando nuestra aplicacin ......................................................................... 231 5.- Acciones programadas ........................................................................................................... 234 5.1.- Notificaciones programadas ...................................................................................... 235 5.1.1.- Alarma ..................................................................................................................... 235 5.1.2.- Recordatorio ......................................................................................................... 237 5.2.- Tareas programadas .................................................................................................... 238 5.2.1.- Tipos de tareas ..................................................................................................... 238 5.2.2.- Usando tareas ....................................................................................................... 240 6.- Agente de Audio ...................................................................................................................... 243 7.- Conclusin ................................................................................................................................. 249 6.- INTERACCIN CON EL USUARIO ............................................................ 251 1.- Introduccin .............................................................................................................................. 251 2.- Elementos .................................................................................................................................. 252 2.1.- ApplicationBar .............................................................................................................. 252 2.1.1.- Recomendaciones de uso .................................................................................. 253 2.1.2.- Usando ApplicationBar ....................................................................................... 254 2.2.- Panorama ....................................................................................................................... 258 2.2.1.- Arquitectura del Panorama ............................................................................... 261 2.2.2.- Recomendaciones de uso .................................................................................. 262 2.2.3.- Usando Panorama ................................................................................................ 263 2.3.- Pivot ................................................................................................................................ 266 2.3.1.- Arquitectura del Pivot ........................................................................................ 266

viii Windows Phone 7.5 - Desarrollo de aplicaciones en Silverlight

2.3.2.- Recomendaciones de uso .................................................................................. 268 2.3.3.- Usando Pivot ......................................................................................................... 268 2.4.- Bing Maps ....................................................................................................................... 273 2.4.1.- Obteniendo una clave de uso ........................................................................... 273 2.4.2.- Usando Bing Maps ............................................................................................... 275 2.5.- WebBrowser ................................................................................................................ 281 2.5.1.- Recomendaciones de uso .................................................................................. 281 2.5.2.- Usando WebBrowser ......................................................................................... 282 2.6.- RichTextBox ................................................................................................................. 287 2.6.1.- Elementos del RichTextBox .............................................................................. 287 2.6.2.- Usando RichTextBox .......................................................................................... 288 2.7.- Windows Phone Silverlight Toolkit ........................................................................ 290 2.7.1.- Instalacin .............................................................................................................. 291 2.7.2.- Usando el Toolkit ................................................................................................ 295 3.- Tiles ............................................................................................................................................. 297 3.1.- Propiedades de los tiles ............................................................................................. 297 3.2.- Trabajando con Tiles .................................................................................................. 299 3.3.- Scheduled tiles .............................................................................................................. 305 4.- Conclusin ................................................................................................................................ 307 7.- INTEGRNDONOS CON NUESTRO ENTORNO .................................... 309 1.- Introduccin.............................................................................................................................. 309 2.- Servicios ..................................................................................................................................... 309 2.1.- WCF ............................................................................................................................... 310 2.1.1.- EndPoints ............................................................................................................... 310 2.1.2.- Trabajando con WCF ......................................................................................... 311 2.2.- OData ............................................................................................................................. 321 2.2.1.- Consumiendo OData.......................................................................................... 321 2.2.2.- Preservando informacin OData ..................................................................... 326 2.3.- XML................................................................................................................................. 328 2.3.1.- WebClient y HttpWebRequest ....................................................................... 328 2.3.2.- LINQ to XML ....................................................................................................... 329 2.3.3.- Consumiendo RSS ............................................................................................... 329 3.- Notificaciones ........................................................................................................................... 333 3.1.- Cmo funcionan? ....................................................................................................... 333 3.2.- Notificaciones Toast ................................................................................................... 335 3.3.- Notificaciones Tile ....................................................................................................... 344 3.4.- Notificaciones Raw...................................................................................................... 352 4.- Sockets ....................................................................................................................................... 356 4.1.- Usando Sockets ............................................................................................................ 356 5.- Transferencia de archivos ..................................................................................................... 362 5.1.- Polticas de uso ............................................................................................................. 362 5.2.- Requerimientos de certificacin .............................................................................. 363 5.3.- Usando BackgroundTransfer .................................................................................... 364 6.- Conclusin ................................................................................................................................ 367

Contenido ix

8.- WINDOWS AZURE ...................................................................................... 369 1.- Cloud Computing .................................................................................................................... 370 2.- Windows Azure ....................................................................................................................... 373 2.1.- Beneficios de Windows Azure ................................................................................. 373 2.2.- Mi primera aplicacin Windows Azure .................................................................. 374 2.3.- La configuracin ........................................................................................................... 377 2.4.- Entorno de simulacin ................................................................................................ 380 2.5.- Cuentas de Windows Azure..................................................................................... 382 2.6.- Desplegar una aplicacin en Windows Azure ...................................................... 383 3.- Windows Azure Storage ....................................................................................................... 388 3.1.- Windows Azure Table................................................................................................ 389 3.2.- Windows Azure Blobs................................................................................................ 389 3.3.- Windows Azure Queues ........................................................................................... 389 3.4.- Windows Azure Drive ............................................................................................... 390 3.5.- Crear un servicio de almacenamiento .................................................................... 390 4.- SQL Azure ................................................................................................................................. 391 4.1.- Aprovisionamiento ...................................................................................................... 392 4.2.- Mi primera base de datos SQL Azure .................................................................... 392 5.- AppFabric Access control ..................................................................................................... 397 5.1.- Mi primera aplicacin con Access Control ........................................................... 399 6.- Windows Azure Toolkit para windows phone 7 ............................................................ 406 7.- Conclusin ................................................................................................................................. 409 APNDICE A.- PUBLICAR EN EL MARKETPLACE ....................................... 412 1.- Introduccin .............................................................................................................................. 412 2.- Crear una cuenta de Marketplace ....................................................................................... 412 2.1.- Tipo de cuenta .............................................................................................................. 414 2.2.- Detalles de cuenta ....................................................................................................... 414 2.3.- Perfil ................................................................................................................................ 414 2.4.- Pago ................................................................................................................................. 415 2.5.- Confirmacin ................................................................................................................ 416 2.6.- GeoTrust........................................................................................................................ 416 3.- Probando tu aplicacin ........................................................................................................... 416 3.1.- Detalles de aplicacin ................................................................................................. 417 3.2.- Pruebas automatizadas ............................................................................................... 418 3.3.- Pruebas monitorizadas ............................................................................................... 419 3.4.- Pruebas manuales ......................................................................................................... 420 4.- Publicando tu aplicacin ......................................................................................................... 420 4.1.- Subir tu aplicacin ........................................................................................................ 422 4.2.- Descripcin ................................................................................................................... 422 4.3.- Precio .............................................................................................................................. 423 4.4.- Pruebas ........................................................................................................................... 423 NDICE ANALTICO .......................................................................................... 425

x Windows Phone 7.5 - Desarrollo de aplicaciones en Silverlight

PrlogoAntes de presentarle el libro que tiene entre manos, permtame estimado lector darle a conocer quin es su autor. As, seguramente entender por qu esta obra es indispensable si piensa aprender a desarrollar en la plataforma Windows Phone. Por suerte, a lo largo de mi vida he conocido a muchos profesionales del desarrollo, bien por cuestiones laborales o bien en los distintos eventos en los que he tenido el placer de participar. Para serle sinceros, uno empieza a conocer muy bien cuales de estos son los que entienden la tecnologa como un arte y cules son los que entienden el mundo del desarrollo de software como un trabajo ms en el que ganarse la vida. Josu Yeray ve y fomenta el arte en su trabajo, es de esas personas que uno quiere tener siempre a su lado, con una gran pasin por el mundo del desarrollo y, sobre todo, con unas incansables ganas de trabajar y ayudar a la comunidad. Desde que he tenido el placer de trabajar con l no ha dejado de sorprenderme gratamente por sus increbles capacidades tcnicas, resaltadas an ms por ese sobresfuerzo que muchos hacemos robndole tiempo a nuestras familias. Adems de ser una de las personas ms activas y destacadas en los foros de soporte de Microsoft tambin mantiene un excelente blog sobre Windows Phone. Ahora, adems, suma a todas sus aportaciones al mundo tecnolgico este gran compendio de saber hacer sobre la plataforma Windows Phone. Querido amigo, si usted desea adentrarse en el mundo del desarrollo en la ltima versin de la plataforma mvil de Microsoft, le recomiendo encarecidamente que lea y disfrute de este libro. Seguro que ser muy provechoso para su vida profesional. Por el contrario, si usted ya conoce la plataforma pero desea ver resueltas todas esas preguntas que siempre se ha hecho y no ha tenido tiempo a investigar, este tambin es su libro, puesto que, Josu se ha metido hasta el ltimo de los recovecos de los que extraer informacin til a los desarrolladores. Escribir un libro es una tarea ardua, el primero como en este caso, si cabe an ms compleja todava. Pero Josu, sin duda, ha conseguido superar todos los problemas con sobresalientes resultado. Gracias Josu por tenerte como compaero profesional y gracias Josu por esta gran obra que ha visto la luz.

Unai Zorrilla Castro, Microsoft MVP

xiii

CAPTULO

1

Conociendo Windows Phone

1.- INTRODUCCINEl 15 de Febrero de 2010, durante el Mobile World Congress celebrado en Barcelona, Microsoft present al mundo su nuevo sistema operativo para smartphones: Windows Phone 7. Su desarrollo comenz en 2008 tras la reorganizacin del equipo de Windows Mobile y la cancelacin del proyecto Photon, la versin del sistema en la que Microsoft trabajaba desde 2004 con pocos resultados. Originalmente se plante su salida al mercado en 2009, pero una serie de retrasos obligaron a preparar una versin de transicin de Windows Mobile (WM 6.5) y retrasar el lanzamiento de Windows Phone 7 hasta Octubre de 2010 en Europa, Noviembre de 2010 en USA y 2011 para Asia. Una de sus ms aclamadas novedades es la interface de usuario, denominada Metro, basada en unos simples pero efectivos mosaicos dinmicos que muestran informacin til al usuario. Tambin se estrena un nuevo concepto llamado HUB, un lugar donde centralizar acciones y agrupar aplicaciones por la actividad a la que se destinan As, podemos encontrar el HUB de Imgenes, Zune, Office o Xbox Live, cada uno de los cuales nos dar acceso a tareas especficas como msica, documentos o juegos. Un ao despus de su presentacin, de nuevo en el marco del Mobile World Congress, Windows Phone 7, con apenas unos meses de vida, presenta importantes novedades. A su primera actualizacin en Marzo de 2011, que incluye mejoras en el rendimiento general as como la inclusin de copiar y pegar, se une una nueva actualizacin, llamada Mango que incluye el motor de Internet Explorer 9, con su soporte para HTML5, Multitarea en aplicaciones de terceros e integracin con Xbox 360 y Kinect. En Mayo de 2011 Microsoft puso a disposicin de los desarrolladores la15

16 Windows Phone 7.5 - Desarrollo de aplicaciones en Silverlight

primera versin beta de las nuevas herramientas de desarrollo de la versin Mango de Windows Phone.

2.- ARQUITECTURA DE WINDOWS PHONEUno de los grandes problemas a los que Microsoft debi hacer frente en la poca de Windows Mobile fue la fragmentacin de hardware y software existente en el ecosistema, aprendiendo de sus errores, en Windows Phone nos encontraremos un modelo de hardware y software claro y conciso que ayudar a evitar la repeticin de esta situacin.

2.1.- Modelo de hardwareHasta la llegada de Windows Phone al mercado podamos encontrar 2 modelos, o planteamientos, distintos a nivel de hardware en los principales competidores del segmento de los smartphones: Modelo iPhone: Frreo control sobre el hardware, siendo Apple la encargada de disear tanto el sistema iOS como el dispositivo donde se ejecuta. Como principal ventaja de este modelo encontramos la adaptacin total del sistema operativo al dispositivo, puesto que ambos han sido concebidos como partes de un todo y podemos estar seguros de ofrecer la misma experiencia de uso para todos los consumidores. Como principales desventajas tenemos el coste de adquisicin, debido normalmente a que adquirimos un dispositivo de gama alta, que no todo el mundo puede o quiere permitirse, y la nula variedad de dispositivos en el mercado, solo existe uno y no tenemos opciones de eleccin. Modelo Windows Mobile / Android: Como fabricantes de software, primero Microsoft con Windows Mobile y ahora Google con Android, desarrollan el sistema operativo que cualquier fabricante puede licenciar e incluir en su dispositivo, sin unos requerimientos mnimos de hardware ni lmites en la personalizacin de la interface de usuario. Su principal ventaja es la cantidad, gracias a este modelo el mercado puede ser inundado con cientos de modelos distintos y el usuario tiene libertad para elegir entre terminales de gama baja, media o alta. Sin embargo este modelo sufre de dos grandes problemas, ms que desventajas. El primero es la abismal diferencia de hardware entre un terminal de gama baja y uno de gama alta, lo que incide directamente en la experiencia de usuario, siendo algunos terminales imposibles de usar o no pudiendo actualizarlos ms all de una cierta versin del sistema. El segundo gran problema es que, como desarrolladores no podemos asegurar la compatibilidad de nuestra aplicacin con todos los modelos existentes y en algunos casos, debemos crear distintas versiones para varios terminales para poder asegurarnos una

Conociendo Windows Phone 17

base de usuarios grande, lo que redunda directamente en los costes de desarrollo y actualizacin de los productos que realizamos. Qu modelo sigue Windows Phone? Ninguno de los dos, o ms bien podramos decir que los dos. En Microsoft ya tenan la experiencia de Windows Mobile y la fragmentacin e inconsistencia del sistema a travs de distintos dispositivos, pero no queran atarse a un solo dispositivo, as encontraron el camino intermedio: Modelo Windows Phone: Como fabricante del sistema, Microsoft requiere que todo telfono que desee ejecutar Windows Phone disponga de unas caractersticas mnimas, para asegurar la consistencia de todos los usuarios del sistema. A partir de estas caractersticas los fabricantes de software son libres de ampliarlas en algunos casos y estn obligados a cumplirlas con exactitud en otros. En este modelo conseguimos aunar las ventajas del modelo iPhone -todos los usuarios obtienen la misma experiencia de uso y los desarrolladores sabemos que nuestra aplicacin funcionar de forma idntica en todos los dispositivos Windows Phone 7.5- y las del modelo Windows Mobile / Android -no estamos encerrados en un solo hardware, existen distintos dispositivos de varios fabricantes, todos con unas caractersticas mnimas comunes pero con suficientes diferencias como para sentir que podemos escoger el terminal que ms se ajuste a nosotros.

Con este modelo en mente, Microsoft creo unas especificaciones mnimas iniciales, llamadas Chassis 1, por las que todo fabricante que desease crear terminales para el nuevo sistema debe guiarse (Figura 1.1).

Figura 1.1.- Especificaciones Chassis 1

18 Windows Phone 7.5 - Desarrollo de aplicaciones en Silverlight

Ya se ha anunciado que en el futuro aparecern las especificaciones Chassis 2 y Chassis 3, que soportarn otros tipos de telfonos y mantendrn una relacin de unidad con el Chassis 1, compartiendo un mnimo denominador comn que permita obtener la misma experiencia de usuario independientemente del dispositivo hardware que utilicemos.

2.2.- Modelo de softwareWindows Phone est basado en Windows CE 6.0 R3, un sistema mucho ms moderno y avanzado que el utilizado en los Windows Mobile 6.X (Windows CE 5.2). Windows CE 6.0 supuso un rediseo total del sistema con respecto a su anterior versin. Por ilustrarlo de una forma simple: Windows CE 5.2 soportaba 32 procesos en su Kernel, mientras que Windows CE 6.0 soporta 32.768. Ahora, la Shell y la plataforma de aplicaciones residen en memoria de usuario mientras que el Kernel, los drivers, el sistema de archivos, networking, el sistema de rendering y grficos y el sistema de actualizaciones residen en el espacio de Kernel. Estamos hablando de un sistema de 32 bits, con lo que solo puede manejar 4Gb de memoria: 2Gb para procesos y 2Gb para el kernel. En la versin R3 de Windows CE 6.0 se aadi soporte para Silverlight Mobile, Internet Explorer Embedded y otras tecnologas. Resulta interesante resaltar que esta versin soporta Flash Lite de forma nativa en el sistema, aunque esta tecnologa no se encuentre disponible en Windows Phone 7.5. Sobre toda la infraestructura provista por Windows CE 6.0 R3 se levanta el modelo de software de Windows Phone 7.5 (Figura 1.2), al igual que con el hardware, Microsoft ha creado un modelo conciso, pensado para facilitar el uso del dispositivo y aportar cohesin a la interface de usuario.

Figura 1.2.- Modelo de software en Windows Phone

Conociendo Windows Phone 19

2.2.1.- Modelo de aplicacinEn Windows Phone las aplicaciones se despliegan en forma de paquete XAP. Bsicamente se trata de un archivo comprimido dentro del cual podemos encontrar los ensamblados y recursos originales de nuestra aplicacin. La nica forma de instalar una aplicacin en Windows Phone es mediante la tienda oficial de Microsoft, el Marketplace, en la cual debemos registrarnos como desarrolladores para poder vender nuestras aplicaciones. Para garantizar la seguridad del sistema y evitar la piratera, el malware o virus, a cada aplicacin se le asigna un ID nico y un certificado de seguridad emitido cuando nuestra aplicacin es aprobada en el Marketplace de Windows Phone. Este certificado puede instalarse en modo demo, por lo que solo con comprobar el modo de este certificado desde nuestra aplicacin podremos saber si nos encontramos en modo de prueba o modo completo y restringir o cambiar la forma en que nuestra aplicacin se comporta, evitando el desarrollo de versiones lite como en otras plataformas.

2.2.2.- Modelo de UIEl modelo de interfaz de usuario de Windows Phone se compone de elementos, pginas y sesiones. Un elemento es todo control que se muestra al usuario, una pgina es una agrupacin lgica de elementos y una sesin es el conjunto de interacciones que realiza un usuario sobre nuestra aplicacin e incluso puede involucrar a otras aplicaciones. Por ejemplo, podemos realizar una aplicacin que necesite del usuario una foto, tenemos un botn (elemento) en nuestra pgina que muestra el HUB de imgenes y una vez que el usuario ha seleccionado una, vuelve a nuestra aplicacin y se muestra la imagen escogida. Este conjunto de acciones se engloba dentro de una sesin.

2.2.3.- Integracin con la nubeWindows Phone nace con una clara integracin con la nube. Por defecto tenemos integracin con servicios como Exchange, Google Mail, Hotmail, Xbox Live, Skydrive, Facebook, Twitter o Bing. En la versin actual del kit de desarrollo no existen APIs que permitan a nuestras aplicaciones acceder a estos servicios directamente, pero se espera que aparezcan en prximas actualizaciones. Recientemente Microsoft ha liberado el Windows Phone Cloud Services SDK, un kit de desarrollo que dotar de servicios en la nube exclusivos para Windows Phone 7.5, como reconocimiento OCR, Voz a texto y una serie de APIs para intercomunicar dispositivos sin necesidad de tener una IP fija en ellos.

2.2.4.- Runtime de aplicacionesHasta ahora hemos tenido una visin general de los modelos de hardware y software en los que se basa Windows Phone, en esta seccin examinaremos la parte que ms nos involucra: el Application Runtime, dnde y cmo se ejecutarn nuestras

20 Windows Phone 7.5 - Desarrollo de aplicaciones en Silverlight

aplicaciones, las limitaciones que encontraremos y los frameworks que tenemos a nuestro alcance para desarrollar. A continuacin podemos ver un esquema de cmo est estructurado el Application Runtime de Windows Phone (Figura 1.3)

Figura 1.3.- Esquema del runtime de aplicaciones de Windows Phone

En Windows Phone podemos encontrar dos frameworks claramente diferenciados: Silverlight para Windows Phone y XNA para Windows Phone. Silverlight for Windows Phone es un framework basado en Silverlight que nos permitir crear aplicaciones multimedia ricas que se ejecuten de forma nativa en Windows Phone, con una interface creada en XAML. XNA for Windows Phone a su vez se basa en XNA para Windows, se trata de una solucin Multiscreen (Xbox, Windows, Windows Phone) 2D y 3D para crear juegos con calidad profesional en nuestro dispositivo.

Estos frameworks se ejecutan sobre un sandbox de .NET que les facilita el acceso al hardware, sensores, almacenamiento, localizacin, etc Esto quiere decir que nuestras aplicaciones nunca tendrn acceso nativo al sistema y siempre se ejecutarn aisladas del sistema y entre ellas mismas, no pudiendo compartir espacio de almacenamiento ni ningn otro tipo de informacin a no ser que usemos servicios externos en la nube para ello. Con la nueva versin de las herramientas de desarrollo para Mango (Windows Phone 7.5) se abre la posibilidad de tener aplicaciones mixtas, que usen Silverlight para la interface de usuario y XNA para grficos 3D, creando una experiencia de usuario ms rica y completa.

Conociendo Windows Phone 21

3.- PREPARANDO NUESTRO ENTORNOUna vez que hemos conocido un poco la arquitectura de hardware y software general que podemos encontrar en Windows Phone es hora de comenzar a preparar nuestro entorno de desarrollo. Para ello vamos a dar un repaso a las herramientas que Microsoft pone a nuestra disposicin de forma gratuita para poder crear aplicaciones para la plataforma.

3.1.- Descargando el SDKPara comenzar a desarrollar aplicaciones en Windows Phone necesitaremos descargar desde la web de Microsoft el Kit de Desarrollo de Software (SDK por sus siglas en ingles Software Development Kit) que incluye todas las herramientas que podemos necesitar para crear una aplicacin para Windows Phone: Microsoft Visual Studio 2010 para Windows Phone Microsoft Expression Blend para Windows Phone Emulador de Windows Phone Application Deployment Windows Phone Developer Registration Windows Phone Marketplace Test Tool

Podemos descargar el SDK de desarrollo de Windows Phone 7.5 desde la siguiente URL: http://create.msdn.com/en-us/home/getting_started donde podremos encontrar, adems de las herramientas, las ltimas actualizaciones del SDK e instrucciones sobre su instalacin (Figura 1.4).

Figura 1.4.- Pgina de descarga del SDK de Windows Phone

Tenemos que descargar la versin final de las herramientas para Windows Phone Mango. Pero Windows Phone Mango no es la versin 7.5? Exactamente, el nombre de producto es Windows Phone 7.5, pero la versin del Sistema Operativo y, por ende,

22 Windows Phone 7.5 - Desarrollo de aplicaciones en Silverlight

la versin del kit de desarrollo es la versin 7.1. En este libro nos referiremos siempre a Windows Phone 7.5, por ser el nombre oficial que Microsoft le ha dado al producto. Una vez que hayamos descargado las herramientas, el proceso de instalacin es muy sencillo, aunque puede llevar un tiempo considerable en funcin de la calidad de nuestra conexin a Internet, el instalador se compone solo de un lanzador que ocupa algo menos de 1Mb y descarga todos los componentes que necesite durante la instalacin, necesitando en total alrededor de 230Mb (Figura 1.5):

Figura 1.5.- El propio instalador se descargar el software necesario

Nota: Debemos desinstalar cualquier versin anterior antes de comenzar la instalacin de la versin final de las herramientas. Con esta versin podremos trabajar en proyectos para Windows Phone 7.0 y 7.5 as que no debemos conservar la versin 7.0 de las herramientas.

3.2.- Microsoft Visual Studio 2010 para Windows PhoneUna vez instalado el SDK de Windows Phone tendremos a nuestra disposicin todo el software necesario para desarrollar aplicaciones comerciales para este sistema operativo.

Conociendo Windows Phone 23

Una de las principales herramientas que usaremos en el proceso de crear nuestra aplicacin ser Visual Studio el entorno de desarrollo profesional de Microsoft, en su versin 2010 para Windows Phone, una versin totalmente gratuita y funcional (figura 1.6):

Figura 1.6.- Inicio de Visual Studio 2010 para Windows Phone

Desde esta ventana principal podremos crear un nuevo proyecto de Silverlight para Windows Phone 7.5 o XNA 4.0 para Windows Phone 7.5, ambos usando como lenguaje C# (figura 1.7), pulsando sobre el link New Project o en el men File > New > Project.

Figura 1.7.- Pantalla de seleccin de nuevo proyecto

24 Windows Phone 7.5 - Desarrollo de aplicaciones en Silverlight

Ya que este libro est dedicado a Silverlight, nos centraremos en los diferentes proyectos que podemos crear con esta tecnologa, dejando al lector que investigue los proyectos de XNA si as lo desea. Disponemos de 9 tipos de proyectos diferentes en Silverlight para Windows Phone: Windows Phone Application Windows Phone Databound Application Windows Phone Class Library Windows Phone Panorama Application Windows Phone Pivot Application Windows Phone 3D Graphics Application * Windows Phone Audio Playback Agent * Windows Phone Audio Streaming Agent * Windows Phone Task Scheduler Agent *

Nota: Los proyectos marcados con * solo son compatibles con dispositivos que ejecuten Windows Phone 7.5

3.2.1.- Windows Phone ApplicationLa plantilla base para toda aplicacin Silverlight para Windows Phone, incluye una pgina por defecto con los estilos de Windows Phone, archivos de imagen para la pantalla de inicio e iconos que podemos sustituir por los nuestros si lo deseamos y todo listo para ejecutar con solo pulsar F5. Antes de ejecutar, debemos cerciorarnos de tener conectado nuestro telfono de desarrollo y Zune o WPConnect iniciados, o seleccionar que se ejecute el emulador de Windows phone en el combo que tenemos disponible a tal efecto.

3.2.2.- Windows Phone Databound ApplicationEsta plantilla es exactamente igual a la plantilla base explicada anteriormente, con el aadido de que en la pgina creada tenemos un listbox con una plantilla de datos simple, una carpeta SampleData con datos de ejemplo y una carpeta viewmodels con clases MVVM listas para ser usadas. Nos puede ser muy til para ver cmo funciona el

Conociendo Windows Phone 25

enlace a datos en Windows Phone 7.5 y como usar el patrn de diseo MVVM para crear aplicaciones.

3.2.3.- Windows Phone Class LibrarySi hemos trabajado anteriormente con .NET este proyecto es bastante sencillo, se trata de un proyecto para generar una librera de clases que podamos consumir desde una aplicacin Windows Phone. Tenemos que recordar que, por norma general, no podemos crear una librera de clases para WPF o Silverlight y aadirla a una aplicacin Windows Phone 7.5, por lo que tendremos que usar este tipo de proyecto para crear una librera especfica para nuestra aplicacin mvil. En posteriores captulos abordaremos la problemtica de compartir cdigo entre aplicaciones web, mviles y de escritorio gracias a una caracterstica de Visual Studio 2010 llamada multi targeting, pero por ahora basta con decir que no podemos compartir una librera de clases entre distintas plataformas.

3.2.4.- Windows Phone Panorama ApplicationSe trata de un proyecto Windows Phone Application estndar, pero se ha sustituido el contenido por defecto por un control panorama, el cual nos permite tener elementos que ocupen ms que el ancho de la pantalla y poder movernos por ellos simplemente desplazndonos de derecha a izquierda, en una rueda sin fin, podemos ver ejemplos de este control en los Hubs de Windows Phone 7.5, como por ejemplo el de Marketplace (Figura 1.8).

Figura 1.8.- Panorama de la aplicacin marketplace de Windows Phone

26 Windows Phone 7.5 - Desarrollo de aplicaciones en Silverlight

3.2.5.- Windows Phone Pivot ApplicationIgual que el proyecto Panorama Application, pero en este caso sustituyendo el contenido por defecto por un control Pivot, este control se comporta de forma parecida a un control de pestaas, tenemos secciones que ocupan la pantalla y podemos navegar por ellas, pulsando sobre el ttulo superior o simplemente desplazndonos con gestos de derecha a izquierda o viceversa. Podemos ver un ejemplo de este control en la configuracin de Windows Phone 7.5 y en otras aplicaciones que usan tabulacin para mostrar distintos datos (Figura 1.9).

Figura 1.9.- Ejemplo de aplicacin Pivot

3.2.6.- Windows Phone 3D Graphics ApplicationEste tipo de proyecto exclusivo de Windows Phone 7.5 nos permite compartir en una misma aplicacin, un interface de usuario creado totalmente en Silverlight con grficos 3D de alta calidad generados usando XNA y totalmente interactivos. De esta forma tenemos lo mejor de cada mundo, la sencillez y rapidez a la hora de generar aplicaciones de Silverlight y toda la potencia de la GPU a la hora de crear contenidos 3D y grficos interactivos, as como animaciones complejas.

3.2.7.- Windows Phone Audio Playback AgentUna de las grandes novedades de Mango, es el poder desarrollar aplicaciones que se ejecuten en segundo plano, los llamados agentes. Entre ellos tenemos este proyecto en

Conociendo Windows Phone 27

concreto que nos permite reproducir msica que se encuentre en el telfono en segundo plano sin necesidad de tener una interface de usuario abierta y visible.

3.2.8.- Windows Phone Audio Streaming AgentEste proyecto es igual al anterior, salvo en que con el Streaming Agent podremos reproducir msica por medio de Streaming sin necesidad de que esta se encuentre directamente en el telfono.

3.2.9.- Windows Phone Task Scheduler AgentEste tipo de proyecto nos permite ejecutar tareas de propsito general en el telfono en segundo plano sin necesidad de una interface de usuario. Podemos as crear tareas que se encarguen de recoger datos GPS y enviarlos a un servidor para seguir una ruta o hacer cualquier tipo de procesamiento ms pesado o recurrente.

3.3.- Microsoft Expression Blend 4 para Windows PhoneEn combinacin con Visual Studio 2010, tendremos a nuestra disposicin otra fantstica herramienta para crear aplicaciones Windows Phone, se trata de Expression Blend 4, pensada por y para diseadores, nos otorgar un control sin precedentes sobre el aspecto de nuestra aplicacin y facilitar muchsimo el diseo de nuestra UI, permitindonos a golpe de ratn definir animaciones, transiciones, personalizar plantillas de control, estilos o plantillas de datos, incluso realizar el enlace a nuestros datos de forma visual. En caso de que tengamos instalada otra versin de Expression Blend 4 en nuestro sistema antes de instalar las herramientas de Windows Phone, o si deseamos instalarla despus de tener las herramientas en nuestro sistema, no tendremos ningn problema, simplemente se aadirn las plantillas de Windows phone a la nueva versin y podremos trabajar de forma homognea en otros proyectos. Tenemos que recordar que no se trata de una versin recortada o de pruebas, es Expression Blend 4 al completo, simplemente se limita el que solo tendremos acceso a las plantillas necesarias para Windows Phone (Figura 1.10):

28 Windows Phone 7.5 - Desarrollo de aplicaciones en Silverlight

Figura 1.10.- Seleccin de proyecto en Expression Blend 4

Los proyectos a los que tenemos acceso son los mismos que en Visual Studio 2010, no solo se llaman de la misma forma, Visual Studio 2010 y Expression Blend 4 comparten el mismo formato de proyecto, por lo que podremos crear un proyecto en Visual Studio 2010 y abrirlo con Expression Blend 4 y viceversa, trabajando en ambos entornos sobre el mismo proyecto sin ningn problema. De hecho, al tener los dos instalados en el mismo sistema, se detectarn mutuamente, desde Expression Blend al hacer clic derecho sobre un archivo XAML, CS o VB tendremos una opcin en el men contextual Edit in Visual Studio (Editar en Visual Studio) que automticamente nos abrir el proyecto en Visual Studio listo para editar el archivo seleccionado, una vez hechos cambios, solo con guardar y volver a Expression Blend los cambios se cargarn automticamente. De la misma forma, si seleccionamos un archivo XAML en Visual Studio tendremos la opcin en el men contextual Open in Expression Blend (Abrir en Expression Blend) que se comportar igual, podremos realizar cambios y al volver a Visual Studio este los detectar y los tendremos disponibles.

Nota: Para poder invocar a Visual Studio desde Blend y viceversa, debemos ejecutar las aplicaciones con permisos elevados (Run as Administrator / Ejecutar como Administrador), de lo contrario recibiremos un error indicndonos que necesitamos elevar los permisos.

Conociendo Windows Phone 29

Esta integracin de Visual Studio y Expression Blend nos ayudar a realizar aplicaciones visualmente impactantes de una forma natural y simple, integrando lo mejor de una herramienta dedicada al desarrollo (Visual Studio) con otra dedicada al diseo (Expression Blend).

3.4.- Emulador de Windows PhoneJunto con Visual Studio 2010 y Expression Blend 4 el kit de desarrollo de Windows Phone tambin incluye un emulador totalmente funcional del sistema, que nos permitir probar nuestras aplicaciones en condiciones parecidas a las que podemos encontrar en un dispositivo real (Figura 1.11).

Figura 1.11.- Emulador de Windows Phone

Podremos lanzar el emulador desde Inicio > Programas > Windows Phone Developer Tools > Emulador de Windows Phone.

30 Windows Phone 7.5 - Desarrollo de aplicaciones en Silverlight

Tambin podemos indicarle a Visual Studio que deseamos usar el emulador para ejecutar nuestra aplicacin, desde el combo de target de Silverlight que encontraremos en la barra standard de herramientas (Figura 1.12):

Figura 1.12.- Seleccin del destino de ejecucin

Aunque nunca reemplazar a pruebas en un dispositivo real, el emulador de Windows Phone nos va a permitir de forma sencilla probar incluso aplicaciones que dependan de la localizacin o que usen los sensores, como el acelermetro del telfono. En la barra de botones del emulador, el ltimo de ellos (>>) (Figura 1.13) nos permite acceder a la pantalla de herramientas adicionales:

Figura 1.13.- Acceso a las herramientas adicionales del emulador.

En estas herramientas tendremos acceso a un simulador de GPS que nos permitir crear rutas y puntos que se enviarn a nuestro emulador como datos GPS reales para que nuestra aplicacin pueda usarlos (Figura 1.14):

Conociendo Windows Phone 31

Figura 1.14.- Emulador de GPS enviando posiciones a nuestra aplicacin

Tambin tenemos una herramienta que nos permitir emular el comportamiento del acelermetro en nuestra aplicacin, con un modelo 3D del telfono que podremos girar como deseemos (Figura 1.15):

Figura 1.15.- Envo de datos de acelermetro a nuestro emulador

32 Windows Phone 7.5 - Desarrollo de aplicaciones en Silverlight

El emulador de Windows Phone nos permite usar combinaciones de teclas para acceder a funcionalidad del telfono, a continuacin podemos ver una tabla con todas ellas (Tabla 1.1):Tabla 1.1.- Teclas de acceso rpido del emulador

Tecla Retroceder Pgina (Page Up) Avanzar Pgina (Page Down) F1 F2 F3 F6 F7 F9 F10

Accin Habilita el teclado en el emulador Deshabilita el teclado en el emulador Botn fsico Atrs Botn fsico Inicio Botn fsico Bsqueda Botn cmara Media pulsacin Botn cmara pulsacin completa Botn Subir volumen Botn Bajar volumen

Ms adelante cuando estemos trabajando con funcionalidad de fotos o audio nos ser muy til conocer estas teclas de acceso rpido.

3.5.- Application Deployment ToolEsta herramienta, que podemos encontrar en el SDK de Windows Phone, nos permitir desplegar aplicaciones en formato XAP al emulador o a un dispositivo desbloqueado para desarrollo, de esta forma podremos probar las aplicaciones fuera de Visual Studio (Figura 1.16):

Figura 1.16.- Herramienta de despliegue de aplicaciones.

Conociendo Windows Phone 33

Si disponemos del proyecto original de la aplicacin podremos hacer esto mismo desde Visual Studio, haciendo clic derecho sobre el proyecto y seleccionando la opcin Deploy (Desplegar), esta accin instalar la aplicacin en el dispositivo seleccionado en la barra de herramientas (El emulador o un dispositivo fsico).

3.6.- Developer Registration ToolEsta herramienta nos permitir registrar un dispositivo fsico Windows Phone con nuestra cuenta de desarrolladores de Marketplace, con lo que este dispositivo quedar desbloqueado para desarrollo y podremos depurar y desplegar aplicaciones en l (Figura 1.17):

Figura 1.17.- Herramienta de registro de dispositivos.

Para el correcto funcionamiento de la herramienta deberemos tener el dispositivo conectado al PC, sincronizado con Zune y en la pantalla inicial de Windows Phone, si el dispositivo est apagado o con el bloqueo de pantalla fallar. Debemos tener en cuenta que no es necesario que la cuenta de LiveID del dispositivo sea la misma que usamos en el marketplace y que el lmite de dispositivos desbloqueados es de 3 por cada cuenta del marketplace, en caso de necesitar ms,

34 Windows Phone 7.5 - Desarrollo de aplicaciones en Silverlight

podemos ponernos en contacto con Microsoft directamente, donde estudiarn nuestro caso particular y pueden acceder a habilitar ms dispositivos en nuestra cuenta.

3.7.- Marketplace Test ToolCon la versin final de las herramientas de desarrollo para Windows Phone 7.5 Microsoft ha incluido una herramienta muy til, un kit de pruebas, automticas y manuales, que emulan las pruebas que realiza el Marketplace cuando enviamos una aplicacin para aceptacin (Figura 1.18):

Figura 1.18.- Marketplace Test Tool.

Esta herramienta de pruebas est totalmente integrada en Visual Studio 2010, solo tendremos que presionar con el botn derecho sobre el nombre del proyecto y escoger la opcin Open Marketplace Test Kit.

Conociendo Windows Phone 35

En la pantalla que se muestra arriba, la que aparece al seleccionar el Marketplace Test Kit, tenemos 4 pestaas: Application Details nos permitir cargar en el kit de pruebas la iconografa y capturas de aplicacin que vamos a enviar al Marketplace. Automated Test ejecutar una serie de pruebas automticas sobre nuestra aplicacin y su iconografa para comprobar que todo es correcto. Para esta y las siguientes opciones es muy importante que compilemos nuestra aplicacin en modo Release. Monitored Test iniciar nuestra aplicacin, deberemos hacer pruebas de uso que sern monitorizadas y podremos ver los resultados de las pruebas sobre conceptos de aceptacin como tiempo de arranque, consumo de memoria, uso del botn atrs, etc Manual Test se compone de 50 pruebas que deberemos ejecutar manualmente en nuestra aplicacin, se trata de algo as como una lista de comprobacin, donde manualmente deberemos probar cada situacin y marcar en el test si se ha pasado o ha fallado.

Con todas estas pruebas podremos enviar al Marketplace una aplicacin con mucha ms seguridad de que todo est en orden y que nuestra aplicacin superar las pruebas del mismo de forma satisfactoria.

4.- SILVERLIGHT PARA WINDOWS PHONECon las herramientas de Desarrollo para Windows Phone 7.5 una de las actualizaciones ms importantes que recibiremos ser el paso de Silverlight desde la versin 3 a la versin 4, teniendo mucha ms potencia. Entre otras, estas son las ventajas que nos aportar Silverlight 4 en Windows Phone: Soporte mejorado para el patrn MVVM (Model View ViewModel) o Ahora los botones y los hipervnculos ya soportan enlace a comandos

Estilos de controles globales usando TargetType Nuevos controles o o RichTextBox para mostrar texto enriquecido ViewBox para poder redimensionar contenido

XAML mejorado, mayor compatibilidad con XAML escrito originalmente para WPF

36 Windows Phone 7.5 - Desarrollo de aplicaciones en Silverlight

Enlace a datos permite enlace a instancias de DependencyObjects StringFormat en las opciones de enlace a datos.

Hay muchas ms novedades y ventajas en esta nueva versin de Silverlight para Windows phone, para verlas todas, puedes visitar el siguiente link de MSDN:http://msdn.microsoft.com/en-us/library/hh237342(v=VS.96).aspx

5.- CONCLUSINDe esta forma hemos terminado el primer captulo de Programar en Silverlight para Windows phone. Despus de haber ledo este captulo deberamos tener el conocimiento terico necesario para comenzar a desarrollar aplicaciones para Windows Phone 7.5, sabiendo los pormenores de la plataforma, su modelo de desarrollo de aplicaciones, las ventajas de desarrollo y sus limitaciones. En el siguiente captulo profundizaremos en la creacin de interfaces de usuario efectivas con Silverlight, posicionamiento de controles, interfaces de usuario que fluyan, estilos, plantillas y reutilizacin de recursos.

Te interesa este libro?Cmpralo en nuestra tienda: www.campusmvp.com

-

En papel o en formato electrnico Sin DRM Imprimible Busca en el contenido

Especialistas en formacin online y libros de tecnologas Microsoft.

Sguenos y descubrirs los mejores trucos y recursos: