View
221
Download
4
Tags:
Embed Size (px)
Citation preview
Smart Client Development Smart Client Development for Windows Mobile devicesfor Windows Mobile devices
This session, What is Microsoft doing for you?This session, What is Microsoft doing for you? Your opportunityYour opportunity The DevicesThe Devices The platformThe platform The toolsThe tools
Rest of today:Rest of today: ArchitectureArchitecture DesignDesign DevelopmentDevelopment SecuritySecurity
Your Opportunity!Your Opportunity!
Software Platform for Clients Software Platform for Clients Worldwide shipments of high-end Smartphone’s Worldwide shipments of high-end Smartphone’s
will reach 45M by 2007 (will reach 45M by 2007 (Arc Group)Arc Group) "Pocket PC accounted for an estimated 67% of "Pocket PC accounted for an estimated 67% of
European PDA enterprise shipments in Q1 2003, European PDA enterprise shipments in Q1 2003, with Palm OS at approximately 32%“ (Decision with Palm OS at approximately 32%“ (Decision Tree Consulting, May 2003)Tree Consulting, May 2003)
Services to SubscribersServices to Subscribers
2,154,246,090 cellular subscribers World wide by 2,154,246,090 cellular subscribers World wide by 2007 (EMC World Cellular Database)2007 (EMC World Cellular Database)
We’ve been listeningWe’ve been listeningWhat developers are sayingWhat developers are saying Improve device capabilitiesImprove device capabilities
Powerful software platformsPowerful software platforms Robust architecturesRobust architectures
Increase developer productivityIncrease developer productivity Consistent programming modelsConsistent programming models Rapid application development environmentRapid application development environment
Protect existing investmentsProtect existing investments Integrate with existing systemsIntegrate with existing systems Language independenceLanguage independence
Help me go to marketHelp me go to market More customers, multiple channelsMore customers, multiple channels
.NET tools and.NET tools andserver integrationserver integration
Silicon Silicon VendorsVendors
DeviceDeviceManufacturersManufacturers
SolutionSolutionProvidersProviders
EnterpriseEnterpriseISVs and IHVsISVs and IHVs
Mobile OperatorsMobile Operators
WindowsWindowsMobile DevicesMobile Devices
Enable Market MomentumEnable Market Momentum
Mobility PlatformsMobility Platforms
Smartphone• Information
consumption
• Primarily data viewing
• Integrated phone with PDA
• Interoperability with Exchange
• .NET Compact Framework
• ASP.NET mobile controls
Notebook PC• Complex document
authoring, editing and reading
• Keyboard centric at the desk
• Keyboard and mouse input methods
• Full .NET framework available
Windows CE+Windows CE+
Windows XPWindows XP
Tablet PC• Complex document
authoring, editing and active reading
• Note taking and ink annotating
• Keyboard centric at the desk, pen & keyboard away from the desk
• Keyboard, mouse plus pen, ink, and speech input methods
• Full .NET framework preinstalled
Pocket PC Phone• Information
consumption
• View and data entry
• Integrated with phone
• Interoperability with Office, Exchange and SQL Server
• .NET Compact Framework
• ASP.NET mobile controls
Windows CEWindows CE
Smart Personal Objects
• One-way network
• Information consumption
Smart Device Smart Device ProgrammabilityProgrammability
Mobile Application ApproachesMobile Application Approaches Microsoft Mobile DevelopmentMicrosoft Mobile Development
Local Local CodeCode
Mobile Web Mobile Web PagesPages
Software Platform (Pocket Software Platform (Pocket PC, Smartphone, etc.)PC, Smartphone, etc.)
Mobile Web Mobile Web BrowserBrowser
ASP.NET Mobile ASP.NET Mobile ControlsControls
.NET Compact .NET Compact Framework and Framework and
Native APIsNative APIs
Monetising Your ApplicationMonetising Your Application
Devices, devices, devicesDevices, devices, devices Pocket PCPocket PC
Touch ScreenTouch Screen PDA Form FactorPDA Form Factor Storage in RAMStorage in RAM 32 - 128MB RAM, ~200 - 400MHz CPU32 - 128MB RAM, ~200 - 400MHz CPU
Pocket PC Phone Edition Pocket PC Phone Edition (in addition)(in addition) Radio HardwareRadio Hardware Dialler applicationDialler application
SmartphoneSmartphone No Touch ScreenNo Touch Screen Phone Form FactorPhone Form Factor Durable Like a PhoneDurable Like a Phone Storage on FlashStorage on Flash 16 - 32MB RAM, ~130 - 200MHz CPU16 - 32MB RAM, ~130 - 200MHz CPU
BothBoth Multimedia FeaturesMultimedia Features Pocket Outlook, Pocket Internet ExplorerPocket Outlook, Pocket Internet Explorer GSM or CDMA RadioGSM or CDMA Radio SD CardSD Card More…More…
Brief History of Brief History of Windows MobileWindows Mobile
April 00Oct 01 June 2002
Pocket PC
2002Win CE 3.0Win CE 3.0 Win CE .NETWin CE .NET
(4.0)(4.0)
4.24.1SP 1Jan 02June 00
Smartphone2002
Oct 02Pocket PC
2003
PPC 2002PPC 2002 SP 2002SP 2002 Pocket PC Pocket PC 20032003
Smartphone Smartphone 20032003
WinCE OSWinCE OS 3.03.0 3.03.0 4.24.2 4.24.2
eVCeVC 3.03.0 3.03.0 4.0 (SP2)4.0 (SP2) 4.0 (SP2)4.0 (SP2)
eVBeVB 3.03.0 -- -- --
VS.NETVS.NET 20032003 -- 20032003 20032003
.NETCF.NETCF 1.01.0 -- 1.01.0 1.0 SP11.0 SP1
MFCMFC XX -- XX --
ATLATL XX -- XX XX
eVB eVB (runtime)(runtime) XX -- X (RAM)X (RAM) --
SQL CESQL CE XX -- XX --
ADO.NETADO.NET XX -- XX XX
MSMQMSMQ XX -- XX XX
Web ServerWeb Server XX -- XX --
Tools MatrixTools Matrix
What is Windows CE?What is Windows CE? Hard real-time preemptive multitasking Hard real-time preemptive multitasking
kernelkernel Interprocess communication (IPC), sync objectsInterprocess communication (IPC), sync objects Memory mapped files, message queues, fibersMemory mapped files, message queues, fibers Virtual memory with hardware access protectionVirtual memory with hardware access protection
Installable ISRs, Multimedia timers, DMA Installable ISRs, Multimedia timers, DMA APIsAPIs more flexibility for drivers & appsmore flexibility for drivers & apps
Componentized, tunable for resource Componentized, tunable for resource constrained devices.constrained devices.
Specialized through Platform BuilderSpecialized through Platform Builder Pocket PC and Smartphone are specializationsPocket PC and Smartphone are specializations AutoPC and Smartdisplay (Mira)AutoPC and Smartdisplay (Mira)
What’s new in CE 4.2?What’s new in CE 4.2?From Win CE 3.0From Win CE 3.0
SecuritySecurity Trustworthy Computing InitiativeTrustworthy Computing Initiative L2TP and IPSecL2TP and IPSec 802.11 Native AP support, including 802.1x, TKIP, WEP 802.11 Native AP support, including 802.1x, TKIP, WEP
rekeying, etcrekeying, etc
User feedback (Consumer and Enterprise)User feedback (Consumer and Enterprise) Windows Media 9 codes/DMO wrapperWindows Media 9 codes/DMO wrapper 802.11 security TKIP/SSN (Client side)802.11 security TKIP/SSN (Client side) Sync with latest MS Messenger technologiesSync with latest MS Messenger technologies Device ManagementDevice Management
Configuration Manager, Push Router hooksConfiguration Manager, Push Router hooks
Industry movementIndustry movement IPv6 protocol and applicationsIPv6 protocol and applications BrowserBrowser
urlmon6,mshtml6urlmon6,mshtml6 Cascading style sheetsCascading style sheets
File system Filters File system Filters
What is Compact FrameworkWhat is Compact FrameworkDesign GoalsDesign Goals
Target mobile and embedded devicesTarget mobile and embedded devices Portable subset of .NET FrameworkPortable subset of .NET Framework
No new ‘compact’ namespacesNo new ‘compact’ namespaces Visual Basic .NET & C# compiler support in v1Visual Basic .NET & C# compiler support in v1
Leverage Visual Studio .NETLeverage Visual Studio .NET Run managed .EXEs and .DLLs directlyRun managed .EXEs and .DLLs directly Debug with Visual Studio .NETDebug with Visual Studio .NET
Peacefully co-exist with host OSPeacefully co-exist with host OS Run on native threads, P/Invoke to call native Run on native threads, P/Invoke to call native
codecode
Compact CLR Compact CLR CommonCommon FeaturesFeatures Verifiable type safe executionVerifiable type safe execution
No uninitialized variables, unsafe casts, No uninitialized variables, unsafe casts, bad array indexing, bad pointer mathbad array indexing, bad pointer math
Garbage CollectionGarbage Collection No ref-counting, no leaksNo ref-counting, no leaks
JIT compilationJIT compilation Error handling with exceptionsError handling with exceptions Common type systemCommon type system
Call, inherit, and source-level debug Call, inherit, and source-level debug across different languagesacross different languages
Compact CLR DifferencesCompact CLR Differences COM InteropCOM Interop
Good support for calling native DLLsGood support for calling native DLLs Support for calling a COM object through DLL Support for calling a COM object through DLL
wrapperswrappers No support for writing a COM / ActiveX object in No support for writing a COM / ActiveX object in
C# or Visual BasicC# or Visual Basic No Install-time JIT (nGen)No Install-time JIT (nGen) No Reflection EmitNo Reflection Emit No RemotingNo Remoting
Client web services is fully supportedClient web services is fully supported No No GenericGeneric Serialization Serialization
Datasets can be serialized to XMLDatasets can be serialized to XML Subsets of other areas of functionalitySubsets of other areas of functionality
Windows Mobile Second Windows Mobile Second EditionEdition Enable OEM innovationEnable OEM innovation Minimize developer impactMinimize developer impact Native use:Native use:
GetSystemMetricsGetSystemMetrics SCALEX, SCALEY macrosSCALEX, SCALEY macros WM_SETTINGCHANGE and WM_SIZEWM_SETTINGCHANGE and WM_SIZE ChangeDisplayOrientationExChangeDisplayOrientationEx
Managed use:Managed use: Form.ResizeForm.Resize
DevicesDevices
VS Whidbey VS Whidbey (C#, VB.NET, C++)(C#, VB.NET, C++)
eVC 3 (C++)eVC 3 (C++)eVC 4 (C++)eVC 4 (C++)
VS.NET 2003 (VB.NET)VS.NET 2003 (VB.NET)eVC 3 (C++)eVC 3 (C++)eVB 3 (VB)eVB 3 (VB)
eVC 3 (C++)eVC 3 (C++)eVB 3 (VB)eVB 3 (VB)ToolsTools
PPC +PE 2003PPC +PE 2003SP 2003SP 2003
PPC + PE 2002PPC + PE 2002SP 2002SP 2002
PPC 2000PPC 2000
PlatformsPlatforms
+ .NET CF Whidbey,+ .NET CF Whidbey,New native runtimes,New native runtimes,
11stst class managed code, class managed code,Notification Manager, DirectX, Notification Manager, DirectX,
Location APIs, Dr WatsonLocation APIs, Dr Watson
+ .NET Compact + .NET Compact Framework,Framework,Bluetooth,Bluetooth,
SMSSMS
+ MFC,+ MFC,Connection ManagerConnection Manager
Win32,Win32,POOMPOOMAPIsAPIs
MacallanMacallan4.24.23.03.03.03.0CE OSCE OS
Windows Mobile RoadmapWindows Mobile RoadmapWindows Mobile RoadmapWindows Mobile Roadmap
SP v SP v NextNextQVGA, QVGA, StandardStandard
PPC + PE v NextPPC + PE v NextVGA, Landscape, VGA, Landscape, Square, StandardSquare, Standard
SummarySummary Rich new platform and hardwareRich new platform and hardware Windows Mobile 2003 offers a rich and Windows Mobile 2003 offers a rich and
robust platform on which to build and robust platform on which to build and deploy Mobile applications.deploy Mobile applications.
Microsoft Visual Studio .NET 2003 Microsoft Visual Studio .NET 2003 provides state of the art development provides state of the art development tools for targeting the Compact tools for targeting the Compact Framework.Framework.
The Compact Framework brings Mobile The Compact Framework brings Mobile devices to the mainstream development devices to the mainstream development community.community.
Windows MobileWindows MobileResources – On the webResources – On the web Windows Mobile Developer PortalWindows Mobile Developer Portal
www.microsoft.com/www.microsoft.com/windowsmobilewindowsmobile/developer/developer
Mobility Developer CenterMobility Developer Center www.msdn.comwww.msdn.com/mobility/mobility
Mobile2MarketMobile2Market www.microsoft.com/windowsmobile/mobile2marketwww.microsoft.com/windowsmobile/mobile2market
Windows Mobile CommunityWindows Mobile Community www.microsoft.com/windowsmobile/resources/www.microsoft.com/windowsmobile/resources/
communities/developercommunities/developer
Smartphone Developer KitSmartphone Developer Kit www.microsoft.com/windowsmobile/information/www.microsoft.com/windowsmobile/information/
devprograms/smartphonedevkitdevprograms/smartphonedevkit
Windows MobileWindows MobileResources (Cont…)Resources (Cont…)
Online LearningOnline LearningProject-based WebSite for downloading code, viewing Project-based WebSite for downloading code, viewing
presentations and building code modules.presentations and building code modules. www.learn247.netwww.learn247.net
Online European Community Online European Community www.codezone.infowww.codezone.info