PocketPC Application Development 1 - PowerPoint PPT Presentation

1 / 48
About This Presentation
Title:

PocketPC Application Development 1

Description:

IO, collections, reflection, math, drawing. Connectivity ... Designer support. 27. PocketPC Application Development 1. Rich Controls. Smartphone. Pocket PC ... – PowerPoint PPT presentation

Number of Views:116
Avg rating:3.0/5.0
Slides: 49
Provided by: kell76
Category:

less

Transcript and Presenter's Notes

Title: PocketPC Application Development 1


1
PocketPC Application Development 1
2
Reference
  • Windows Mobile Developer Center
    http//msdn2.microsoft.com/en-us/windowsmobile/d
    efault.aspx
  • Includes developer tools and technical resources,
    such as white papers, training videos, samples
    and more.

3
Introduction
  • Java 2 Platform, Micro Edition (J2ME) is
    supported by most mobile phone vendor.
  • However, with mobile commerce growing into a
    multibillion-dollar industry, Microsoft is also
    interested in the mobile application development.
  • Microsoft's latest mobile commerce offering is
    the .Net Compact Framework (.Net CF) which
    targets for both PocketPC and smart phone.

4
A Typical PocketPC
5
PocketPC - Direct Connect to PC
6
.NET CF Design Goals
  • Target mobile and embedded devices
  • Portable subset of .NET Framework
  • No new compact namespaces
  • Visual Basic .NET and C compiler
  • Leverage Visual Studio .NET
  • Run managed .EXEs and .DLLs directly
  • Debug with Visual Studio .NET
  • Peacefully co-exist with host OS
  • call native code

7
Rich Client vs. Thin Client
8
Rich Client vs. Thin Client
  • Thin Client
  • Advantage
  • Support a broad range of devices
  • Browser access
  • Device differences not important
  • Disadvantage
  • Doesnt work offline
  • No local processing power
  • Limited user interface
  • Rich Client
  • Advantage
  • The best way to do online and offline
  • Takes full advantage of Pocket PC
  • Excellent integration with SQL Server CE
  • Powerful local processing and rich graphics,
    multimedia
  • Disadvantage
  • Limited device support

9
Core Microsoft Smart Device Technologies
  • Windows Mobile Devices
  • Different form factors (Pocket PC and Smartphone)
    to suit different application types and usability
    patterns
  • .NET Compact Framework
  • RAD for devices
  • Leverage existing .NET development skills to
    target devices

10
Development Environment Tools
Onscreen Device Emulators
ActiveSync 4.5 or later
SQL Server 2005 Mobile Edition
11
.NET Compact Framework Development Platform
  • Jan 2008
  • Microsoft Visual Studio 2005/2008, Standard
    Edition or above (Express Editions are not
    supported).
  • Windows Mobile 6 Professional/Standard Software
    Development Kits
  • ActiveSync 4.5
  • .NET Compact Framework v2 SP2
  • SQL Server 2005 Mobile Edition

12
Development ToolsVisual Studio 2005
  • Enhanced project wizard
  • Target Pocket PC or Smartphone
  • Enhanced designers
  • Emulator support
  • Based on ARM processor
  • Save multiple states
  • CAB and Setup projects
  • Integrated device and emulatordebugging
  • Remote tools
  • Process viewer, file viewer, heap walker, and
    more

13
Visual Studio 2005
  • To develop WM 6 applications, you need to
    download and install the Windows Mobile 6 SDKs
    for Pocket PC and Smartphone

14
Windows Mobile 6 SDK
  • Two versions Professional and Standard for
    different target platforms.
  • Windows Mobile 6 Standard SDK
  • for smartphone development
  • Windows Mobile 6 Standard (176x220 pixels - 96
    dpi)
  • Windows Mobile 6 Standard Landscape QVGA (240x320
    pixels - 131 dpi)
  • Windows Mobile 6 Standard QVGA (320x240 pixels -
    131 dpi)

15
Windows Mobile 6 SDK
  • Windows Mobile 6 Professional SDK
  • for PocketPC application development
  • Windows Mobile 6 Classic (240x320 pixels - 96
    dpi)
  • Windows Mobile 6 Professional (240x320 pixels -
    96 dpi)
  • Windows Mobile 6 Professional Square (240x240
    pixels - 96 dpi)
  • Windows Mobile 6 Professional Square QVGA
    (320x320 pixels - 128 dpi)
  • Windows Mobile 6 Professional Square VGA
    (480x480 pixels - 192 dpi)
  • Windows Mobile 6 Professional VGA (480x640
    pixels - 192 dpi)

16
What is the .NET CF?
  • Essentially, the .NET CF is an extended subset
    of the .NET Framework
  • Subset Some non-essential classes are not
    included
  • Extended Functionality specific to the Windows
    Mobile platform
  • High-level goal Extend the .NET developer
    platform to the Windows Mobile device platform

17
Supported in .NET CF
  • Common Base Classes
  • IO, collections, reflection, math, drawing
  • Connectivity
  • Networking, HTTP classes, calling XML Web
    services
  • Data Access
  • ADO.NET, SQL Server CE, SQL Server
  • XML
  • XmlDocument, XmlReader/Writer
  • Windows Forms

18
.NET vs .NET CF
  • No ASP.NET
  • No support for writing COM/ActiveX objects
  • Class libraries are a subset (about 25)
  • Different size and scalability characteristics
  • Compact Additions
  • IrDA support
  • SQL Server CE managed classes
  • Device-specific controls

19
Framework Size
  • Framework size
  • 1.35MB (ROM) on Windows CE .NET Device
  • Running RAM needs
  • 1 MB (depends on app)
  • Typical application sizes
  • 5 - 100 KB
  • Apps often smaller due to use of platform
    features (i.e. libraries) in the framework

20
Developing the User Interface
  • Three device categories within the Windows Mobile
    platform
  • Standard (Smartphone)
  • Classic (Pocket PC)
  • Professional (Pocket PC Phone Edition)
  • Smartphone does not support stylus entry
  • T9 input and key navigation
  • Screen layouts for Smartphone need special care

21
Developing the User Interface
  • Limited Screen Real Estate
  • Pocket PC, Phone Edition
  • VGA 480 x 640
  • QVGA (Most Common) 240 x 320
  • Smartphone (Smaller Screen)
  • QVGA 320 x 240
  • Standard (Most Common) 170 x 220
  • UIs should be designed and tested for usability
  • Use the features of the .NET Framework!
  • Standard controls optimized for mobile devices
  • Create custom controls that you can re-use across
    projects

22
User Interfaces on the latest platform
  • Windows Mobile 6
  • Supports
  • Landscape and portrait orientations
  • HiDPI resolution (VGA)
  • Developers need to make sure their applications
    are orientation- and resolution-aware
  • For more information
  • MSDN Mobile and Embedded Developer Center
  • http//msdn.microsoft.com/mobility

23
Data and Communication
  • Smart Device Applications need data
  • Web Services
  • Applications can communicate with services
    provider with no modification to servers
  • SQL Server CE
  • Provides rich, robust, secure data source for
    smart devices
  • Rich control over synchronization with back end
    SQL Server

24
Accessing Data from a Smart Device
HTTPS
IIS Server
External Web Services
Other Internal Systems
Pocket PC
Access SQL Server through IIS, using SQL Server
CE ISAPI filter
SQL Server Database
25
Basic Data Types
  • Base data types are the same as the desktop
  • Formatting
  • StringBuilder
  • More efficient when string length changes
  • Arrays
  • Value types (Int16, Int32, Int64, UInt16, etc.)
  • Floats and doubles
  • Collections
  • Classes for storing sets of objects
  • Arraylists and Hashtables

26
Windows Forms Support
  • Layout
  • Manual positioning
  • Drawing
  • Polygons, lines, arcs, ellipses, rectangles
  • JPEG, BMP images
  • Text and images
  • TrueType bitmap fonts on Mobile
  • Most desktop controls
  • Designer support

27
Rich Controls
Pocket PC
  • Smartphone

28
DateTimePicker
29
DocumentList
30
Picture Selection Dialog
31
Notification Bubble
32
UserControl
  • Easily build and reuse your own custom controls
  • Well integrated into design time experience

33
More Controls
  • MonthCalendar
  • LinkLabel
  • Help
  • WebBrowser
  • DataContainer
  • New on Smartphone
  • Datagrid
  • Textbox IME switching
  • Enable multiple menu items on left softkey

34
Screen OrientationWhat is it?
Landscape
Square
Portrait
35
Screen OrientationNo awareness
Landscape
Portrait
36
Screen OrientationDesign considerations
  • User can rotate at runtime
  • Three main strategies
  • Resize content
  • Relayout content
  • Change content

37
Screen OrientationApplication UI
Technique 1 Resize your content
38
Screen OrientationApplication UI
Technique 2 Relayout your content
39
Screen OrientationApplication UI
Technique 3 Change your content
40
Screen OrientationApplication UI
Technique 3 Change your content
41
Simple Solution - Resize
  • Using the anchor property to control the layout
  • Other methods may need to determine the screen
    orientation (by comparing width and height) and
    recompute the location and size of controls.

42
Screen ResolutionWhat is it?
96 DPI
131 DPI
43
Screen ResolutionDesign considerations
  • Physical screen size stays the same
  • Pixel size gets smaller
  • Keep text BIG and readable
  • Keep tap targets easy to hit
  • Consistent user experience

44
Screen ResolutionBitmaps and icons
  • Scaling up bitmaps at runtime looks clunky
  • Scaling them down is even worse
  • Pixels drop out
  • SolutionBuild bitmaps and icons for each DPI
    you support

45
Screen ResolutionCurrent support table
46
Softkeys
Smartphone
Pocket PC
  • New for Pocket PC
  • Well-tested and well-loved on phones
  • Why? One-handed navigation
  • Brings Pocket PC and Smartphone closer together

47
PocketPC vs J2ME
  • Due to its strong cross-platform capability and
    network connectivity, J2ME is best for consumer
    use.
  • e.g. Booking Movie Ticket, Games, On-line Stock
    Quote etc.
  • Pocket PC is more suitable for business use.
  • e.g. Food ordering system, Field sales system,
    etc.
  • Why? Give at least 3 reasons.

48
J2ME vs .NET CF
Write a Comment
User Comments (0)
About PowerShow.com