28
Introduction to Introduction to Windows Mobile Windows Mobile Marcus Perryman Marcus Perryman

Introduction to Windows Mobile Marcus Perryman. Smart Client Development for Windows Mobile devices This session, What is Microsoft doing for you? This

  • View
    221

  • Download
    4

Embed Size (px)

Citation preview

Introduction to Windows Introduction to Windows MobileMobile

Marcus PerrymanMarcus Perryman

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…

DevicesDevices

Tools UpdateTools Update

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

Compact Framework Compact Framework BasicsBasics

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

Pocket PC Screen SizesPocket PC Screen Sizes

(support for .24 .22 and .18 dot pitch)

Pocket PC Screen SizesPocket PC Screen Sizes

Smartphone Screen SizesSmartphone Screen Sizes

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

© 2003-2004 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.