Download presentation
Presentation is loading. Please wait.
Published byDustin Murphy Modified over 9 years ago
1
CLI205 Basic Considerations For Mobile PC Application Development Tablet and Mobile PC Technical Evangelist mmckelve@microsoft.com Microsoft Corporation
2
M anagement T ools C ommunications & M essaging Device Update Agent Software Update Services Live Communications Server Exchange Server Internet Security and Acceleration Server Speech Server Image Update L ocation S ervices M ultimedia MapPoint DirectX Windows Media Visual Studio 2005 D evelopment T ools MFC 8.0, ATL 8.0 Win32 N ative M anaged S erver S ide L ightweight R elational SQL Server 2005 Express EditionEDB D ata P rogramming M odel D evice B uilding T ools D evice B uilding T ools H ardware/ D rivers Windows XP DDK Windows Embedded Studio Platform Builder OEM/IHV Supplied BSP (ARM, SH4, MIPS) OEM Hardware and Standard Drivers Standard PC Hardware and Drivers SQL Server 2005SQL Server 2005 Mobile Edition ASP.NET Mobile ControlsASP.NET.NET Compact Framework.NET Framework Microsoft Operations Manager Systems Management Server
3
Agenda Mobile PC Market Mobile PC Platform More available, more places, settings Current Mobile API’s in XP Network Awareness Power Awareness Data Synchronization Pen and Ink DisplayQ&A
4
Mobile Platform Choices Smartphone (-) Functionality (+) (-) Functionality (+) Windows Mobile Mobile/Tablet PC Pocket PC Phone Smart Personal Objects (+) Portability (-)
5
The Market Goes Mobile “Notebook PCs, with a compound average growth rate of 15% worldwide through 2008, will outsell desktop PCs as business and consumer users upgrade or complement their desktop PCs.” Strategy Analytics 8-03
6
U.S. PC Unit Shipments – Total PCs Source: IDC, 2004
7
U.S. PC Unit Shipments – Growth Source: IDC, 2004
8
Growing Mobile Workforce 91.8 million to 104.5 million 13 million new mobile workers in the U.S. from 2002 and 2006 Growing mobile workforce Embrace a variety of hardware, software, and services technologies Want to work more efficiently in a wide variety of locations
9
Home Users Are Buying More And More Mobile PCs Wireless networks are easy and affordable Moveable from room to room Couch form factor Less obtrusive then desktop Media Center PC Companion Device
10
Mobile PC Opportunity Faster growth than desktops Faster rate of innovation than desktops Mobile ecosystem maturing Customer demand for real-time information Wireless hotspots WWAN access Create application that meet the needs of the mobile customer
11
Microsoft is meeting these demands with the Mobile Product Group Creating and utilizing all of the mobile pieces of the OS for the end user and developer Mobile PC Development Center http://msdn.microsoft.com/mobilepc Educating developers on how to create great mobile applications on XP Even better application on Longhorn Intel is meeting these demands with their Mobilized Computing Initiative http://www.mobilizedcomputing.com Great tools and SDK for Mobile PC Developers Microsoft and Intel
12
Windows Client Vision Make Windows computers more valuable to more people, more hours of the day by enabling them to use computers in new physical and social settings
13
Mobile PC Platform Areas More Available More Settings More Places Power Handling standby/resume Scaling functionality on DCNetwork Network Location Awareness Synchronization SynchManager Online/Offline Data Richer Output Aux displays Alternate Inputs Pen/Ink Speech Display Multi-monitor High DPI Support Collaboration Peer 2 Peer VoIP Messenger/RTC Media & Entertainment Windows Media Windows for Portable Devices (WPD)
14
More Available – Power Scenerio Allow the mobile user to complete the tasks with minimal interruption and awareness of battery status Features of a Power Aware Application Applications notified of power status and scale accordingly Increased battery life on portable computers = more productivity PDA-like system availability and responsiveness. Simplified power schemes – improved user experience
15
What can you do as a dev… Be aware of the system power status Handle power notifications properly Be aware of device power states Use CPU and other resources efficiently Scale application functionality Keep the computer awake when the CPU is idle Respond to device change events
16
On Now Power Management Since Windows 98 System and individual devices can hibernate and wake up very quickly Applications should be prepare by: Closing all file and device handles Saving local copies of files or working data Turn on/off polling – causes system to wake up Application should not expect user input Application should not expect user input Seamless transitions
17
Power API’s – Current Info Available since Windows 98 bool GetPowerStatus(SystemPowerStatus s) Query to current power status of system Current power source Battery status Charging status Percentage remaining Use this information to make smarter applications
18
Power API’s - Notifications Applications can respond to power change events Two methods currently available PowerChangedEvent.NET Framework WM_POWERBROADCAST Windows procedure
19
WM_POWERBROADCAST PBT_APMBATTERYLOW PBT_APMOEMEVENT PBT_APMPOWERSTATUSCHANGE PBT_APMQUERYSUSPEND PBT_APMSUSPEND PBT_APMQUERYSUSPENDFAILED PBT_APMRESUMEAUTOMATIC PBT_APMRESUMECRITICAL PBT_APMRESUMESUSPEND
20
Power Aware Sample
21
More Available – Network Scenario Overview Users work when and where they want with smart, high-performing and secure networked applications Features Application require zero-configuration for networking Users are equally as productive on and offline Connect, collaborate and share information with others easily Confidence that connection and data is secure
22
What can you do as a dev… Detect network changes and react transparently Handle abrupt network disconnection Test in different network environments Scale application features Handle long network delays Have the ability to be used off line Give clear feedback to users
23
Network API’s – Get Status Currently two methods of getting Network Information SENS API for general network information Windows Sockets 2.0 API for more details WSALookupStartup() Initialize WinSock WSALookupServiceBegin() Initiate the client query WSALookupServiceNext() Enumerate networks WSACleanup() Cleanup and Close WinSock
24
Network API’s – Notifications Register to receive information when network change events occur WSANSPIoctl (WSACompletion) SIO_NSP_NOTIFY_CHANGE for change notifications Call with WSACompletion structure NSP_NOTIFY_HWND to get notified via your windows procedure Requires wrapper in managed code
25
Network Aware Sample
26
More Available – Data Scenario Overview Mobile user seamlessly move from online to offline staying in sync and more productive Features Architecture that consider both local and remote data Application that handle conflict resolution with minimal user impact Equally as productive user experience in airplanes, hotels, coffeeshops and client locations
27
Sync Manager Allows mobile users to synchronize content with computers and devices Consistent synchronization experience for applications Common Status / Progress UI Conflict Store / Conflict UI Allows for Scheduling Time-based and Event-based Sync Manager UI framework allows for simple plug-in interface
28
Sync Manager User Interface
29
Longhorn Sync Manager
30
ISyncMgrSynchronize Primary interface to communicate with handlers Key Methods: Initialize()PrepareForSync()Synchronize()GetItemObject()ShowProperties()SetItemStatus()
31
Sync Manager Sample
32
More Settings – Pen and Ink Windows XP Tablet PC Edition Tablet PC Development Kit 1.7 Development Center http://msdn.microsoft.com/tabletpc Easy to add ink controls to your application Consider the Tablet PC user in your design and testing Pen Enabled Interfaces Portrait versus Landscape Left and right handiness Enable computing in more places
33
Tablet PC Sample
34
More Settings – Display Guidelines for Multiple monitors Handle an arbitrarily large coordinate space Display the window on the primary monitor Preserve the last used window settings Always check the system settings Use Screen.Workingarea.Bounds
35
Call To Action Keep mobility in mind when designing applications In design In development In test You understand the needs of the mobile pc user better then desktop developers Focus on perfecting the basics – these will impact your application behavior
36
Summary Growing Mobile PC Future Mobile PC Platform More Available More Settings More Places Mobile PC Applications Power Awareness Network Awareness Data Awareness Display Awareness
37
Mobile PC Developer Center http://msdn.microsoft.com/mobilepc http://msdn.microsoft.com/mobilepc The latest technical articles Downloads Developer resources Regular columns.Newsgroups Featured partners and more…
38
MEDC Mobile PC Talks CLI204 – Tablet PC Development Overview Speaker – Dave Hale Time – Tuesday 5/10 11:00 AM CLI208 – Anywhere Access to Data Speaker – Markus Egger Time – Tuesday 5/10 3:00 PM CLI324 - Advanced Tablet PC Development Topics Speaker – Todd Landstad Time – Wednesday 5/11 8:00 AM CLI325 - In Depth - Ink Data Management Speaker – Stefan Wick Time – Wednesday 5/11 9:30 AM CLI329 - Network Awareness Speaker – Dr. Neil Roodyn Time – Thursday 5/12 8:00 AM
39
Mobile Hands On Labs Building Network-Aware Mobile PC Applications Build a network-aware application using the Windows Network Location Awareness (NLA) API Building Power-Aware Mobile PC Applications Learn how to tune your applications to save power, extend battery life, and enhance the user's mobile PC experience Building Managed Applications with Microsoft Windows XP Tablet PC SDK Create a cool Tablet application using the Windows XP Tablet PC Edition SDK 1.7 Cool gifts for completing the labs
40
While at MEDC 2005… Fill out an evaluation for this session Randomly selected instant WIN prizes! Randomly selected instant WIN prizes! Use real technology in a lab Instructor led Reef E/F & Breakers L Self-paced Reef B/C Self-paced Reef B/C Visit the Microsoft Product Pavilion in the Exhibit Hall Shorelines B in the Exhibit Hall Shorelines B
41
After The Conference… Develop Build InstallBuildJoin Install Enter Enter Join Full-featured trial versions of Windows CE and/or Windows XP Embedded Cool stuff & tell us about it: msdn.microsoft.com/embedded/community msdn.microsoft.com/embedded/community Windows Embedded Partner Program: www.mswep.com www.mswep.com Windows Mobile 5.0 Eval Kit including Visual Studio 2005 Beta 2 Mobile2Market Contest and win up to $25000: mobile2marketcontest.com mobile2marketcontest.com Microsoft Solutions Partner Program: partner.microsoft.com partner.microsoft.com
42
Tools & Resources msdn.microsoft.com/ embedded microsoft.public. windowsxp.embedded windowsce.platbuilder windowsce.platbuilder windowsce.embedded.vc windowsce.embedded.vc blogs.msdn.com/ mikehall Windows CE 5.0 Eval Kit Windows XP Embedded Eval Kit msdn.microsoft.com/ mobility microsoft.public. pocketpc.developer smartphone.developer dotnet.framework.compactframework blogs.msdn.com/ windowsmobile vsdteam netcfteam Windows Mobile 5.0 Eval Kit Websites Newsgroups Blogs Tools Build Develop
43
© 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.