2. Agenda Introduction to Windows Phone 7 Tools for Development on Windows Phone 7 Using Silverlight for WP7 development Navigation among pages of application WP 7 application lifecycle Launchers and Choosers Tombstoning Fetching data from server Deployment model of WP7 application Demos Q & A
3. Introduction to WP7 Windows Phone 7 is a mobile operating system and is the successor to Windows Mobile 6.x platform. Windows Phone has a new Metro user interface and seamlessly integrates the operating system with Microsoft's other services including Xbox and Zune. Partners (OEM) include Dell, Garmin-Asus, HTC, HP , LG, Samsung, Sony Ericsson, Toshiba and Qualcomm Mobile network operators included AT&T, Deutsche Telekom, Orange, SFR, Sprint, Telecom Italia, Telefónica, Telstra, T-Mobile USA, Verizon Wireless, Vodafone and SingTel.
4. Hardware Chassis The Windows Phone specifications ensure that every Windows Phone has a consistent set of features that customers can rely on. This also provides developers with a base set of features they can build rich and creative applications upon. Each Windows Phone will contain the following hardware elements: WVGA (800 x 480) format display capable of rendering most web content in full-page width and displaying movies in a cinematic aspect ratio. Capacitive 4-point multi-touch screens for quick, simple control of the phone and its features. DirectX 9 hardware acceleration for crisp graphics and exciting audio and video. A standard suite of sensors - A-GPS, accelerometer, compass, light, proximity - for interacting with the phone’s location, orientation, and environment. A digital camera. A common set of hardware controls and buttons that include the Start, Search, and Back buttons. Support for data connectivity using cellular networks and Wi-Fi. 256 MB (or more) of RAM and 8 GB (or more) of flash storage.
5. Introduction to Windows Phone 7 The Windows Phone Application Platform provides two frameworks for developing applications: The Silverlight framework for event-driven, XAML-based application development that allows developers to develop creative mark-up based user experiences. The XNA Framework for loop-based games that enables immersive and fun gaming and entertainment experiences. Silverlight development on WP7 may be done using existing Microsoft® tools and technologies such as Visual Studio, Expression Blend® and Silverlight®. Developers already familiar with those technologies and their related tools are able to create new applications for Windows Phone without a steep learning curve.
6. Tools for development The primary tools used for development will be Microsoft's Visual Studio 2010 and Expression Blend, which are also available as free downloads. Visual Studio 2010 is used by developers to develop applications targeting WP7 Expression Blend for WP7 is available for designers for defining user interface of the application Windows Phone Emulator a desktop application that emulates a Windows Phone OS 7.0 device Additional tools: Developer Registration tool, Application Deployment tool, Windows Phone Connect tool, Phone Capability Detection tool
7. Introduction to Windows Phone 7 The Windows Phone Application Platform helps developers to create applications by providing: A familiar and inexpensive toolset. A cohesive and well designed managed API set. An isolated sandbox for each application. Runtime services on devices that can be used to access web services in the cloud such as Xbox LIVE®, Windows Azure, location, and notification services. Access to 3rd party Windows Communication Foundation (WCF), Representational State Transfer (REST) services and ODATA is also supported. The Windows Phone Marketplace to distribute application.
8. Introduction to Windows Phone 7 – A Developer Perspective The Windows Phone Application Platform is designed to support the multi-screen world
9. Lightening up the Web Silverlight apps = code + markup* XAML markup language defines UI .NET code handles interaction Silverlight .NET Application
10. Demo Build a WP7 Client Investigating Execution Model Events Basic Navigation PhoneApplicationService Launchers: PhoneCallTask, SearchTask Choosers: PhotoChooserTask Create a Odata Service Connect WP7 to Odata Service
12. Windows Phone execution model The Windows Phone execution model governs the life cycle of applications running on a Windows Phone, from when the application is launched until it is terminated. The execution model is designed to provide end users with a fast, responsive experience at all times. To achieve this, Windows Phone allows only one application to run at a time. To enable seamless navigation by limiting the phone to run one application at a time, Windows Phone activates and deactivates applications dynamically, raising events for applications to respond to when their state changes. By implementing handlers for these events, developers can save and restore application state as their application transitions between active and inactive states.
13. Tombstoning Tombstoning: The procedure in which the operating system terminates an application’s process when the user navigates away from the application. The operating system maintains state information about the application. If the user navigates back to the application, the operating system restarts the application process and passes the state data back to the application. Two sets of data types Persistent data: Data that is shared by all instances of an application. Persistent data is saved and loaded from isolated storage. Application settings are an example of persistent data that should be preserved between application executions. Transient : Data that describes the state of a single instance of an application. Transient data is stored in the State dictionary provided by the PhoneApplicationService class. A tombstoned application restores its transient state when it is activated. An example of transient state is the data returned by a Web service query. This can be stored when an application is tombstoned to reduce the need to perform the query again if the user quickly returns to the application.
14. Launchers Launchers: A Launcher is an API that launches one of the built-in applications through which a user completes a task, and in which no data is returned to the calling application. Examples of this is the PhoneCallTask, SearchTask, etc. When the user closes the Phone application, the calling application is usually activated again, but the Phone application does not return any data about or resulting from the user’s actions.
15. Choosers Choosers: A Chooser is an API that launches one of the built-in applications through which a user completes a task, and which returns some kind of data to the calling application. An example of this is the PhotoChooserTask. The result includes a value that indicates whether the user completed the task and, if the user did complete the task, the result includes an IO stream that contains the image data of the chosen photo. An important concept for Windows Phone application developers to consider in general, and especially when using Launcher or Chooser APIs, is that the calling application is no longer running when the Launcher or Chooser task application is invoked.
Metro design language contains the following principlesClean, Light, Open, FastUI of Metro is based on the signs you see on the Metro.Large, eye-popping typography that catches the eye and text that runs off the page