Desarrollo De Aplicacion De Silverlight De Principio A Fin


Published on

Desarrollo De Aplicacion De Silverlight De Principio A Fin

Published in: Technology
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Windows Phone 7 application development starts with Silverlight 3 All of the UI stack, the Base Class Library and the network capabilities are available. [Animate] The majority of the porting effort focused on performance, making Silverlight applications run smooth on the phone. Application development is easy, but you need to know some specific information on tuning your application specifically for the phone. This is specific information is not covered in this presentation, but is the topic of a separate presentation. [Animate] On Windows Phone 7 there is hardware integration: Access is provided through APIs to the Accelerometer Access is provided through APIs to the GPS chip Hardware decoders are used for video [Animate] On Windows Phone 7 Silverlight had to be integrated with the underlying operation system (Windows CE 7) Allow your application as a pin tile on the start page of the phone Allow your application to make use of the software keyboard Take advantage of a loosened sandbox (no cross domain restrictions for network requests, meaning a twitter client will run) [Animate] You can also easily integrate with existing applications on the phone (for instance with the media hub) Your application can: Invoke the phone dialer Invoke sms Invoke the camera
  • XAML-> Extensible application markup lanague, xml, declartivo, se mapea al código en dos sentidos XAML = eXtensible Application Markup Language Es un lenguaje declarativo basado en XML , optimizado para describir gráficamente interfaces de usuarios visuales ricas desde el punto de vista gráfico. Es interpretado por el Runtime del Silverlight. Los elementos de XAML se interconectan con objetos .NET. Los atributos se conectan con propiedades o eventos de esos objetos. Uso especial de las Propiedades enlazadas ( Attached Properties ): La propiedad Top sólo tiene sentido dentro de un Canvas. Cuando añadimos un elemento, como por ejemplo un rectángulo, a éste se le añaden propiedades específicas de su entorno.
  • Diferencias sl y sl para wp7: © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
  • Animation Basics Time-based Support linear, discrete and spline animation Animatable property types: Double, Color, Point Animatio and graphics can be defined using XAML or code BRUSHES: Solid, Gradient, Image, Media Soporte de fuentes TrueType y Adobe Blend 2.0 SP1 soporta también las fuentes. Capacidad de embeber las fuentes en recursos de aplicación. Pintado con anti-aliasing y manipulación de pixeles.
  • DEMO: Plantilla de blend para windows phone Abrimos Blend con diseño «vacio»-> main.xaml por hacer Enseñamos xaml<->diseño Añadimos textbox titulo, gradiente en las fuentes Brush-> videobrush, etc..? Añadimos elementos de menu Añadimos imagen de background Estados visuales -> dispara una transicion animada, transformamos los elementos-> desplazamiento en x en este caso, y cambiar visibilidad de los elementos Ejecutamos con F5 Cambiamos el SIP en textbox de submit?=
  • Estilos: Apply consistent formatting Per-page or per-application Plantillas de controles por defecto: - Simple and elegant Over-sized hit targets Use of transparency TEMAS: Enables user to personalize their phone Dark and light themes, each with several accent colours (red, green, yellow, blue) Built-in controls are automatically themed
  • Enseñamos estilos y plantillas de controles por defecto en lista de recursos y en XAMl en app.xaml Enseñamos el control Submit.xaml-> se compone de dos ventanas, y una pasa a otra, estados visuales, etc… Enseñamos que los textos y botones tienen una plantilla por defecto aplicada-> transparencia, colores, etc… Editamos el control template del botón por ejemplo Enseñamos el control moodselector -> a su vez está dentro de submit.xaml Enseñamos el control selection, que permite mostrar la información de una queja Añadimos control submit y selection, añadimos info estados visuales Transición 3D de un estado visual a otro DEMO: MIX Boton-> zoom in un boton por defecto No round corners Hit target es más grande que el rectangulo-> boton todo ese area Transparencia-> se ve la imagen de detrás (outloud) Application resources-> ahora está en project tempaltes-> pero en runtime se cargarán del SO -> PARA QUE EL USUARIO lo pueda personalizar Comentamos los application resources, color resources Vamos a settings en lista de apliaciones, themes-> green-> cambio de tema Para hacer apps theme aware-> en pagina = foreground linkado a phonecolorforegroundbrush
  • No soporta json? Enlace a datos: Based on change notification
  • - Enseñamos el servicio de Outloud en la nube -Añadimos listbox y aplicamos datos Cambiamos la plantilla del listboxitem Añadimos información de estados visuales y transiciones 3D Añadimos selecteditem de listbox para selection Abrimos visual studio 2010 - Añadimos code snippets para cargar datos de la nube, enseñamos dataservice client
  • Media support H/W decode MediaStreamSource PlayReady DRM XNA framework sound effect API Supports polyphonic, looping wav data MediaElement Limitations One MediaElement only No VideoBrush Mic input Gives access to raw PCM WAV data Calls BufferReady event at regular intervals Call the GetData method from the BufferReady event or as often as your app requires 10ms latency The following media features are not supported in Silverlight for Windows Phone: VideoBrush Client-side and server-side playlists Streaming from a server that is running Windows Media Server Input for Windows Phone Controls that are supported on Windows Phone are gesture-aware, and support gestures such as tap, pan, and flick. You can handle simple gestures such as tap, double-tap, and tap-and-hold by using mouse events. Use MouseLeftButtonUp for tap gestures. To handle double-tap, check whether two mouse up and down events occur within a TimeSpan . If the MouseMove event does not occur between the first up and second down event, a double-tap occurred. To handle tap-and-hold, start a TimeSpan timer when the MouseLeftButtonDown event occurs, and store the user's touch location. In the MouseMove event, check whether the user has moved the touch location more than a few pixels. If the location has moved, cancel the timer. If the MouseLeftButtonUp event occurs before the timer expires, you also cancel the timer. If the timer expires before it is cancelled, a hold event occurred. You can also use manipulation events to respond to touch input. Manipulation events support multitouch input and can be used to move and scale objects derived from UIElement . For additional information, see How to: Handle Manipulation Events . Silverlight Media for Windows Phone This topic describes differences in support for media Silverlight for Windows and Silverlight for Windows Phone. Silverlight media support on Windows Phone is based on the native media stack used on Windows Phone 7 Series. Supported frame rates might be lower than those available on desktop computers. The following media features are not supported in Silverlight for Windows Phone: VideoBrush Client-side and server-side playlists Streaming from a server that is running Windows Media Server PlayReady Digital Rights Management (DRM) features in Silverlight 3 are supported. Silverlight 4 DRM features are not supported. For additional information, see Digital Rights Management (Silverlight 3) . For additional information about media in Silverlight, see Audio and Video and Supported Codecs on Windows Phone . MediaElement Support MediaElement renders video at the original encoded resolution of the video, but you can override that by explicitly setting the Height , Width , and Stretch properties. Full screen mode is not supported on Windows Phone, but you can use the full screen to display video by setting the height and width of the MediaElement to the size of the application. If you attempt to play an unsupported format on a device, a MediaFailed event occurs. Note: Media files with incorrect extensions do not play back. The extension must match the encoded source. Because MediaElement is rendered entirely in hardware, it does not appear in WriteableBitmap captures. The following features of MediaElement are not supported in Silverlight for Windows Phone: Built-in UI for VCR Controls (play, pause, stop, seek) Multiple MediaElement controls The following members are not supported: Attributes AttributesProperty MarkerReached Markers RenderedFramesPerSecond SetSource(Stream) Setting a value is not supported on the following properties: CanPause CanSeek The following properties always return 1: AudioStreamCount Balance The AudioStreamIndex property always returns 0. Performance Considerations Do not use media with effects. For MediaElement , ensure that CacheMode is set to BitmapCache to enable the graphics processing unit (GPU). See Also Other Resources Silverlight for Windows Phone VIDEO: Windows Phone provides a robust media platform that allows application developers to stream video and audio, control the FM tuner, and access the device's media hub. The media platform is divided between a managed code and native code layer. Applications in the managed code layer are able to access content from the local device or from a cloud server, while the audio/video pipeline and PlayReady content protection system decode, decrypt, and render the content in the native code layer using hardware acceleration. This differs from the Silverlight desktop media platform, where all functionality is in the managed code layer. The benefits of keeping this functionality in the native code layer are: Audio/Video decoding is hardware-accelerated, providing support for native codecs and containers. For more information about all supported codecs, see Supported Media Codecs for Windows Phone . Native streaming and local playback is more efficient. Content protection is provided by the platform. Rich system services such as managing audio/video graphs and managing audio events are handled by the platform, and require no additional programming. Streaming Audio and Video An application can stream media using the MediaElement class. However, if an application is unable to use the MediaElement class and wants to provide a full-screen media experience, it can use the MediaPlayerLauncher class to use the system's default media player. For more information about specific MediaElement support for Windows Phone, see Media on Windows Phone . For more information about the Silverlight MediaElement class, see the Silverlight Audio and Media Overview . Windows Media Digital Rights Management (WMDRM) and PlayReady content enable content protection. Unlike the Silverlight desktop, offline playback of Digital Rights Management (DRM)-protected content is supported in Windows Phone. For more information about DRM in Silverlight, see the Silverlight Audio and Media Overview . Reference documentation is not available for this feature for the CTP Refresh release. Sound Effects Windows Phone includes XNA Game Studio functionality for adding sound effects to an application. For helpful information and tutorials about using XNA Game Studio for sound effects, see Making Sounds with XNA Game Studio and Audio Overview . Media Hub Windows Phone enables applications to integrate closely with the media hub. An application can display historical information to a user such as 'currently playing' information for an audio track. Reference documentation is not available for this feature for the CTP Refresh release. FM Tuner Windows Phone enables applications to control the device's FM radio. An application can tune the radio to a certain frequency in MHz and set the region. Reference documentation is not available for this feature for the CTP Refresh release. Windows Phone Marketplace Launcher Windows Phone enables applications to launch the Windows Phone Marketplace for media. For example, if a music application allows its customers to download songs, it would want to launch the Windows Phone Marketplace to facilitate a purchase.
  • Añadimos un media element a mainpage.xaml Hacemos que se inicie al principio? Con un storyboard, que haga girar el video y lo difumine-< ponga el mute tras un tiempo Video local!: Videowp7.WMV-> Build = content , path = «videowp7.wmv» sin «/»
  • GATO DANDO VUELTAS! Cambiamos la imagen estática por un web browser control que navegue a la localización donde estamos Añadir, y lo apuntamos a" style="border-width:0px;height:15px;width:15px;"><
  • When you use a TextBox control in an application for Windows Phone, you can specify the input scope, which determines the keyboard layout for the software input panel (SIP). This provides the user with easy access to the expected input characters based on the application context. The following table shows some of the common SIP layouts and the associated values that you specify in XAML or in application code. For application code, the enumeration values are in InputScopeNameValue . Additional standard input scope values are also supported. For most values, the TextBox control displays the standard SIP layout. Some input scope values, such as Numbers, causes Windows Phone to display the first symbol page of the standard SIP layout. In addition, automatic capitalization is enabled on the SIP for some input scope values, where appropriate. The following examples show how to set the input scope for a TextBox control. Copy <TextBox Text="HelloWorld"> <TextBox.InputScope> <InputScope> <InputScopeName NameValue="Url" /> </InputScope> </TextBox.InputScope> </TextBox> VB C# C++ F# JScript Copy InputScope inputScope = new InputScope(); InputScopeName inputScopeName = new InputScopeName(); inputScopeName.NameValue= InputScopeNameValue.Url; inputScope.Names.Add(inputScopeName); textbox.InputScope = inputScope; Acelerómetro: The accelerometer API is a managed library that is included with Windows Phone Developer Tools CTP Refresh. It is built on top of a more general sensor framework so other sensors that may be supported by Windows Phones in the future will be accessed in a similar way. The accelerometer data is delivered to the application using the AccelerometerReading class. This class exposes properties for the X, Y, and Z axis that are double values between -1 and 1 indicating the direction of acceleration for each axis.
  • The Windows Phone photos experience supports extensibility points for applications. Developers can build custom applications that look and feel like part of the built-in camera and photos experience. The features enable you to: Use common controls to ensure applications that require photo and video functionality can provide the same experience to end users as the built-in photo and camera experience. For example, you can have a control for picking a photo out of the available pictures on the phone. This photo picker control allows applications to use the Windows Phone UI to find the photo, and after user selection, the application finds the binary and metadata for the photo or video. Call into public APIs to let applications perform tasks such as saving a picture to the media library. Extend the out-of-box experience in ways meaningful and consistent with the user without disrupting or cluttering the existing user experience. In This Section Photo Extras Application Extensibility for Windows Phone Decoding and Encoding Photos for Windows Phone
  • Quitaron BingMapsTask de la ctp refresh CameraCaptureTask Allows an application to launch the Camera application. Use this to allow users to take a photo from your application. ChooserListener EmailAddressChooserTask Allows an application to launch the Contacts application. Use this to obtain the email address of a contact selected by the user. EmailComposeTask Allows an application to launch the email application with a new message displayed. Use this to allow users to send email from your application. EmailResult Represents an email address returned from a call to the Show method of a EmailAddressChooserTask object. MarketplaceLauncher Allows an application to launch the Marketplace application. MediaPlayerLauncher Allows an application to launch the media player. PhoneCallTask Allows an application to launch the Phone application. Use this to allow users to make a phone call from your application. PhoneNumberChooserTask Allows an application to launch the Contacts application. Use this to obtain the phone number of a contact selected by the user. PhoneNumberResult Represents a phone number returned from a call to the Show method of a PhoneNumberChooserTask object. PhotoChooserTask Allows an application to launch the Photo Chooser application. Use this to allow users to select a photo. PhotoResult Represents a photo returned from a call to the Show method of a PhotoChooserTask object or a CameraCaptureTask object. SaveEmailAddressTask Allows an application to launch the contacts application. Use this to allow users to save an email address from your application to a new or existing contact. SavePhoneNumberTask Allows an application to launch the contacts application. Use this to allow users to save a phone number from your application to a new or existing contact. SearchTask Allows an application to launch the Web Search application. SmsComposeTask TaskEventArgs<T> WebBrowserTask Allows an application to launch the Web browser application
  • Demo de tasks de zombies
  • Enseñamos la navegacion diferente de la que hemos usado en outloud
  • Usar
  • Outlooud, misma pagina, varios controles!-> usamos el hook a back button para pasar al estado visual correspondiente Protected override void onBackKeyPress(System.ComponentModel.CancelEventArgs) { e.Cancel = true; }
  • Application Bar de Zombies
  • OPCIONAL: Girar controls si cambia la orientación!
  • Enseñamos código servicio: registro, y interceptor de outloud, que manda notificaciones Enseñamos helpernotirication en Data-> un evento cuando llega notificacion En Data-> creamos helper, > helpernotification-> y eventhandler ENSEÑAR ISOLATED STORAGE tambien
  • Balance accuracy with time & power
  • De servicios de localizacion obtenemos de lat, long,-> la dirección civil exacta En los servicios de localizacion tambien se sabe si ha habido localizacion por gps de alguna consulta anterior (wifi, etc..)
  • Enseñar ejemplo que viene en MSDN o añadir en outloud? Network aware apps de TR10
  • Desarrollo De Aplicacion De Silverlight De Principio A Fin

    1. 1. <ul><li>Desarrollo de una aplicación de Silverlight de principio a fin </li></ul>Isabel Gomez Development Advisor por partners [email_address] Microsoft Iberia Eduardo Ortega MVP Movilidad [email_address] Centro de Innovación de Boecillo
    2. 2. <ul><li>Introducción a Silverlight </li></ul><ul><li>Silverlight para Windows Phone </li></ul><ul><li>Uso de Capacidades Propias del Teléfono </li></ul><ul><li>Uso de Servicios en la Nube </li></ul>Agenda
    3. 3. <ul><li>Introducción a Silverlight </li></ul>
    4. 4. What is Silverlight? <ul><ul><li>Plataforma de desarrollo muy potente </li></ul></ul>Experiencias de Usuario Diferenciales
    5. 5. Silverlight “ubicuo”
    6. 6. Colaboración Diseñador-Programador
    7. 7. Colaboración Diseñador-Programador
    8. 8. Herramientas para los diseñadores
    9. 9. Interfaz de Usuario: XAML común <Button Width=&quot;100&quot;> OK <Button.Background> LightBlue </Button.Background> </Button> XAML
    10. 10. Experiencia de Usuario Diferencial Producción Prototipo Arquitectura Base Experiencia de Usuario Visual Studio Expression Blend SketchFlow PSD, AI, Papel Cliente 1: Ideas 2. Recursos 3: Proyecto ALM/Visual Studio Team System Especificaciones, Requisitos Despliegue
    11. 11. <ul><li>Silverlight </li></ul><ul><li>para Windows Phone 7 </li></ul>
    12. 12. Capacidades de Silverlight para WP7 Entrada de Datos <ul><li>Teclado </li></ul><ul><li>Raton </li></ul><ul><li>Touch </li></ul><ul><li>Botones hardware </li></ul>Media <ul><li>Captura y Reproduccion </li></ul><ul><li>Acceso a libreria de Media </li></ul>Datos <ul><li>LINQ to Objects, LINQ to XML </li></ul><ul><li>DataBinding </li></ul><ul><li>IsolatedStorage </li></ul>.NET y WCF <ul><li>Supraconjunto de Silverlight 3 </li></ul><ul><li>WCF: SOAP y REST </li></ul>XAML Interfaz de Usuario <ul><li>Gráficos Vectoriales/Shapes/Brushes </li></ul><ul><li>Animaciones/Transformaciones </li></ul><ul><li>Texto </li></ul><ul><li>Imagenes </li></ul>Acceso al Telefono <ul><li>Acceso al UI del Telefono </li></ul><ul><li>Sensores (acelerómetro) </li></ul><ul><li>Camara, micrófono </li></ul><ul><li>Selector de contactos y fotos </li></ul>Integrado con servicios en Nube <ul><li>Despliegue y actualizacion de Apps </li></ul><ul><li>Notificaciones </li></ul><ul><li>Localización </li></ul><ul><li>Integración con Xbox LIVE </li></ul>
    13. 13. Silverlight para WP7 <ul><ul><li>Optimización de Rendimiento </li></ul></ul><ul><ul><li>Integración con Teléfono </li></ul></ul><ul><ul><li>Integración con hw sensores y media </li></ul></ul><ul><ul><li>Integración modelo de aplicación de OS </li></ul></ul><ul><ul><li>Restricciones relajadas de Sandbox </li></ul></ul>Silverlight 3 más…
    14. 14. <ul><li> aspx </li></ul><ul><li> </li></ul>Silverlight vs Silverlight para Windows Phone
    15. 16. Interfaz de Usuario Gráficos 2D - Vectoriales - Formas estándar y Paths. Importables de Photoshop e Illustrator - Transformaciones: rotar (3D), escalar, desplazar Animaciones - Basadas en tiempo - Lineales, discretas, interpolación - En XAML o por código Texto - Soporte fuentes TrueType y Adobe, embebibles - Anti-aliasing - Especificacion SIP Imágenes - Formatos jpg, gif y png Brochas : Solido, gradiente, Imagen o Video Layout : Grid, StackPanel, Canvas, ScrollViewer, Border
    16. 17. Transforms <ul><ul><li>Controls </li></ul></ul><ul><ul><li>Text </li></ul></ul><ul><ul><li>Media </li></ul></ul><ul><ul><li>Rotate </li></ul></ul><ul><ul><li>Scale </li></ul></ul><ul><ul><li>Skew </li></ul></ul><ul><ul><li>Translate </li></ul></ul><ul><ul><li>Matrix </li></ul></ul><ul><ul><li>Plane </li></ul></ul><ul><ul><li>Matrix </li></ul></ul><ul><ul><li>Apply 3D to a 2D element </li></ul></ul>Alters any element Transforms Projections
    17. 18. <ul><li>DEMO: Interfaz de Usuario </li></ul><ul><li>Gráficos, Animaciones, Transformaciones,… </li></ul>
    18. 19. Temas, Estilos, Controles y Plantillas <ul><li>Estilos </li></ul><ul><li>Permite aplicar formato consistente </li></ul><ul><ul><ul><li><Style TargetType=&quot;TextBlock“ x:Key=“TextoSubtitulo&quot;> </li></ul></ul></ul><ul><ul><ul><li><Setter Property=&quot;FontSize“ Value=&quot;42&quot; /> </li></ul></ul></ul><ul><ul><ul><li><Setter Property=&quot;Foreground“ Value=&quot;Blue&quot; /> </li></ul></ul></ul><ul><ul><ul><li></Style> </li></ul></ul></ul>Controles - Librería de controles (in-ROM): Checkbox, listbox, etc.. - Plantillas por defecto (sencillas, elegantes, uso transparencia) - Se pueden cambiar plantillas - Se pueden hacer controles personalizados Temas - Permiten al usuario personalizar el telefono - Se aplican automáticamente a los controles (in-ROM)
    19. 20. Code Reuse <ul><ul><li>Reuse UI </li></ul></ul><ul><ul><li>User Control </li></ul></ul><ul><ul><li>Custom Control </li></ul></ul><ul><ul><li>Reuse Code </li></ul></ul><ul><ul><li>Across projects </li></ul></ul><ul><ul><li>Across platforms (Web, Windows Phone) </li></ul></ul>
    20. 21. <ul><li>DEMO: Controles, Estilos, Plantillas, etc… </li></ul>
    21. 22. Networking y Datos Networking - Windows Communication Foundation - Add Service Reference o slsvcutil.exe HttpWebRequest y WebClient Cliente Data Service (oData) Datos - LINQ to Objects y LINQ to XML - Isolated Storage Plantillas de Datos (DataTemplate) Enlace a Datos - Propiedades - Lista
    22. 23. <ul><li>DEMO: Networking y Enlace a Datos </li></ul>
    23. 24. Media Audio - Soporte de Micrófono - Efectos de audio (XNA Game Studio) Soporte de Cámara: captura de fotos MediaElement: Streaming de Audio <ul><li>Video: </li></ul><ul><li>Decodif. Hardware </li></ul><ul><li>MediaElement </li></ul><ul><li>PlayReady DRM </li></ul>
    24. 25. Media: Codecs soportados
    25. 26. <ul><li>DEMO: Media </li></ul>
    26. 27. Control Web Browser <ul><li>Muestra contenido local o de Internet </li></ul><ul><li>Soporta “pan,” “double tap” y “pinch” para hacer zoom </li></ul><ul><li>Soporta transformaciones </li></ul><ul><li>La aplicación puede interactuar con javascript </li></ul><ul><ul><li>Deshabilitado por defecto </li></ul></ul>
    27. 28. <ul><li>DEMO: </li></ul><ul><li>Web Browser Control </li></ul>
    28. 29. <ul><li>Capacidades propias del Teléfono </li></ul>
    29. 30. <ul><li>Hace vibrar el teléfono una duración especificada: </li></ul><ul><ul><li>Para dar feedback </li></ul></ul><ul><ul><li>Notificar a usuarios de actualizaciones </li></ul></ul>Vibración VibrateController vc = VibrateController .Default; vc.Start( TimeSpan .FromSeconds(3));
    30. 31. Entrada de Datos
    31. 32. <ul><li>Integración con el “Hub” </li></ul><ul><ul><li>Extender hubs (musica, fotos) </li></ul></ul><ul><li>“ Lanzadores” </li></ul><ul><ul><li>SMS, email, navegadores, mapas, marcador de llamada, búsqueda, etc </li></ul></ul><ul><li>Selectores = “dialogo de ficheros” </li></ul><ul><ul><li>Foto, contacto, camara, etc. </li></ul></ul>Integración con el Sistema Operativo
    32. 33. <ul><li>Apps can insert entries into the history list </li></ul>Hub Integration – Media History
    33. 34. <ul><li>Your app can integrate with the OS image viewer </li></ul><ul><li>One click away from extras menu </li></ul>Hub Integration - Photos
    34. 35. <ul><li>DEMO: </li></ul><ul><li>SMS y Camara </li></ul>
    35. 36. Tareas: Lanzadores & Selectores Lanzadores <ul><li>BingMapTask (no en CT actual) </li></ul><ul><li>MarketplaceLauncher </li></ul><ul><li>MediaPlayerLauncher </li></ul><ul><li>PhoneCallTask </li></ul><ul><li>PhoneNumberChooserTask </li></ul><ul><li>PhotoChooserTask </li></ul><ul><li>SaveEmailAddressTask </li></ul><ul><li>SavePhoneNumberTask </li></ul><ul><li>SearchTask </li></ul><ul><li>SMSComposeTask </li></ul><ul><li>WebBrowserTask </li></ul>Selectores <ul><li>CameraCaptureTask </li></ul><ul><li>EmailAddressChooserTask </li></ul><ul><li>EmailComposeTask </li></ul>
    36. 37. <ul><li>DEMO: Tasks </li></ul>
    37. 38. <ul><li>Application model </li></ul><ul><ul><li>Out of Browser APIs </li></ul></ul><ul><ul><li>Browser & plug-in specific APIs </li></ul></ul><ul><ul><li>HTML Dom Bridge </li></ul></ul><ul><li>Machine information </li></ul><ul><ul><li>GpuInformation </li></ul></ul><ul><ul><li>Analytics </li></ul></ul><ul><li>Custom shaders </li></ul><ul><li>Media markers and attributes </li></ul>Silverlight 3 API Delta
    38. 39. Estructura aplicación Windows Phone UserControl Frame Page 3 Page 1 Page 2 Application Application Frame Page 3 Page 1 Page 2
    39. 40. <ul><li>DEMO: </li></ul><ul><li>Control Panorama de Codeplex </li></ul>
    40. 41. <ul><li>Botón de Atrás..… </li></ul><ul><li>Barra de Aplicación </li></ul><ul><li>Soporte de Orientación </li></ul>Otras
    41. 42. <ul><li>Permite retornar a páginas anteriores </li></ul><ul><li>Entre aplicaciones </li></ul><ul><li>No se usa para comportamiento específico de la aplicación </li></ul>Detalles de botón “Atrás”
    42. 43. <ul><li>DEMO: </li></ul><ul><li>Botón Atrás </li></ul>
    43. 44. <ul><li>La «Application Bar» es un sistema de control que permite rápida y fácilmente añadir una barra de herramientas a nuestra aplicación para Windows Phone </li></ul><ul><li>Además de la barra de iconos, las aplicaciones pueden proporcionar acciones adicionales como la de mostrar uno o mas elementos de menú </li></ul>Application Bar y Context Menu Microsoft.Phone.Shell
    44. 45. <ul><li>DEMO: Application Bar </li></ul>
    45. 46. <ul><li>DEMO: </li></ul><ul><li>Soporte de Orientación </li></ul>
    46. 47. <ul><li>Ciclo de Vida de Aplicación </li></ul>
    47. 48. Un mundo de interrupciones Llamadas Mensaje de texto recuerdo Batería baja Pantalla bloqueo Cambio Aplic
    48. 49. Ciclo de Vida de una Aplicación <ul><li>Obscured </li></ul><ul><li>Paused </li></ul>
    49. 50. Obscured: Un popup del IU Juegos podrían auto-pararse Juego podría continuar <ul><li>Llamada </li></ul><ul><li>Batería baja </li></ul>
    50. 51. Paused: salto a otra Aplicación Asumir que se mata el proceso Salvar Estado Cargar estado para continuar El usuario no sabe qué ha pasado realmente <ul><li>Botón Inicio </li></ul><ul><li>Contestar </li></ul><ul><li>Abrir “Tostada” </li></ul>
    51. 52. <ul><li>Servicios de Windows Phone en la Nube </li></ul>
    52. 53. <ul><li>Comunicación iniciada por Servidor </li></ul><ul><li>Habilita escenarios de “background” </li></ul><ul><li>Mantiene batería y protege experiencia de usuario </li></ul>Notificaciones Push
    53. 54. Tipos de Notificación
    54. 55. Notificaciones Push Cliente “Push” Servicio Push Tu Servicio “ Tile” Aplicacion Tostada Evento
    55. 56. <ul><li>DEMO: </li></ul><ul><li>Notificaciones «Push» </li></ul>
    56. 57. <ul><li>Combinación de sw local y servicio en la nube </li></ul><ul><li>Seleccionar la fuente de informaicón más adecuada </li></ul><ul><li>Misma API para Windows Phone y Escritorio </li></ul>Servicios de Localización
    57. 58. Servicios de localización Servicios de Localización + Precisión - Batería - Velocidad - Interior <ul><li>- Precisión </li></ul><ul><li>+ Batería </li></ul><ul><li>+ Velocidad </li></ul><ul><li>Entorno </li></ul><ul><li>natural </li></ul>+/- Precisión +/- Batería +/- Velocidad +/- Área urbana GPS
    58. 59. <ul><li>DEMO: </li></ul><ul><li>Localización </li></ul>
    59. 60. <ul><li>Filosofía de 3 pantallas y la Nube </li></ul><ul><li>Desarrollar aplicaciones potentes en SL es fácil y productivo </li></ul><ul><li>Descarga las herramientas y comercializa una aplicación o juego en el Marketplace! </li></ul>Conclusiones
    60. 61. <ul><li>Centro de Desarrollo de Windows Phone </li></ul><ul><li> </li></ul><ul><li>Herramientas: </li></ul><ul><li>Windows Phone Developers Tool CTP </li></ul><ul><li>Microsoft Expression Blend 4 RC </li></ul><ul><li>Microsoft Expression Blend Software Development Kit (SDK) Preview for Windows Phone </li></ul><ul><li>Microsoft Expression Blend Add-in Preview for Windows® Phone </li></ul><ul><li>Concurso: 15 de Abril: </li></ul>Recursos
    61. 62. © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.