Choosing the Right Mobile Technology and Mobile Device Marcus Perryman ConsultantMicrosoft Chung...
-
date post
20-Dec-2015 -
Category
Documents
-
view
217 -
download
0
Transcript of Choosing the Right Mobile Technology and Mobile Device Marcus Perryman ConsultantMicrosoft Chung...
Choosing the Right Choosing the Right Mobile Technology and Mobile Technology and Mobile DeviceMobile Device
Marcus PerrymanMarcus Perryman
ConsultantConsultant
MicrosoftMicrosoft
Chung WebsterChung Webster
ConsultantConsultant
MicrosoftMicrosoft
AgendaAgenda
Mobile Growth and opportunityMobile Growth and opportunity Diverse DevicesDiverse Devices
Pocket PC, Smartphone, Tablet, Pocket PC, Smartphone, Tablet, SmartDisplaySmartDisplay
Next Generation Pocket PC and Next Generation Pocket PC and Smartphone PlatformSmartphone Platform What’s new!What’s new! Development for OzoneDevelopment for Ozone
Choosing the right development Choosing the right development approachapproach Thin client solution vs Smart client Thin client solution vs Smart client
applicationapplication Development tool choices.Development tool choices.
Mobile GrowthMobile Growth Software Platform for Clients Software Platform for Clients
Worldwide shipments of high-end smartphones will Worldwide shipments of high-end smartphones will reach 45M by 2007 - reach 45M by 2007 - Arc Group, 16 April 2003Arc Group, 16 April 2003
"Worldwide, there will be 1.7 billion mobile "Worldwide, there will be 1.7 billion mobile connections at the end of 2007", connections at the end of 2007", 'Mobile Terminals: 'Mobile Terminals: Worldwide, 1997 to 2006' report (TCMC-WW-MS-Worldwide, 1997 to 2006' report (TCMC-WW-MS-0374), B. Prohm et al., Gartner0374), B. Prohm et al., Gartner
Services to SubscribersServices to Subscribers 2,154,246,090 cellular subscribers World wide by 2,154,246,090 cellular subscribers World wide by
2007 - 2007 - EMC World Cellular Database, April 20EMC World Cellular Database, April 200303
Supporting The DeveloperSupporting The Developer
Mobility Developer ConferenceMobility Developer Conference First MS Mobility Developer Conference a huge First MS Mobility Developer Conference a huge
success in Londonsuccess in London Bigger and better follow-up events in US, Europe and AsiaBigger and better follow-up events in US, Europe and Asia
Developer ToolsDeveloper Tools eMbedded Visual Tools eMbedded Visual Tools VisualStudio.NETVisualStudio.NET .NET Compact Framework (.NET CF).NET Compact Framework (.NET CF) ASP.NET Mobile ControlsASP.NET Mobile Controls
Partner ProgramPartner Program Designed to help developers build applications Designed to help developers build applications Provides marketing support for product launches and PRProvides marketing support for product launches and PR
Certification and market delivery of mobile applications Certification and market delivery of mobile applications designed for Pocket PC and Smartphonedesigned for Pocket PC and Smartphone
Empowers ISVs to generate incremental revenues through Empowers ISVs to generate incremental revenues through mobile operator relationshipsmobile operator relationships
Extends customer reach and reducing time-to-marketExtends customer reach and reducing time-to-market
Mobile Device StrategyMobile Device Strategy Microsoft’s vision is Microsoft’s vision is
““Empower people Empower people through great software through great software any where any time,any where any time,and on any device”and on any device”
OEM differentiation in hardware and capability
Excellent platform for LOB applications
Excellent mail linkage with Outlook and Exchange
Rich environmentonline and offline
Rich photo and music experience
Pocket PCPocket PC
Pocket PC Pocket PC Phone EditionPhone Edition
SmartphoneSmartphone
Tablet PCTablet PC
Diverse DevicesDiverse Devices
SmartphoneSmartphone
Pocket PCPocket PC
TabletTablet
Smart DisplaySmart Display
What is Smartphone What is Smartphone 2002?2002? Mobile-handset
Communication management tool Mobile Phone, Outlook, Web
Up-to-date Great sync to desktop or server
Manageable Over-the-air configuration
Extensible Partners, carriers and customers are
free to extend/ enhance featureset Install applications, take advantage of
HW features
What is PocketPC 2002What is PocketPC 2002 Improved UI
Themes Improved software
Pocket Office, PIE Media Player, Terminal
Services Corporate Network Access
VPN, Network Browse Hardware
ARM Standardization FLASH ROM in all devices
Developer Connection Manager Notifications MAPI Many more documented API’s
Microsoft PocketPC Phone EditionMicrosoft PocketPC Phone Edition Developer
Access to phone functionality Cell Core library
SMS, SIM, Phone WAP, TAPI
PDA First Extended apps to take advantage of
phone. All the PocketPC 2002 functionality
Office, Instant Messenger, Media Player etc
Mobile Outlook (Unified inbox) Inbox, SMS, vMail, Calendar, Contacts, Tasks
Always up-to-date (GPRS) 3rd Party Extensible
Introducing the Tablet PCIntroducing the Tablet PC Full Function Mobile Business PC Full Function Mobile Business PC
Runs Windows XP Tablet PC Edition Runs Windows XP Tablet PC Edition (superset of Windows XP Pro)(superset of Windows XP Pro)
Runs Runs allall existing Windows applications existing Windows applications Enables New PC Usage ScenariosEnables New PC Usage Scenarios
Unprecedented PC mobilityUnprecedented PC mobility New Pen and Speech technologiesNew Pen and Speech technologies
A Powerful PlatformA Powerful Platform Enables a new generation of business solutionsEnables a new generation of business solutions E.g., MS Office, many third party ISV applicationsE.g., MS Office, many third party ISV applications
The Smartest .NET Client The Smartest .NET Client Most mobile PC, most powerful OSMost mobile PC, most powerful OS Includes full .NET frameworkIncludes full .NET framework
Windows Powered Smart Windows Powered Smart Display: What Is It?Display: What Is It?
The Evolution of the MonitorThe Evolution of the Monitor Does for the home PC what the cordless Does for the home PC what the cordless
handset did for the home phonehandset did for the home phone LiberatingLiberating
Free yourself with a secure cordless connection to Free yourself with a secure cordless connection to your Windows XP-based PC from anywhere in your your Windows XP-based PC from anywhere in your homehome
EmpoweringEmpowering Extend the power of your personalized Windows XP Extend the power of your personalized Windows XP
experience and the rich features, applications and experience and the rich features, applications and services you use mostservices you use most
ConvenientConvenient Access your PC instantly whenever you want to with Access your PC instantly whenever you want to with
devices that are simple to set-updevices that are simple to set-up & require minimal & require minimal maintenancemaintenance
Next Generation Device Next Generation Device PlatformPlatform
Pocket PC Ozone PlatformPocket PC Ozone Platform
Next Generation SmartphoneNext Generation Smartphone
Brief History of TimeBrief History of Time
Pocket PCPocket PC
April 00April 00 Oct 01Oct 01 H1 2002H1 2002
Pocket PCPocket PC20022002
Pocket PCPocket PCOzoneOzone
Win CE 3.0Win CE 3.0 Win CE .NETWin CE .NET(4.0)(4.0)
4.24.24.14.1SP 1SP 1Jan 02Jan 02June 00June 00
Embedded Embedded Visual Tools 3.0Visual Tools 3.0
Embedded Embedded Visual Tools 4.0Visual Tools 4.0
What’s New in Ozone?What’s New in Ozone?(Part 1)(Part 1) New OS version: Windows CE 4.2New OS version: Windows CE 4.2
Security – Trustworthy Computing InitiativeSecurity – Trustworthy Computing Initiative Trusted CE devices as part of a corporate Trusted CE devices as part of a corporate
networknetwork L2TP and IPSecL2TP and IPSec 802.11 Native AP support, including 802.1x, 802.11 Native AP support, including 802.1x,
TKIP, WEP rekeying, etcTKIP, WEP rekeying, etc IPv6 protocol and applicationsIPv6 protocol and applications
Improved pIE with IPv6 supportImproved pIE with IPv6 support MultimediaMultimedia
Windows Media 9 codes/DMO wrapperWindows Media 9 codes/DMO wrapper Real Time CommunicationsReal Time Communications
RTC IPv6 SupportRTC IPv6 Support Sync with latest MS Messenger technologies Sync with latest MS Messenger technologies
What’s New in Ozone?What’s New in Ozone?(Part 2)(Part 2) File System FiltersFile System Filters
Sit on top of the FS, intercept FS calls before FS Sit on top of the FS, intercept FS calls before FS handlinghandling
Useful for…Useful for… Encrypt / Decrypt; Compress / Uncompress; Encrypt / Decrypt; Compress / Uncompress;
Virus scan Virus scan Device managementDevice management
Configuration ManagerConfiguration Manager Delivery through: RAPI, CAB, XML, WAPDelivery through: RAPI, CAB, XML, WAP
Shell changesShell changes Background execution (e.g. screen off)Background execution (e.g. screen off)
PIEPIE HTML 4.01, XHTML, CSS, WML 2.0, Jscript 5.5HTML 4.01, XHTML, CSS, WML 2.0, Jscript 5.5
Messaging… Messaging…
Backwards CompatibilityBackwards Compatibility Goal is for 100% back compatGoal is for 100% back compat But, be aware:But, be aware:
New OS (major revision from 3.0)New OS (major revision from 3.0) Same MFC, rebuilt ATLSame MFC, rebuilt ATL COM objects are now free-threadedCOM objects are now free-threaded eVB/ADO runtimes have been rebuilteVB/ADO runtimes have been rebuilt Some CEMAPI constants no longer Some CEMAPI constants no longer
supportedsupported Few APIs migrated from one .h to anotherFew APIs migrated from one .h to another
Test, test, test!Test, test, test!
TodayTodayPPC 2002PPC 2002 SP 2002SP 2002
WinCE OSWinCE OS 3.03.0 3.03.0
eVCeVC 3.03.0 3.03.0
eVBeVB 3.03.0 --
VS.NETVS.NET 20032003 --
.NETCF.NETCF 1.01.0 --
MFCMFC XX --
ATLATL XX --
eVB eVB (runtime)(runtime)
XX --
SQL CESQL CE XX --
ADO.NETADO.NET XX --
MSMQMSMQ XX --
Web ServerWeb Server XX --
PPC 2002PPC 2002 SP 2002SP 2002 PPC OzonePPC Ozone SP v.NextSP v.Next
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*1.0*
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 --
Next GenNext Gen
Development ChoicesDevelopment ChoicesAPI Strengths
Microsoft Win32 (C / C++)
Smallest and fastest .exe files and DLLs. Lowest memory overhead. Required for device drivers, control panel applets, shell extensions No runtime required; Windows CE .NET is the runtime.
MFC / ATL(C++)
Object-oriented. Inheritance, Encapsulation, Polymorphism Classes support arrays, lists, and simplify data handling. Type safety Complete MFC/ATL source code ships with tools. Good tool support & wizards
.NET Framework (C# and Microsoft Visual Basic® .NET)
Well-designed programming interface. Object-oriented. Inheritance, Encapsulation, Polymorphism Classes support arrays, lists, hashtables, dictionaries, and stacks. Type safety Namespaces. Automatic garbage collection eliminates memory leaks. MSIL / CIL, provides binary portable of executable (.exe & .dll) Web service clients are quick and easy to write. Great support for handling XML. Great tool support — Forms Designer
Runtimes and ToolsRuntimes and Tools Pocket PC Ozone, Smartphone v.NextPocket PC Ozone, Smartphone v.Next
Native Code DevelopmentNative Code DevelopmenteVC++ 4.0 eVC++ 4.0 eVC++ 4.0 Service Pack 2 requiredeVC++ 4.0 Service Pack 2 requiredPPC: eVB/ADO runtime supported, PPC: eVB/ADO runtime supported,
but no eVB SDK/Toolsbut no eVB SDK/Tools Managed Code Development (C# / VB.Net)Managed Code Development (C# / VB.Net)
.NETCF in ROM.NETCF in ROMVisual Studio .NET 2003Visual Studio .NET 2003
All native and managed code All native and managed code development requires PPC/SP SDKsdevelopment requires PPC/SP SDKs
Native Code Native Code DevelopmentDevelopment Improved DebuggingImproved Debugging
JIT debugging (attach to dead process)JIT debugging (attach to dead process) Attach to already running processAttach to already running process Multithreaded application debuggingMultithreaded application debugging
Updated CompilersUpdated Compilers SEH and C++ exception handlingSEH and C++ exception handling STL (Standard Template Library)STL (Standard Template Library) Intrinsics (generate in-line code)Intrinsics (generate in-line code)
Updated Remote ToolsUpdated Remote Tools Call ProfilerCall Profiler Performance MonitorPerformance Monitor
Managed Code Managed Code DevelopmentDevelopmentVisual Studio .NET & .NET Compact Visual Studio .NET & .NET Compact FrameworkFramework Visual Studio .NET 2003Visual Studio .NET 2003
Provides all development tools for the Provides all development tools for the devicedevice
Includes Compact Framework CAB installIncludes Compact Framework CAB install Compact Framework in ROM Compact Framework in ROM
Pocket PC Ozone Pocket PC Ozone
More later…More later…
Ozone SDK (Beta)Ozone SDK (Beta)All you need to develop against Ozone…All you need to develop against Ozone… Plug-ins for eVC++ 4.0 (SP2)Plug-ins for eVC++ 4.0 (SP2) Plug-ins for Visual Studio .NET 2003Plug-ins for Visual Studio .NET 2003 All required headers / libs / etc. (x86/ARM)All required headers / libs / etc. (x86/ARM) Runtimes and components:Runtimes and components:
eVB runtimeeVB runtime HTTPD (Web Server)HTTPD (Web Server) MSMQMSMQ
Emulation imagesEmulation images Pocket PCPocket PC Pocket PC Phone EditionPocket PC Phone Edition Pocket PC Phone Edition Virtual RadioPocket PC Phone Edition Virtual Radio
Updated samples collectionUpdated samples collection Design guideDesign guide Reference documentationReference documentation
Tools vs. DevicesTools vs. Devices
SmartphoneSmartphone Pocket PCPocket PC Tablet PCTablet PC
Embedded Embedded ToolsTools
(eVC / eVB)(eVC / eVB)
YesYes
eVC++ OnlyeVC++ OnlyYesYes
.NET.NET
Yes Yes
(via Tablet (via Tablet SDK)SDK)
.NET CF.NET CF (future)(future) YesYes
ASP.NET ASP.NET Mobile Mobile
ControlsControls YesYes YesYes YesYes
Smart Device Smart Device ProgrammabilitProgrammabilit
yy
Smart Device Smart Device ProgrammabilitProgrammabilit
yy
ASP.NET Mobile ASP.NET Mobile ControlsControls
ASP.NET Mobile ASP.NET Mobile ControlsControls
Mobile Web Mobile Web BrowserBrowser
Mobile Web Mobile Web BrowserBrowser
.NET Device .NET Device ProgrammingProgrammingTwo approaches – one model, one toolTwo approaches – one model, one tool
.NET Compact .NET Compact FrameworkFramework
.NET Compact .NET Compact FrameworkFramework
Local CodeLocal CodeRemote Web PagesRemote Web Pages
Device Operating SystemDevice Operating SystemDevice Operating SystemDevice Operating System
Thin clientThin client Smart clientSmart client
Server sideServer side Broad device supportBroad device support Server side logicServer side logic No client installationNo client installation Browser or messaging UIBrowser or messaging UI Online onlyOnline only
Smart ClientSmart Client Target smart clientsTarget smart clients Client side logic & dataClient side logic & data UI flexibilityUI flexibility PerformancePerformance Offline & OnlineOffline & Online
Server SideServer Side
SmartSmartClientClient
??
Server Side or Smart Server Side or Smart ClientClientKey questionsKey questions
ASP.NET Mobile ASP.NET Mobile ControlsControls
ASP.NET Mobile ASP.NET Mobile ControlsControls
Mobile Web Mobile Web BrowserBrowser
Mobile Web Mobile Web BrowserBrowser
.NET Device .NET Device ProgrammingProgrammingServer Side DevelopmentServer Side Development
Remote Web PagesRemote Web Pages
Device Operating SystemDevice Operating SystemDevice Operating SystemDevice Operating System
Thin clientThin client
ASP.NET mobile controlsASP.NET mobile controls
Write-once mobile web pagesWrite-once mobile web pages From a single code base target multiple devicesFrom a single code base target multiple devices Separate code from presentation layerSeparate code from presentation layer
Support for a variety of devicesSupport for a variety of devices Web enabled Cell Phones, PDAs and PagersWeb enabled Cell Phones, PDAs and Pagers
Support multiple mark-up languagesSupport multiple mark-up languages WML1.1 (WAP); cHTML 1.0, and HTML 3.2WML1.1 (WAP); cHTML 1.0, and HTML 3.2
Customizable and extensible frameworkCustomizable and extensible framework Add new controls and support for new devicesAdd new controls and support for new devices
Smart Device Smart Device ProgrammabilitProgrammabilit
yy
Smart Device Smart Device ProgrammabilitProgrammabilit
yy
.NET Device .NET Device ProgrammingProgrammingClient Side DevelopmentClient Side Development
.NET Compact .NET Compact FrameworkFramework
.NET Compact .NET Compact FrameworkFramework
Local CodeLocal Code
Device Operating SystemDevice Operating SystemDevice Operating SystemDevice Operating System
Smart clientSmart client
.NET Compact .NET Compact FrameworkFramework Lightweight version of .NET FrameworkLightweight version of .NET Framework Designed for resource-constrained devicesDesigned for resource-constrained devices Compatible with VS.NET, C#, VB.NETCompatible with VS.NET, C#, VB.NET Runs applications securely on-deviceRuns applications securely on-device
High performance JIT compilerHigh performance JIT compiler Guarantees robustness and securityGuarantees robustness and security Highly interactive, offline, and networked Highly interactive, offline, and networked
experiencesexperiences Makes it easy to consume web servicesMakes it easy to consume web services
Tunable size and performanceTunable size and performance
SummarySummary
Mobile technology industry is Mobile technology industry is diverse, fast paced and growing very diverse, fast paced and growing very quickly, with no one device able to quickly, with no one device able to solve all problems.solve all problems.
Microsoft offers a rich suit of flexible Microsoft offers a rich suit of flexible software to cater for a wide variety software to cater for a wide variety of devices and solutions.of devices and solutions.
Visual Studio.NET provides a ‘state Visual Studio.NET provides a ‘state of the art’ development tools for of the art’ development tools for managed mobile solutions.managed mobile solutions.