Transcript PowerPoint

Introduction to BlackBerry
Smartphone Web Development
—Web development tools for
mobile devices
Trainer name
Date
© 2009 Research In Motion Limited
v1.00
Agenda
In this course, you will cover the following topics:
– Introduction to Mobile Device web development
– Web development tools for mobile devices
– The BlackBerry® Infrastructure
– Optimizing Web Content for Mobile Device Browsers
– Introduction to Browser Push
– Widgets
© 2009 Research In Motion Limited
Introduction to BlackBerry smartphone web development
Objectives
– Describe web development tools for mobile devices
such as:
• BlackBerry® Web Plug-in for Eclipse®
• BlackBerry® Web Plug-in for Microsoft® Visual
Studio®
Introduction to BlackBerry smartphone web development
Objectives (cont)
– Compare and contrast web development options
• List the various languages
• List and explain the various environments
BlackBerry Web Plug-in for Eclipse
© 2009 Research In Motion Limited
BlackBerry Web Plug-in for Eclipse
What is it?
– New addition to BlackBerry® web development tools
– Extension for existing Eclipse® development
environment that provides tools for:
• Profiling data
• Debugging and testing code
• Enabling development of optimized Java®
applications for BlackBerry smartphones
– Includes a BlackBerry Smartphone Simulator to test
content immediately
© 2009 Research In Motion Limited
BlackBerry Web Plug-in for Eclipse
Debugging enhancements
– Support for debugging web projects with BlackBerry
Smartphone Simulators
– Set breakpoints on JavaScript® code
– Seamless integration into debug, variables, and
expressions views
© 2009 Research In Motion Limited
BlackBerry Web Plug-in for Eclipse
Profiling enhancements
– Visibility into the content of XMLHttpRequests and
response data
– Visibility into data traffic for web-based content,
including elements such as images, CSS, JavaScript,
and HTML
– Reporting on time-to-load for web-based content,
including elements such as images, CSS, JavaScript,
and HTML
CSS cascading style sheets
HTML Hypertext Markup Language
© 2009 Research In Motion Limited
BlackBerry Web Plug-in for Eclipse
Features
– Support for multiple BlackBerry® Device Software
versions
– Code assist integration
– Extended Java debugging
– Preprocessing support
– JSR integration
– Support for existing Java libraries
– Application security
© 2009 Research In Motion Limited
JSR Java Specification
Request
BlackBerry Smartphone Simulator
What is the BlackBerry Smartphone Simulator?
Enables loading and testing of web pages in the BlackBerry®
Browser
– Debug web pages
– Test web pages
– View profiling data for
project resources
– View the contents of AJAX calls
AJAX Asynchronous JavaScript and XML
© 2009 Research In Motion Limited
Debugging web applications in Eclipse
1. Open the JavaScript or HTML file you wish to debug from
the package explorer.
2. Place a breakpoint inside the JavaScript.
3. Invoke the JavaScript code to hit the breakpoints and
step through the code.
4. When a breakpoint has been hit, you have control of the
debugging process.
© 2009 Research In Motion Limited
BlackBerry Web Plug-in for Microsoft
Visual Studio
© 2009 Research In Motion Limited
BlackBerry Web Plug-in for Microsoft Visual Studio
What is it?
– Provides tools for profiling, debugging, and testing code
within the Microsoft® Visual Studio® development
environment.
– Use familiar tools for web development while working
with the plug-in to develop code and test it in the
BlackBerry Browser.
– Set breakpoints, debug, and step through linked-in and
inline JavaScript in ASP.NET projects.
© 2009 Research In Motion Limited
BlackBerry Web Plug-in for Microsoft Visual Studio
– The BlackBerry Browser web page in the BlackBerry
Smartphone Simulator updates as you run through the
code.
– You can download and install multiple BlackBerry
Smartphone Simulators for use with this plug-in.
– Each screen is designed using a drag-and-drop
approach to populate a form with form controls, such as
buttons and fields.
– Transitions between forms can be triggered using the
Properties window in the UI or script.
UI user interface
© 2009 Research In Motion Limited
BlackBerry Web Plug-in for Microsoft Visual Studio
– Event-handling is done by creating JavaScript functions
assigned to the control’s events in the Properties
window.
– The plug-in uses JavaScript for its scripting language.
– It supports Microsoft® Intellisense®, a form of automatic
code completion common to Microsoft Visual Studio.
© 2009 Research In Motion Limited
BlackBerry Web Plug-in for Microsoft Visual Studio
Features
– Debug web pages
– Test web pages using the BlackBerry Smartphone
Simulator
– View profiling data for project resources
– View the contents of AJAX calls
– Assemble applications from a set of form controls,
classes, collections, and messages
© 2009 Research In Motion Limited
BlackBerry Web Plug-in for Microsoft Visual Studio
Features (cont)
– Supports the four following types of classes:
• User-defined
• Discovered
• Built-in
• JavaScript
– Supports collections (classes encapsulated in a
collection container), data collections, and arrays
– Does not support database tables
© 2009 Research In Motion Limited
BlackBerry Web Plug-in for Microsoft Visual Studio
Forms
– You can use forms to arrange form controls of
BlackBerry® MDS Runtime applications
– You can assign a script to each control event
– You can use button and menu item controls to trigger
transitions to another form
– Form controls include labels, buttons, fields, layout
panels, repeaters, and menu items
MDS Mobile Data System
© 2009 Research In Motion Limited
BlackBerry Web Plug-in for Microsoft Visual Studio
Messages
– You can use messages to communicate application data
across wireless networks between the client application
on the BlackBerry smartphones and the data source
Debugging web applications in Microsoft Visual
Studio
Debugging process
1. Open the JavaScript or HTML file you want to debug
from the Script Documents project.
2. Index.htm opens in your code view. This represents the
current live view that has been pulled from the web
server.
3. You can place a breakpoint anywhere inside the
JavaScript.
© 2009 Research In Motion Limited
Debugging web applications in Microsoft Visual
Studio
4. After you place breakpoints, you must invoke the
JavaScript code to hit the breakpoints and step through
your code.
5. After a breakpoint has been reached, you have full
control over the debugging environment.
Web development languages
<Course code>
© 2009 Research In Motion Limited
Comparison of Microsoft.Net and Java
Microsoft.Net
Java
Built on C# programming
language—C# language combines
elements of C, C++, and Java and
adds metadata tags for component
development.
Built on Java programming
language.
ASP+—ASP+ uses Visual Basic,
C#, and other languages for code
snippets. All get compiled into native
code through the common language
runtime. ASP+ is a new version of
ASP. It supports ASPs compiling
into the common language runtime.
JSP—Server Pages use Java code
(snippets or JavaBean references),
compiled into Java bytecodes
(either on-demand or batchcompiled, depending on the JSP
implementation).
ASP Active Server Pages
JSP Java Server Pages
© 2009 Research In Motion Limited
Comparison of Microsoft.Net and Java
Microsoft.Net
Java
IL Common Language Runtime—
Microsoft.Net common language
runtime permits code in multiple
languages to use a shared set of
components on Windows.
Java Virtual Machine and CORBA
IDL and ORB—Java's Virtual
Machine specification allows Java
bytecodes to run on a JVMcompliant platform. CORBA allows
code in multiple languages to use a
shared set of objects on any
platform with an ORB available.
Win Forms and Web Forms—Win
Forms and Web Forms RAD
development are supported through
the Microsoft Visual Studio IDE.
Java Swing—Swing support is
available in many Java IDEs and
tools.
IDE Integrated Development Environment
RAD Rapid Application Development
© 2009 Research In Motion Limited
Comparison of Microsoft.Net and Java
Microsoft.Net
Java
Runs on Microsoft® Windows
Cross-platform
Microsoft.Net provides clientbuilding tools to bridge Java and
Microsoft.Net for application
interoperability.
Java portability suits business rules,
Java Server Pages, and Enterprise
JavaBeans permitting application
code to run on different types of
hardware.
Microsoft.Net is newer than Java
and tools may not be readily
available, although it permits
developers to program in more than
20 languages, including Cobol;
suitable for legacy environments.
Tools and components are more
readily available.
© 2009 Research In Motion Limited
Comparison of Microsoft.Net and Java
Microsoft.Net
Java
ADO+ and SOAP-based Web
Services—ADO+ is built on XML
data interchange between remote
data objects and layers of multitier
applications on top of HTTP
(SOAP). Microsoft.Net's web
services tend to use SOAP
messaging models.
JDBC, EJB, JMS, and Java XML
Libraries (XML4J, JAXP)—With EJB
and JDBC, the developer decides
the data interchange protocol, which
can operate on top of either HTTP,
RMI/JRMP, or IIOP.
ADO
SOAP
JDBC
EJB
JMS
HTTP
ActiveX Data Objects
Simple Object Access Protocol
Java DataBase Connectivity
Enterprise JavaBeans
Java Message Service
Hypertext Transfer Protocol
RMI
JRMP
JAXP
IIOP
XML
Remote Method Invocation
Java Remote Method Protocol
Java API for XML Processing
Internet Inter-ORB Protocol
Extensible Markup Language
Comparison of Microsoft.Net and Java
Microsoft.Net
Java
Ease of use for building GUIs, which
deliver content to web browsers;
suitable for building low-cost rapidly
developed applications.
Suitable for complex applications
with many business rules. It has
more features for session
management, fail-over, and load
balancing.
Least expensive option—
Microsoft.Net ships with a built-in
application server.
More expensive option—Javabased application servers are more
costly per computer.
GUI Graphical User Interfaces
© 2009 Research In Motion Limited
JNBridgePro
What is it?
– JNBridgePro is a tool used to bridge Java applications to
Microsoft.Net applications and vice-versa using objects
and classes.
– Use JNBridgePro to build applications that run over the
Internet using HTTP/SOAP.
– JNBridgePro includes plug-ins for Eclipse and Microsoft
Visual Studio.
© 2009 Research In Motion Limited
Using AJAX to improve mobile applications
What is it?
– AJAX enhances mobile web sites by retrieving
information outside a web page to update it in real time.
– Provides an interactive way of sharing data and
promoting interoperability using the XMLHttpRequest
command, which is supported by BlackBerry
smartphone software version 4.6.
– Use the XMLHttpRequest object to transfer data
between the BlackBerry Browser and the web server
without reloading the entire web page.
© 2009 Research In Motion Limited
Web development environments
<Course code>
© 2009 Research In Motion Limited
Comparison of Eclipse and Microsoft Visual Studio
Eclipse
Microsoft Visual Studio
Supports Java; supports multiple
languages like Ruby and C++ with
the use of plug-ins
Supports C/C++/Microsoft.Net
Has an open extensibility
architecture with a free open source
Java IDE
Has a closed architecture
Is available on UNIX and Microsoft
operating systems
Is available on Microsoft Windows
operating system
Java IDE Java Integrated Development Environment
© 2009 Research In Motion Limited
Comparison of Eclipse and Microsoft Visual Studio
Eclipse
Microsoft Visual Studio
Uses a single workspace directory
that contains all projects
Organizes files using a hierarchical
structure with directories, folders,
and files
Workspace is a folder in the
Workspace lists projects with their
filesystem with a metadata subfolder dependent information such as
containing workspace settings and
configurations and version control
other information
Comparison of Eclipse and Microsoft Visual Studio
Eclipse
Microsoft Visual Studio
Project structure must correspond to Files do not have to correspond to file
file layout in the underlying file
system folders. You can add files to a
system.
project in different directories and a
reference to the new file is recorded.
Uses a linked output folder that
points to a directory on a local
computer.
Sets the intermediate directory to a
local directory.
Has a local history feature that
records any file changes. Deleted
files can be restored from local
history.
Does not have a local history feature.
Has multiple project types (Java and Has a single project type (C++/C#/J#).
Eclipse WTP).
WTP Web Tools Platform
© 2009 Research In Motion Limited
Comparison of Eclipse and Microsoft Visual Studio
Eclipse
Microsoft Visual Studio
Has an automatic build feature to
determine compilation errors and
runs stand-alone programs.
Has a build command and uses a
command-line structure.
Uses launch configurations to
collect the parameters used to
launch an application. You can have
separate launch configurations.
Generates a single executable per
project and permits different launch
parameters, such as command-line
arguments, for different project
configurations
Allows multiple entry points at
compile time. The entry point is
determined on the command line
when the program is launched.
Has one entry point per executable,
which is determined at link time.
© 2009 Research In Motion Limited
Comparison of Eclipse and Microsoft Visual Studio
Eclipse
Microsoft Visual Studio
Has no debug mode—just the
debug perspective
Has a debug mode
Has a Update Manager to install
updates
Has an Add-in Manager to install
updates
Can run eclipse.exe -clean at the
command line to rebuild most
information
Can reset program to default state
by typing devenv/setup at the
command prompt
Has a bug-tracking system called
Has a Microsoft feedback feature on
Eclipse Bugs®, which permits you to the Microsoft® Connect web site for
report bugs
customer support
© 2009 Research In Motion Limited
Summary
<Course code>
© 2009 Research In Motion Limited
Summary
BlackBerry Web Plug-in for Eclipse
– An extension for an existing Eclipse development
environment that provides developers with tools for
profiling, debugging, and testing code designed for the
BlackBerry Browser within the Eclipse environment
© 2009 Research In Motion Limited
Summary
BlackBerry Web Plug-in for Microsoft Visual Studio
– Provides tools for profiling, debugging, and testing code
within the Microsoft Visual Studio development
environment
– Use familiar tools for web development with this
BlackBerry plug-in to further develop code and test it in
the BlackBerry Browser
Summary
– To promote Java and Microsoft.Net interoperability and
improve your web site, consider the use of JNBridgePro
and AJAX.
– Microsoft Visual Studio is built on C/C++/Microsoft.Net
and Eclipse is built on Java programming language.
– Eclipse is a universal IDE introducing more generic and
customizable features and is also available on more
operating systems than Microsoft Visual Studio.
© 2009 Research In Motion Limited
© 2009 Research In Motion Limited