1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief...
-
Upload
esther-gaines -
Category
Documents
-
view
222 -
download
0
Transcript of 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief...
![Page 1: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/1.jpg)
1
An Overview Of Microsoft's .NET Mobility Technologies
Presentation By:
Derek Ferguson, Chief Technology Evangelist
![Page 2: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/2.jpg)
2
Presentation Overview
• The .NET Compact Framework
• The Mobile Internet Controls Runtime
![Page 3: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/3.jpg)
3
Mobile .NET in a nutshell
.NET Framework.NET Framework
Mobile InternetControls Runtime
Mobile InternetControls Runtime
Mobile Web Browser
Mobile Web Browser
.NET CompactFramework
.NET CompactFramework
CAB FileCAB File
![Page 4: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/4.jpg)
4
Development Computer Requirements
• Hardware• Pentium III @ 600 MHz
• 150 MB Hard Disk Space
• 800 x 600 @ 256 colors
• 256 MB RAM
• Software• Windows XP or 2000
• ActiveSync 3.5
![Page 5: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/5.jpg)
5
Device Requirements
• Operating System• Pocket PC
• Pocket PC 2002
• Windows CE .NET
• RAM Space• 2 MB
![Page 6: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/6.jpg)
6
Architecture
![Page 7: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/7.jpg)
7
Application Domains
• Benefits of OS processes without the overhead• Fault isolation
• Security
• Performance
• Partial support under the Compact Framework• Can create multiple application domains
• No domain-neutral code area
![Page 8: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/8.jpg)
8
Security
• An open programming environment is assumed…• No role-based security
• No zone-based security
• No AllowPartiallyTrustedCallersAttribute
• No declarative permission requests
• pInvoke can execute whatever native code it likes
• You can, however, verify code identity…• Assemblies can be given strong names before deployment
• Assembly names can be verified at run time
![Page 9: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/9.jpg)
9
Tools
• C# is nearly identical
• Visual Basic is different• /netcf switch required to target the Compact Framework syntax
• /sdkpath switch required to point to…‒ mscorlib.dll‒ microsoft.visualbasic.dll
• Debugging is only possible from within the VB device project
![Page 10: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/10.jpg)
10
Application Types
• Windows Applications
• Class Libraries
• Windows Control Libraries
• Console Applications (Windows CE only)
![Page 11: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/11.jpg)
11
Debugging
• The Emulators• Run real Windows CE bits
• Still x86 processors
• Real Devices• USB or serial connections are OK
• Ethernet or 802.11 are better
• In either case…• No way to debug from managed into unmanaged
• No edit and continue
• No attaching to existing processes
• Need a “Loopback Adapter” before VS.NET 2003
• Map a shared drive to move files
![Page 12: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/12.jpg)
12
What you have, and what you don’t have…
SystemSystem
System.DataSystem.Data System.XmlSystem.Xml
System.WebSystem.Web
GlobalizationGlobalization
TextText
SecuritySecurity
CollectionsCollections
ResourcesResources
ReflectionReflection
NetNet
IOIO
ThreadingThreading
DiagnosticsDiagnostics
ServiceProcessServiceProcess
ConfigurationConfiguration
DesignDesign
ADO.NETADO.NET
SqlServerCeSqlServerCe
SqlClientSqlClient
Xslt/XPathXslt/XPath
XmlDocumentXmlDocument
RuntimeRuntimeInteropServicesInteropServices
RemotingRemoting
SerializationSerialization
SerializationSerialization
ConfigurationConfigurationSessionStateSessionStateCachingCaching
ServicesServicesDescriptionDescription
DiscoveryDiscovery
ProtocolsProtocols
UIUIHtmlControlsHtmlControls
WebControlsWebControls
System.DrawingSystem.Drawing
ImagingImaging
Drawing2DDrawing2D PrintingPrinting
System.WinFormsSystem.WinForms
DesignDesign ComponentModelComponentModel
Reader/WritersReader/Writers
![Page 13: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/13.jpg)
13
Demo #1
A mobile Web Service client
![Page 14: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/14.jpg)
14
Question & Answer
![Page 15: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/15.jpg)
15
Windows CE Fundamentals
• One of Microsoft’s three flavors of Windows for devices• Windows CE and CE.NET are for devices
• Windows NT Embedded and XP Embedded for “serious” appliances
• Really a smorgasbord of OS components• OEM’s choose their favorite bits
• Platform Builder is the tool for doing the choosing
• Microsoft sets standards or CE “flavors” – such as Pocket PC OS• Some components must be chosen under Platform Builder
• Some hardware specifications must be met
• OEM’s are free to add whatever else they like
![Page 16: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/16.jpg)
16
Windows CE Popularity
• Pocket PC is the Windows CE poster child• Already beaten Palm OS in terms of PDA revenues
• iPaqs are, by far, the leading Pocket PCs
• Twice the cost of a Palm device – but 10 times the functionality!
• CE.NET is the champion of new computing• These devices will be first to ship Compact Framework (Beta 1)
• Handheld PCs and Palm PCs were also Windows CE
![Page 17: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/17.jpg)
17
Windows CE Web Development
• Pocket Internet Explorer is the CE browser
• First version was very limited, but you don’t see it much
• Next version of Pocket PC’s had good functionality:• Some DHTML support
• HTML 3.2
• Integrated with some custom Java implementations
• ECMAScript
• Newest version on Pocket PC 2002 is even better:• ActiveX downloading
• Some ability to be hosted in other applications
![Page 18: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/18.jpg)
18
i-Mode Fundamentals
• Developed by NTT DoCoMo
• Involved investing in more powerful phones
• Marketed exclusively in Japan
• Only now starting to show up in some US and Europe markets
![Page 19: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/19.jpg)
19
i-Mode Popularity
• Over 20 million subscribers in Japan since 1996
• Cultural differences help• Long commutes
• Expensive dedicated Internet connections
• One of the few wireless services to turn a good profit
![Page 20: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/20.jpg)
20
i-Mode Web Development
• Compact HTML• Medium-sized subset of HTML 3.2
• Specification is on-line…‒ http://www.w3.org/TR/1998/NOTE-compactHTML-19980209/
• All HTML is well-formed XML in this standard
• Only one font and one color (black)
• Frames and Tables
• Images
• All kinds of INPUT tags (including file uploads)
• Links and clickmaps
• Have to put your content on the right network for access
![Page 21: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/21.jpg)
21
WAP Fundamentals
• Direct successor to the very first markup language for mobile devices – HDML
• HDML was developed by Phone.com, which merged with Software.com to become OpenWave (www.openwave.com)
• HDML was a subset of HTML, but introduced the concept of “cards”
• WAP was created as HDML evolved and became an “open standard” (www.wapforum.org)
• WAP consists of many parts:• WDP – Transport Layer
• WTLS – Security Layer
• WTP – Transaction Layer
• WSP – Session Layer
• WAE – Application Layer
![Page 22: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/22.jpg)
22
WAP Popularity
• At the end of 2000, WAP looked like the “next big thing”
• Unfortunately:• WAP’s markup language (WML) is very restrictive
• Using software on WAP devices has failed to appeal to US culture
• WAP security is typically insufficient
• By the end of 2001, people were commonly asking: “Is WAP crap?”
![Page 23: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/23.jpg)
23
WAP Web Development
• WML is the markup language sent from servers to WAP devices
• 100% XML
• A single WML page can contain multiple screens, known as “cards”• This dramatically reduces number of server hits and latency
• Because XML describes data rather than presentation, WML offers very little in the way of formatting
• Input buttons will be mapped the way that a given device deems appropriate under various circumstances
• WBMP is the only supported image format
![Page 24: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/24.jpg)
24
Fundamental controls
• MobilePage
• Form
• Label
• Textbox
• Command
![Page 25: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/25.jpg)
25
System Requirements
• Windows NT 4, 2000, or XP
• .NET Framework
![Page 26: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/26.jpg)
26
Validators
• CompareValidator
• RangeValidator
• RegularExpressionValidator
• RequiredFieldValidator
• CustomValidator
![Page 27: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/27.jpg)
27
Special Controls
• Calendar
• Link
• Phone Call
• Ad Rotator
• TextView
![Page 28: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/28.jpg)
28
Lists
• List
• SelectionList
• ObjectList
![Page 29: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/29.jpg)
29
Error Handling
• Error messages will be automatically formatted for mobile devices
• Mobile device errors only show:• Exception raised
• Method that raised the exception
• MICR lies about the HTTP response code when it has to.
• To use custom error pages with WAP, you must specify UseFullyQualifiedRedirectURL in web.config
![Page 30: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/30.jpg)
30
Debugging
• Same as any other ASP.NET application
• No client-side breakpoints in VS.NET
• In web.config, “debug” attribute of “compilation” node:• True for debugging
• False for performance
• Tracing:• Can be enabled
• Won’t show up on mobile devices
• Will show up when viewed separately with Internet Explorer
![Page 31: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/31.jpg)
31
Summary
• .NET provides two main technologies for mobile computing
• The .NET Compact Framework• Provides a platform for code you can take with you
• Has some very steep device resource requirements
• Complete UI flexibility
• The MICR• Adapts Web markup to differing device requirements
• Requires a constant Internet connection
• Limited UI richness
![Page 32: 1 An Overview Of Microsoft's.NET Mobility Technologies Presentation By: Derek Ferguson, Chief Technology Evangelist derek.ferguson@XB.com.](https://reader035.fdocuments.in/reader035/viewer/2022062221/56649ddd5503460f94ad5dfc/html5/thumbnails/32.jpg)
32
Demo #2
A Mobile Web Application