V0.01 © 2009 Research In Motion Limited Push technology for Java applications Trainer name Date

Preview:

Citation preview

v0.01© 2009 Research In Motion Limited

Push technology for Java applications

Trainer name

Date

736-01827-123 © 2009 Research In Motion Limited

Revision history

Document version Date Updated by Description of revision

0.1 Angela-Jo Griffin Initial content creation

© 2009 Research In Motion Limited

Agenda

In this course, you will cover the following topics:

– Introduction to Java® application development for mobile devices

– Understanding Java APIs for mobile devices

– Developing a user interface for mobile devices

– Push technology for Java applications

– Introduction to threading and background processing

– Network communication for mobile devices

– Testing and debugging an applicationAPI application programming interface

Push technology for Java applications

© 2009 Research In Motion Limited

Introduction to push technology for Java applications

Objectives:

– Describe push technology

– Describe client/server push Java applications for a mobile device such as a BlackBerry smartphone

– List and explain the advantages and disadvantages of push technology for mobile devices

– Write a basic client/server push Java application for a mobile device such as a BlackBerry smartphone

Introducing push technology

© 2009 Research In Motion Limited

Introducing push technology

Push technology:

– The ability to proactively deliver, or push, data to BlackBerry smartphones

© 2009 Research In Motion Limited

Introducing push technology

Push applications for the BlackBerry® Enterprise Server:

– Use the BlackBerry MDS Connection Service component of the BlackBerry Enterprise Server to deliver data or web content directly to any BlackBerry smartphone

– Users do not need to request or download data

– The push application, in conjunction with the BlackBerry MDS Connection Service, delivers the data as soon as it is available

Introducing push technology

Two applications are required to push data to a BlackBerry smartphone:

– Server-side push application that submits the push request

– Client-side listener application that listens for incoming push messages

Introducing push technology

Server-side push application:

– Designed to send HTTP POST requests to the BlackBerry MDS Connection Service on the web server listen port

– The HTTP POST requests contain delivery parameters and the data to be pushed

– The BlackBerry MDS Connection Service then delivers the data to a specified port number on the BlackBerry smartphones within a specified time frame

HTTP Hypertext Transfer Protocol

MDS Mobile Data System

Introducing push technology

Client-side listener application:

– Listens for data to be delivered to its specific port number

– You can create a custom BlackBerry MDS Java Application designed to listen for and handle pushed data

– You can push web content to the BlackBerry® Browser

– The BlackBerry Browser has an integrated listener thread

© 2009 Research In Motion Limited

Introducing push technology

The BlackBerry MDS Connection Service:

– Manages the flow of pushed data from various push applications

– Sends the data to the BlackBerry smartphone using the same encrypted channel that is used for data communication between the BlackBerry smartphone and the BlackBerry Enterprise Server

– Pushes data to individual users or to user groups

Client/server push application

© 2009 Research In Motion Limited

Client/server push application

Client/server push applications:

– Consist of a custom client BlackBerry smartphone application and a server-side application

– Push content to the client BlackBerry smartphone

– Provide more control than browser push applications

– Provide more flexibility regarding the type of data sent and how the BlackBerry smartphone processes and displays the data

© 2009 Research In Motion Limited

Client/server push application

Advantages:

– Store data on the BlackBerry smartphone

– Make network connections based on the information that comes in

– Integrate the data with BlackBerry applications

© 2009 Research In Motion Limited

Client/server push application

Server-side push applications:

– Make requests to the BlackBerry MDS Connection Service to push data to specified BlackBerry smartphone users

Requests include push delivery parameters that:

– Uniquely identify the push request

– Inform the BlackBerry MDS Connection Service which BlackBerry smartphones to send the data to

– Provide additional delivery information, such as the priority and the reliability level of the push request

© 2009 Research In Motion Limited

Client/server push application

Supported push formats:

– PAP push format

– RIM® push formats

PAP Push Access Protocol

RIM Research In Motion

© 2009 Research In Motion Limited

Client/server push application

PAP push format:

– Sends an HTTP POST request to the BlackBerry MDS Connection Service.

– The request contains a MIME multipart message that includes two components

• An XML-based PAP control entity that defines the delivery parameters

• The data to be pushed

– The PAP push format is an open standard developed by the Open Mobile Alliance. MIME Multipurpose Internet Mail

Extensions

XML Extensible Markup Language

© 2009 Research In Motion Limited

Client/server push application

RIM push format:

– Sends an HTTP POST request to the BlackBerry MDS Connection Service

– Pushes content as a byte stream

– The destination port is specified within the URL of the pushed content, and the destination users and other delivery parameters are specified in HTTP headers included with the request

– Is a proprietary push format supported exclusively by the BlackBerry MDS Connection Service and BlackBerry smartphone

URL Uniform Resource Locator

© 2009 Research In Motion Limited

Client/server push application

A push request consists of:

– The data to be pushed

– A set of delivery parameters

© 2009 Research In Motion Limited

Client/server push application

Both the PAP push and RIM push formats support the following features:

– Reliable push requests

– Deliver-Before time stamp

– Deliver-After time stamp

© 2009 Research In Motion Limited

Client/server push application

PAP push service also supports the following features:

– Push cancellation

– Push status query

© 2009 Research In Motion Limited

Client/server push application

Client-side listener applications

– Client-side listener applications listen for incoming data

– You can create a custom BlackBerry MDS Java Application that contains a listening thread that listens for incoming data on a specified port

– To create a Java-based push application architecture, you must create both the custom client-side application that receives the pushed data and the server-side application that makes the push request

© 2009 Research In Motion Limited

Client/server push application

Push applications provide a wider range of applications that enhance the BlackBerry experience for BlackBerry smartphone users.

You can use push applications for time- and location-sensitive alerts, such as:

– News and weather

– Banking and stocks

– Medical services

– Sports scores

– Backup notifications

Advantages and disadvantages of pushtechnology for mobile devices

© 2009 Research In Motion Limited

Advantages and disadvantages of push technology formobile devices

Advantages:

– Immediacy

– Efficiency

– Reduced latency

– Longer battery life

– Shorter learning curve

© 2009 Research In Motion Limited

Advantages and disadvantages of push technology formobile devices

Disadvantages:

– Limited format

– No delivery status for individuals within a group address

Client/server push Java applications

© 2009 Research In Motion Limited

Client/server push Java applications

Your server-side application can use the PAP push format to send the following three types of requests to the BlackBerry MDS Connection Service:

– Push request

• Permits you to push data to the specified recipients

– Status-query request

• Permits you to query the status of a push request for one or more specified recipients

– Cancellation request

• Permits you to cancel a push request for one or more specified recipients

© 2009 Research In Motion Limited

Client/server push Java applications

Send the request as an HTTP POST request to the BlackBerry MDS Connection Service.

If the BlackBerry MDS Connection Service is configured to support secure connections, you can use the HTTPS protocol.

The HTTP POST request must use the following format:

POST http://<MDS_CS>:<MDS_CS_port>/pap

<message>

© 2009 Research In Motion Limited

Client/server push Java applications

To create a PAP push request:

1. Send an HTTP POST request.

2. To push content to multiple recipients using PAP, add multiple address tags to the post request.

3. To push content to a group using PAP, in the recipient addresses part of the push submission, prefix the group name with the $ character.

© 2009 Research In Motion Limited

Client/server push Java applications

RIM push format:

– Your server-side application can use the RIM push format to send both the data and the delivery parameters to the BlackBerry MDS Connection Service in a single byte stream.

– Send the request as an HTTP POST request to the BlackBerry MDS Connection Service.

– If the BlackBerry MDS Connection Service is configured to support secure connections, you can use the HTTPS protocol.

© 2009 Research In Motion Limited

Client/server push Java applications

RIM push format:

– The HTTP POST request must use the following format:

POST http://<MDS_CS>:<MDS_CS_port>/push?

DESTINATION=<destination>&PORT=<client_port>&REQUESTURI=<uri>

<headers>

<data>

© 2009 Research In Motion Limited

Client/server push Java applications

You can create a RIM push request three different ways:

1. To push content to one or multiple BlackBerry smartphone users using a RIM push request, send an HTTP POST request using the following URL format.

http://mdsServer:web server listen port/push?DESTINATION=destination&

PORT=port&REQUESTURI=uri headers content

© 2009 Research In Motion Limited

Client/server push Java applications

2. To push content to multiple recipients using a RIM push, include multiple DESTINATION parameters in the query string.

http://mds_server:8080/push?DESTINATION=

user1@rim.com&DESTINATION=user2@rim.com&PORT=7874&REQUESTURI=/

3. To push content to a group using RIM push, in the recipient addresses portion of the push submission, prefix the group name with the $ character.

© 2009 Research In Motion Limited

Legal Disclaimer

The following trademarks and/or registered trademarks of Research In Motion are referred to in this presentation:

– BlackBerry®

– Research In Motion® (only include if it appears in the webinar/presentation)

– RIM® (only include if it appears in the webinar/presentation)

The following BlackBerry products are referred to in this presentation: (include all items from the official BlackBerry products list that appear in the webinar/presentation)

– BlackBerry® Internet Service

– BlackBerry® Enterprise Solution

– BlackBerry® Enterprise Server

– BlackBerry® Pearl™ 8100 smartphone

– BlackBerry® Curve™ 8300 smartphone

The following third-party trademarks are referred to in this presentation: (include all third-party products that appear in the webinar/presentation)

– Microsoft® Excel®

– Microsoft® SQL Server®

Please remove any products not mentioned in this presentation and add all mentioned products before completing this presentation. Also, remove any remaining red text.

© 2009 Research In Motion Limited

© 2009 Research In Motion Limited

Legal Disclaimer

© 2009 Research In Motion Limited. All rights reserved. BlackBerry®, RIM®, Research In Motion®, SurePress™ SureType® and related trademarks, names and logos are the property of Research In Motion Limited and are registered and/or used in the U.S. and countries around the world. All other trademarks are the property of their respective owners. This documentation is provided "AS IS" and without condition, endorsement, guarantee, representation or warranty, or liability of any kind by Research In Motion Limited and its affiliated companies, all of which are expressly disclaimed to the maximum extent permitted by applicable law in your jurisdiction.

Recommended