PowerPoint

neversinkhurriedΚινητά – Ασύρματες Τεχνολογίες

12 Νοε 2013 (πριν από 3 χρόνια και 7 μήνες)

54 εμφανίσεις

© 2009 Research In Motion Limited

Methods of application development for mobile
devices

© 2009 Research In Motion Limited

Agenda

This course covers the following topics:


Introduction to developing applications for mobile
devices


Methods of application development for mobile
devices


Introduction to GPS and Wi
-
Fi® technology on
BlackBerry® smartphones

Agenda


Introduction to push technology


Data structures and memory management on mobile
devices


User interface design for mobile devices


BlackBerry themes and animated graphics


Security considerations for developing applications for
mobile devices

Methods of application development for mobile devices

Objectives:


List and briefly describe three methods for developing
mobile device applications.


Describe how Java®, web, and widget applications
differ.


Cite examples of Java, web, and widget applications.


Describe application design considerations and
limitations for Java, web, and widget application
development methods.

© 2009 Research In Motion Limited

© 2009 Research In Motion Limited

Java development

© 2009 Research In Motion Limited

Java development

Java applications:


Applications reside and run on the mobile device.


Applications for BlackBerry smartphone are written
in Java® ME.


Standalone applications do not require an Internet
connection.


Applications can support wireless features.

© 2009 Research In Motion Limited

Java development

Advantages of Java applications:


Flexibility


BlackBerry smartphone features


Peripheral devices


Application storage


Location
-
based services


Background threads


Bandwidth

© 2009 Research In Motion Limited

Java development
-

advantages

Flexibility:


Create any style, look, and function.


No requirements for look and behavior.


No requirements for where and how to store data.


Design consideration


Implement commonly used conventions for key
usage and the look of the UI to foster ease of use.

UI

user interface

Java development


advantages

BlackBerry smartphone features:


Integrate use of features in your application


Camera


Phone


Integrate native applications


Address book


Media player


BlackBerry® Maps

Java development


advantages

Peripheral devices:


Communicate with devices that have Bluetooth®
functionality.


Headsets


Printers


Writing devices


GPS transmitters

GPS

Global Positioning System

Java development


advantages

Application storage:


Store the application and its data directly on the
BlackBerry smartphone.


User can access the application at any time.

Java development


advantages

Location
-
based services:


Detect the location of the BlackBerry smartphone and
provide information for that location.


Example: create an application that shows the menus
of restaurants within two miles of the current location.

Java development


advantages

Background threads:


Processes run in the background, listening for events
or updates.


Allow users to run other applications while your
application carries out tasks.

Java development


advantages

Bandwidth:


Standalone applications require no bandwidth.


Java applications with wireless features require
bandwidth.


Design consideration


Send only the necessary data, and send data only
when it is required.


Use push technology to eliminate
request/response traffic.

Java development

Disadvantages of Java applications:


Skill requirements


Standards


Local storage


Application version control

Java development


disadvantages

Skill requirements:


Java is not as easy or intuitive to use as the web and
widget development methods.

Java development


disadvantages

Standards:


No existing framework to build on.


You must decide how to implement and present every
feature.


Design consideration


Implement features and functions that are already
familiar to users.

Java development


disadvantages

Local storage:


The BlackBerry smartphone has limited storage
capacity.


Design consideration


Create a balance between storing the application
locally (using local storage) and accessing features
and data over the wireless connection (using
bandwidth).

Java development


disadvantages

Application version control:


You may have to create different versions of the
application to support different device capabilities.


Application updates and patches must distributed to
individual users.

© 2009 Research In Motion Limited

Web development

Web development

Web applications:


Can reside on a content server; users access them
using browsers


Use the familiar browser interface


Support markup languages: HTML, XHTML, cHTML,
and WML version 1.3


Support scripting languages: JavaScript® version 1.5
(including Ajax support), ECMAScript™, and WML Script
version 1.2.1


Test applications with the BlackBerry Smartphone
Simulator and the BlackBerry® MDS Simulator

Web development

Advantages of web applications:


Skill requirements


Storage


Standards


Web signals


Application version control


Detection of device and capabilities

Web development


advantages

Skill requirements:


Web technologies are easy to learn.


You may already be familiar with them.


Your web application will look like other web
applications, so users will find it easy and intuitive to
use.

Web development


advantages

Storage:


All application information can be held on the content
server.


There is no need to deploy the application to the
client.


BlackBerry smartphone storage capacity is not an
issue with server
-
hosted web applications.

Web development


advantages

Standards:


Use of existing frameworks reduces development
effort.


Faster deployment


Focus on application features rather than
underlying functionality

Web development


advantages

Web signals:


Content providers push icons to subscribers’
BlackBerry smartphones.


When a user clicks the icon, it launches the browser
and automatically accesses the designated web
address.


New icons can overwrite existing icons to reflect a
change in status.


Example: a sports content provider pushes an
updated icon that indicates the latest score in a game.

Web development


advantages

Application version control:


Update applications directly at the source (content
server).


No need to distribute application updates or patches to
individual users.

Web development


advantages

Detection of device and capabilities:


Detect the device type and capabilities of individual
BlackBerry smartphones.


Use that information to present the appropriate
features or display modes.

Web development

Disadvantages of web applications:


Flexibility


Background threads


Offline use


Bandwidth

Web development


disadvantages

Flexibility:


Use of existing frameworks can limit options for look
and functionality.

Web development


disadvantages

Background threads:


Hosted web applications cannot work in the background
while users attend to other tasks.

Web development


disadvantages

Offline use:


BlackBerry smartphones must connect to the hosting
server to access hosted web applications.


It is the content provider’s responsibility to ensure
adequate storage capacity.

Web development


disadvantages

Bandwidth:


All interaction with a hosted web application occurs over
a wireless connection.


Design consideration


Avoid features that require large file transfers.


Minimize the bandwidth required for tasks.


It is the content provider’s responsibility to ensure
adequate bandwidth.

© 2009 Research In Motion Limited

Widget development

Widget development


Widgets are single
-
purpose applications.


Create widgets using web development tools.


Widgets reside on the mobile device and behave like
native Java applications.


Widgets can be standalone applications, or can use
an Internet connection to send and receive data.


BlackBerry widgets are based on the W3C® widget
specification.


Convert web application components into BlackBerry
widgets using the BlackBerry® Web Component
Package.

Widget development

Example:


The BlackBerry® Push Weather Clients widget
provides daily weather information.


Users choose the information source (AccuWeather or
The Weather Network).


Users choose the update method (text message or
browser channel).

Widget development

Advantages of widget applications:


Ease of use


Flexibility


Bandwidth


Reuse existing applications

Widget development


advantages

Ease of use:


Use highly familiar web technologies to build the same
types of applications normally created only in Java.


Because widgets are single
-
purpose applications, they
can be easier to use than web applications.

Widget development


advantages

Flexibility:


Widgets deliver features and web content specific to
the user and personalized to meet the user’s
requirements.


Design consideration


Allow users to configure the display method and
timing of information delivery.


Widgets can use location
-
based services (local maps,
local offers, currency converters, and weather
information).

Widget development


advantages

Bandwidth:


Widgets send a small amount of data to users.


Widgets typically require very little bandwidth.

Widget development


advantages

Reuse existing applications:


Leverage features that you have already created for
web applications.


Create widgets that pull in existing resources from
your content server.

Widget development

Disadvantages of widget applications:


Reliance on an Internet connection for hosted services


Less flexibility than Java applications


Single
-
purpose functionality

Methods of application development for mobile devices

Objectives review:


List and briefly describe three methods for developing
mobile device applications.


Describe how Java, web, and widget applications
differ.


Cite examples of Java, web, and widget applications.


Describe application design considerations and
limitations for Java, web, and widget application
development methods.

© 2009 Research In Motion Limited

© 2009 Research In Motion Limited