MOTOROKR E6/E6e Java ME Developer Guide. Version 02.00
|
|
- Buck Rose
- 5 years ago
- Views:
Transcription
1 MOTOROKR E6/E6e Version 02.00
2 Copyright 2007, Motorola, Inc. All rights reserved. This documentation may be printed and copied solely for use in developing products for Motorola products. In addition, two (2) copies of this documentation may be made for archival and backup purposes. Except for the foregoing, no part of this documentation may be reproduced or transmitted in any form or by any means or used to make any derivative work (such as translation, transformation, or adaptation) without express written consent from Motorola, Inc. Motorola reserves the right to make changes without notice to any products or services described herein. "Typical" parameters, which may be provided in Motorola Data sheets and/or specifications, can and do vary in different applications and actual performance may vary. Customer's technical experts will validate all "Typicals" for each customer application. No warranty is made as to coverage, availability, or grade of service provided by the products or services, whether through a service provider or otherwise. No warranty is made that the software will meet your requirements or will work in combination with any hardware or application software products provided by third parties, that the operation of the software products will be uninterrupted or error free, or that all defects in the software products will be corrected. In no event shall Motorola be liable, whether in contract or tort (including negligence), for any damages resulting from use of a product or service described herein, or for any indirect, incidental, special or consequential damages of any kind, or loss of revenue or profits, loss of business, loss of information or data, or other financial loss arising out of or in connection with the ability or inability to use the Products, to the full extent these damages may be disclaimed by law. Some states and other jurisdictions do not allow the exclusion or limitation of incidental or consequential damages, or limitation on the length of an implied warranty, therefore the above limitations or exclusions may not apply to you. This warranty gives you specific legal rights, and you may also have other rights, which vary from jurisdiction to jurisdiction. Motorola products or services are not designed, intended, or authorized for use as components in systems intended for surgical implant into the body, or other applications intended to support or sustain life, or for any other application in which the failure of the Motorola product or service could create a situation where personal injury or death may occur. Should the buyer purchase or use Motorola products or services for any such unintended or unauthorized application, the buyer shall release, indemnify and hold Motorola and its officers, employees, subsidiaries, affiliates, and distributors harmless against all claims, costs, damages, and expenses, and reasonable attorney fees arising out of, directly or indirectly, any claim of personal injury or death associated with such unintended or unauthorized use, even if such claim alleges that Motorola was negligent regarding the designing or manufacturing of the product or service. Motorola recommends that if you are not the author or creator of the graphics, video, or sound, you obtain sufficient license rights, including the rights under all patents, trademarks, trade names, copyrights, and other third party proprietary rights. MOTOROLA and the Stylized M Logo are registered in the U.S. Patent & Trademark Office. All other product or service names are the property of their respective owners. Java and all other Java based marks are trademarks or registered trademarks of Sun Microsystems, Inc. in the U.S. and other countries. If this documentation is provided on compact disc, the other software and documentation on the compact disc are subject to the license agreement accompanying the compact disc. MOTOROKR E6/E6e Version APR-2007 For the latest version of this document, visit Motorola, Inc. Page 2
3 Table of Contents TABLE OF CONTENTS Java ME Introduction... 7 THE JAVA PLATFORM, MICRO EDITION (JAVA ME)... 7 THE MOTOROLA JAVA ME PLATFORM... 8 RESOURCES AND APIS AVAILABLE Developing and Packaging Java ME Applications GUIDE TO DEVELOPMENT IN JAVA ME Downloading Applications METHODS OF DOWNLOADING ERROR LOGS Application Management DOWNLOADING A JAR FILE WITHOUT A JAD MIDLET UPGRADE INSTALLATION AND DELETION STATUS REPORTS itap INTELLIGENT KEYPAD TEXT ENTRY API Record Management System RECORD MANAGEMENT SYSTEM API Downloading MIDlet Through Browser START ACTIVE BROWSER SESSION FROM MAIN MENU FIND A LOCATION WITH JAVA ME APPLICATION DOWNLOADING MIDLETS DIFFERENT ERROR CHECKS MEMORY FULL MEMORY FULL DURING INSTALLATION PROCESS APPLICATION VERSION ALREADY EXISTS NEWER APPLICATION VERSION EXISTS JAD Attributes JAD / MANIFEST ATTRIBUTE IMPLEMENTATIONS Network APIs NETWORK CONNECTIONS USER PERMISSION INDICATING A CONNECTION TO THE USER HTTPS C ONNECTION DNS IP PUSH REGISTRY MECHANISMS FOR PUSH Page 2
4 PUSH REGISTRY DECLARATION DELIVERY OF A PUSH MESSAGE DELETING AN APPLICATION REGISTERED FOR PUSH SECURITY FOR PUSH REGISTRY NETWORK ACCESS Platform Request API PLATFORM REQUEST API MIDLET REQUEST OF A URL THAT INTERACTS WITH BROWSER MIDLET REQUEST OF A URL THAT INITIATES A VOICE CALL JSR-75: PIM API OVERVIEW REQUIREMENTS FIELDS AND ATTRIBUTES CONTACT LIST EVENT LIST TODO LIST JSR-75: FileConnection API OVERVIEW REQUIREMENTS INTERFACE SECURITY PERMISSIONS JSR-82: Bluetooth API OVERVIEW BLUETOOTH API SYSTEM REQUIREMENTS BLUETOOTH CONTROL CENTER DEVICE PROPERTIES SERVICE REGISTRATION CONNECTABLE MODE NON-CONNECTABLE MODE DEVICE MANAGEMENT GENERIC ACCESS PROFILE (GAP) SECURITY COMMUNICATION SERIAL PORT PROFILE (SPP) OBJECT EXCHANGE (OBEX) SECURITY POLICY EXTERNAL EVENTS INCOMING CALL INCOMING MESSAGE ALARM AND DATEBOOK BEHAVIOR PRESSING OF END KEY HARDWARE REQUIREMENTS INTEROPERABILITY REQUIREMENTS Page 3
5 14 JSR-118: MIDP 2.0 Security Model UNTRUSTED MIDLET SUITES UNTRUSTED DOMAIN TRUSTED MIDLET SUITES PERMISSION TYPES CONCERNING THE HANDSET USER PERMISSION INTERACTION MODE IMPLEMENTATION BASED ON RECOMMENDED SECURITY POLICY TRUSTED THIRD-PARTY DOMAIN SECURITY POLICY FOR PROTECTION DOMAINS DISPLAYING PERMISSIONS TRUSTED MIDLET SUITES USING X.509 PKI SIGNING A MIDLET SUITE SIGNER OF MIDLET SUITES MIDLET ATTRIBUTES USED IN SIGNING MIDLET SUITES CREATING THE SIGNING CERTIFICATE INSERTING CERTIFICATES INTO JAD CREATING THE RSA SHA-1 S IGNATURE OF THE JAR AUTHENTICATING A MIDLET SUITE VERIFYING THE SIGNER CERTIFICATE VERIFYING THE MIDLET SUITE JAR CARRIER SPECIFIC SECURITY MODEL JSR-120: Wireless Messaging API WIRELESS MESSAGING API (WMA) SMS CLIENT MODE AND SERVER MODE CONNECTION SMS PORT NUMBERS SMS STORING AND DELETING RECEIVED MESSAGES SMS MESSAGE TYPES SMS MESSAGE STRUCTURE SMS NOTIFICATION JSR-135: Mobile Media API MOBILE MEDIA API TONECONTROL VOLUMECONTROL STOPTIMECONTROL MANAGER CLASS SUPPORTED MULTIMEDIA FILE TYPES AUDIO MEDIA IMAGE MEDIA VIDEO MEDIA MEDIA LOCATORS RTSP LOCATOR HTTP LOCATOR FILE LOCATOR CAPTURE LOCATOR SECURITY Page 4
6 POLICY PERMISSIONS JSR-139: CLDC JSR-30 CLDC NO FLOATING POINT SUPPORT CLASSFILE FORMAT AND CLASS LOADING SUPPORTED FILE FORMATS PUBLIC REPRESENTATION OF JAVA APPLICATIONS AND RESOURCES CLASSFILE LOOKUP ORDER JSR-139 CLDC JSR-172: Java ME Web Services Specification OVERVIEW JAXP JAX-RPC S UBSET OVERVIEW JSR-184: Mobile 3D Graphics API OVERVIEW MOBILE 3D API MOBILE 3D FILE FORMAT SUPPORT MOBILE 3D GRAPHICS M3G API TYPICAL M3G APPLICATION SIMPLE MIDLETS INITIALIZING THE WORLD USING THE GRAPHICS3D OBJECT INTERROGATING AND INTERACTING WITH OBJECTS ANIMATIONS AUTHORING M3G FILES JSR-185: Java Technology for the Wireless Industry OVERVIEW CLDC RELATED CONTENT FOR JTWI MIDP 2.0 SPECIFIC INFORMATION FOR JTWI WIRELESS MESSAGING API 1.1 (JSR-120) S PECIFIC CONTENT FOR JTWI MOBILE MEDIA API 1.1 (JSR-135) S PECIFIC CONTENT FOR JTWI JSR-205: WMA OVERVIEW MESSAGING FUNCTIONALITY MMS MESSAGE STRUCTURE MMS MESSAGE ADDRESSING MMS MESSAGE TYPES MULTIPARTMESSAGE MESSAGEPART MULTIMEDIA MESSAGE SERVICE CENTER ADDRESS APPLICATION ID MMS PUSH REQUIREMENTS FOR WMA INITIAL SETUP Page 5
7 HANDLING THE INCOMING MMS MESSAGE APPLICATION IS RUNNING/RESUMING APPLICATION IS RUNNING/BACKGROUND APPLICATION IS SUSPENDING APPLICATION IS ENDING MMS PUSH REQUIREMENTS TO THE NATIVE MMS CLIENT ANONYMOUS REJECTION FEATURE COINCIDENTAL ADDRESSES IN THE NATIVE CLIENT AND JAVA CLIENTS ADDRESS FILTERS 147 SECURITY POLICY VMVM SUPPORT EXTERNAL EVENT INTERACTION Motorola Get URL from Flex API OVERVIEW FLEXIBLE URL FOR DOWNLOADING FUNCTIONALITY SECURITY POLICY APPENDIX A: Key Mapping KEY MAPPING APPENDIX B: Memory Management Calculation AVAILABLE MEMORY APPENDIX C: FAQ ONLINE FAQ APPENDIX D: HTTP Range GRAPHIC DESCRIPTION Page 6
8 Chapter 1 - Java ME Introduction 1 Java ME Introduction The MOTOROKR E6/E6e handset includes the Java Micro Edition (Java ME) Platform, Micro Edition, also known as the Java ME platform. The Java ME platform enables developers to easily create a variety of Java applications ranging from business applications to games. Prior to its inclusion, services or applications residing on small consumer devices like cell phones could not be upgraded or added to without significant effort. By implementing the Java ME platform on devices like the MOTOROKR E6/E6e handset, service providers, as well as customers, can easily add and remove applications allowing for quick and easy personalization of each device. This chapter presents a quick overview of the Java ME environment and the tools that can be used to develop applications for the MOTOROKR E6/E6e handset. The Java Platform, Micro Edition (Java ME) The Java ME platform is a very small application environment. It is a framework for the deployment and use of Java technology in small devices (such as cell phones and pagers) and includes a set of APIs and a virtual machine that is designed in a modular fashion, allowing for scalability among a wide range of devices. The Java ME architecture contains three layers consisting of the Java Virtual Machine, the Configuration Layer, and the Profile Layer. The Virtual Machine (VM) supports the Configuration Layer by providing an interface to the host operating system. Above the VM Layer is the Configuration Layer, which can be thought of as the lowest common denominator of the Java Platform available across devices of the same "horizontal market." Built upon this Configuration Layer is the Profile Layer, Page 7
9 Chapter 1 - Java ME Introduction typically encompassing the presentation layer of the Java Platform. Figure 1 Layer Architecture The Configuration Layer used in the iden handsets is either the Connected Limited Device Configuration 1.1 (CLDC 1.1 ) or the Connected Limited Device Configuration 1.0 (CLDC 1.0), depending on the phone model. The Profile Layer used is the Mobile Information Device Profile 2.0 (MIDP 2.0). Together, the CLDC and MIDP provide common APIs for I/O, simple math functionality, UI, and more. For more information on Java ME see the Sun Java ME documentation ( The Motorola Java ME Platform Functionality not covered by the CLDC and MIDP APIs is left for individual OEMs to implement and support. By adding to the standard APIs, manufacturers can allow developers to access and take advantage of the unique functionality of their handsets. The MOTOROKR E6/E6e handset contains OEM APIs for extended functionality ranging from enhanced UI to advanced data security. While the MOTOROKR E6/E6e handset can run any application written in standard MIDP, it can also run applications that take advantage of the unique functionality provided by these APIs. These OEM APIs are described in this guide. Page 8
10 Chapter 1 - Java ME Introduction Resources and APIs Available MIDP 2.0 provides support to the following functional areas on the MOTOROKR E6/E6e handset: Application delivery and billing Application lifecycle Application signing model and privileged security model End-to-end transactional security (HTTPS) MIDlet push registration (server push model) Networking Persistent storage Sounds Timers User Interface File Image Support (.PNG,.JPEG,.GIF,.BMP) Additional Functionality: JSR-118 JSR-120 JSR-135 JSR-139 JSR-172 JSR-184 JSR-185 JSR-205 JSR-75 FileConnection API JSR-75 PIM API JSR-82 Motorola Get URL from Flex API Page 9
11 Chapter 2 - Developing and Packaging Java ME Applications 2 Developing and Packaging Java ME Applications Guide to Development in Java ME Introduction to Development This chapter assumes you have previous experience in Java ME development and can appreciate the development process for Java MIDlets. This chapter provides some information that a beginner in development can use to gain an understanding of MIDlets for Java ME handsets. There is a wealth of material on this subject on the following web sites maintained by Motorola, Sun Microsystems, and others. Please refer to the following URLs for more information: Page 10
12 Chapter 2 - Developing and Packaging Java ME Applications As an introduction, brief details of Java ME are explained below. The MIDlet consists of two core specifications, namely Connected Limited Device Configuration (CLDC) and Mobile Information Device Profile (MIDP). Both of these specifications (JSR - Java Specification Requests) are located at site for reading. For For For For MIDP 1.0; JSR-37 should be reviewed. MIDP 2.0; JSR-118 should be reviewed. CLDC 1.0.4; JSR-30 should be reviewed. CLDC 1.1; JSR-139 should be reviewed. For beginning development, key points to remember are memory size, processing power, screen capabilities, and wireless network characteristics. These all play an important part in the development of a MIDlet. The specifications listed above are designed to work upon devices that have these characteristics. Network conditions would only apply for networked applications such as streaming tickers, clients, etc. In addition to the specifications, arrays of tools are available to assist the development cycle. These range from the command line tools provided with by Software Development Kit (SDK) from Sun to Integrated Development Environments (IDEs) that are either free or purchased. These IDEs come from a range of sources such as Sun, IBM, and Borland to name a few. In addition to the IDEs and Sun SDK for development, Motorola offers access to our own SDK that contains Motorola device emulators. From here, a MIDlet can be built and then deployed onto an emulated target handset. This enables debugging and validation of the MIDlet before deployment to a real, physical handset. The latest Motorola SDK can be downloaded from the MOTODEV web site. Please refer to the product specifications at the end of this guide for detailed information on each handset. Page 11
13 Chapter 3 - Downloading Applications 3 Downloading Applications Methods of Downloading There are two options open to the developer for deploying the MIDlet to a physical Motorola device. These are OTA (over-the-air) downloading or direct cable (Serial) downloading through a PC to the target device. Method 1 - OTA To use the OTA method, the developer will have a connection through a wireless network to a content server. This content server could be, for example, Apache ( which is free to use, deployable on multiple operating systems, and has extensive documentation on how to configure the platform. The required file will be downloaded (either.jad and/or.jar) by issuing a direct URL request to the file in question or it could be a URL request to a WAP page and a hyperlink on that page to the target file. This request will be made through the browser. In MIDP 2.0, the need for a JAD file before download is not required, so the JAR file can be downloaded directly. The information about the MIDlet will be pulled from the manifest file. The transport mechanism used to download the file will be one of two depending on the support from the network operators WAP Gateway and the size of the file requested. HTTP Range - see specification RFC 2068 at if content greater than 30k in size. Below is a ladder diagram showing the flow Page 12
14 Chapter 3 - Downloading Applications through HTTP range transfer, although recall use of the.jad is optional. SAR (Segmentation & Reassembly) - see specification of wireless transaction protocol at the if less than 30k in size. During a download of the application, the user will see the Opera 8 displaying 'Downloading' followed by "x% completed" for either SAR or HTTP Byte Range type downloads. A basic Over the Air Server Configuration document can be found in our Technical Articles section at This includes details of configuring the server and also example WAP pages. In these handsets, the user is given an option of deleting any MIDlets that are on the phone if an OTA download cannot be achieved due to lack of space. The following error codes are supported: Success Insufficient Memory User Cancelled Loss Of Service JAR Size Mismatch Attribute Mismatch Invalid Descriptor Invalid JAR Incompatible Configuration or Profile Application Authentication Failure Application Authorization Failure Push Registration Failure Deletion Notification Please be aware that the method used by the handset, as per the specifications, is POST. Using a GET (URL encoding) style for the URL will fail. This is not the correct use of the MIDlets JAD parameters. Possible Screen Messages Seen With Downloading: If JAR -file size does not match with specified size, it displays "Failed Invalid File". Upon time-out, the handset goes back to browser. When downloading is done, the handset displays a transient notice "Download Completed" and starts to install the application. Upon completing installation, the handset displays a transient notice "Installed" and returns to Browser after time-out. If the MANIFEST file is wrong, the handset displays a transient notice "Failed File Corrupt" and returns to Browser after time-out. Page 13
15 Chapter 3 - Downloading Applications If JAD does not contain mandatory attributes, "Failed Invalid File" notice appears The USER-AGENT String Table 1 describes USER_AGENT strings associated with Motorola devices: Motorola Device USER_AGENT STRING MOTOROKR E6/E6e MOT-E6/xx.xx.xxR Opera/8 Profile/MIDP-2.0 Configuration/CLDC-1.1 Table 1 USER_AGENT String The USER_AGENT string can be used to identify a handset and render specific content to it based on it information provided in this string (example CGI on a content server). These strings can be found in the connection logs at the content server. 1. WAP Browser Release, Opera 8 2. MIDP version CLDC version 1.1 Error Logs Table 2 represents the error logs associated with downloading applications. Error Dialog Scenario Possible Cause Install-Notify Failed: Inval- JAD Downid File load Missing or incorrectly formatted mandatory JAD attributes Mandatory: MIDlet-Name MIDlet-Version MIDlet-Vendor MIDlet-JAR-URL MIDlet-JAR_Size 906 Invalid descriptor Download Failed OTA JAR Download The received JAR size does not match the size indicated 904 JAR Size Mismatch Cancelled: <Icon> <Filename> OTA JAR Download User cancelled download 902 User Cancelled Download Failed OTA JAR Download Browser lost connection with serv- 903 Loss of Service er Certification path cannot be valid- Page 14
16 Chapter 3 - Downloading Applications ated JAD signature verification failed Unknown error during JAD validation See 'Details' field in the dialog for information about specific error Insufficient Storage OTA JAR Download Insufficient data space to tempor- 901 Insufficient arily store the JAR file Memory Application Already Exists OTA JAR Download MIDlet version numbers are identical Different Version Exists OTA JAR Download MIDlet version on handset supercedes version being downloaded Failed File Corrupt Installation Attributes are not identical to respective JAD attributes Insufficient Storage Installation Insufficient Program Space or Data Space to install suite Application Error Installation Class references non-existent class or method Security Certificate verification failure Checksum of JAR file is not equal to Checksum in MIDlet-JAR-SHA attribute Application not authorized Application Expired MIDlet Launching Security Certificates expired or removed Application Error MIDlet Execution Authorization failure during MIDlet execution Incorrect MIDlet 905 Attribute Mismatch 901 Insufficient Memory Table 2 Error Logs Page 15
17 Chapter 4 - Application Management 4 Application Management The following sections describe the application management scheme for the MOTOROKR E6/E6e handset. This chapter discusses the following: Downloading a JAR without a JAD MIDlet upgrade Installation and Deletion Status Reports Downloading a JAR File Without a JAD In Motorola's MIDP 2.0 implementation, a JAR file can be downloaded without a JAD. In this case, the user clicks on a link for a JAR file, the file is downloaded, and confirmation is obtained before the installation begins. The information presented is obtained from the JAR manifest instead of the JAD. Page 16
18 Chapter 4 - Application Management MIDlet Upgrade Rules from the JSR-118 (MIDP 2.0) are followed to help determine if the data from an old MIDlet should be preserved during a MIDlet upgrade. When these rules cannot determine if the RMS should be preserved, the user is given an option to preserve the data. The data is saved if the new MIDlet-version is the same or newer, and if the new MIDlet-data-space requirements are the same or more than the current MIDlet. The data is not saved if the new MIDlet-data-space requirement is smaller than the current MIDlet requirement. The data is not saved if the new MIDlet-version is older than the current version. If the data cannot be saved, the user is warned about losing the data. If the user proceeds, the application is downloaded. If the user decides to save the data from the current MIDlet, the data is preserved during the upgrade and the data is made available for the new application. In any case, an unsigned MIDlet is not allowed to update a signed MIDlet. Installation and Deletion Status Reports The status (success or failure) of an installation, upgrade, or deletion of a MIDlet suite is sent to the server according to the JSR-118 specification. If the status report cannot be sent, the MIDlet suite is still enabled and the user is allowed to use it. In some instances, if the status report cannot be sent, the MIDlet is deleted by operator's request. Upon successful deletion, the handset sends the status code 912 to the MIDlet-Delete-Notify URL. If this notification fails, the MIDlet suite is still deleted. If this notification cannot be sent due to lack of network connectivity, the notification is sent at the next available network connection. Page 17
19 Chapter 4 - Application Management Table 3 lists the application management feature/class support for MIDP 2.0: Feature/Class Application upgrades performed directly through the AMS. When removing a MIDlet suite, the user is prompted to confirm the entire MIDlet suite is removed. Application Descriptor included the attribute MIDlet-Delete-Confirm, its value is included in the prompt. Prompt for user approval when the user has chosen to download an application that is identical to the application currently in the handset. An older version cannot be installed. Unauthorized MIDlets will not have access to any restricted function calls. AMS checks the JAD for security indicated every time a download is initiated. Application descriptor or MIDlet fails the security check, the AMS prevents the installation of that application and notifies the user that the MIDlet could not be installed. Application descriptor and MIDlet pass the security check, the AMS installs the MIDlet and grants it the permissions specified in the JAD. A method for launching Java application that maintains the same look and feel as other features on the device is provided. User is informed of download and installation with a single progress indicator and is given an opportunity to cancel the process. User is prompted to launch the MIDlet after installation. A method for creating shortcuts to Java applications are provided. A no forward policy on DRM issues, included but not limited to transferring the application over-the-air, IRDA, Bluetooth, I/O Cables, External storage devices, etc., until further guidance is provided. Table 3 Application Management Feature Page 18
20 Chapter 5 - itap 5 itap Intelligent Keypad Text Entry API When users are using features such as SMS (short message service), or "Text Messaging," they can opt for a predictive text entry method from the handset. The Java ME environment has the ability to use SMS in its API listing. The use of a predictive entry method is a compelling feature to the MIDlet. This API enables a developer to access itap, Numeric, Symbol, and Browse text entry methods. With previous Java ME products, the only method available was the standard use of TAP. Predictive text entry allows a user to simply type in the letters of a word using only one key press per letter, as opposed to the TAP method that can require as many as four or more key presses. The use of the itap method can greatly decrease text-entry time. Its use extends beyond SMS text messaging, but into other functions such as phonebook entries. The following Java ME text input components support itap. javax.microedition.lcdui.textbox The TextBox class is a Screen that allows the user to edit and enter text. javax.microedition.lcdui.textfield A TextField is an editable text component that is placed into a Form. It is given a piece of text that is used as the initial value. Page 19
21 Chapter 5 - itap Refer to Table 4 for itap feature/class support for MIDP 2.0: Feature/Class Predictive text capability is offered when the constraint is set to ANY. User is able to change the text input method during the input process when the constraint is set to ANY (if predictive text is available). Multi-tap input is offered when the constraint on the text input is set to ADDR, PASSWORD, or URL. Table 4 itap Feature/Class Page 20
22 Chapter 6 - Record Management System 6 Record Management System Record Management System API If the MIDlet has not specified a data space requirement in the JAD attribute (MIDlet_data_space_requirement) or the manifest file, a limit of 1Mb is used as the maximum RMS space for that MIDlet. No additional Motorola implementation clarifications are necessary. Table 5 lists the RMS feature/class support for MIDP 2.0: Feature/Class Implementation All constructors, methods, and inherited methods for the InvalidRecordDException class in the javax.microedition.rms package Supported All fields and methods for the RecordComparator interface in the javax.microedition.rms package Supported All methods for the RecordEnumeration interface in the javax.microedition.rms package Supported All methods for the RecordFilter interface in the javax.microedtition.rms package Supported All methods for the RecordListener interface in the javax.microedition.rms package Supported All fields, methods, and inherited methods fortify the RecordStore interface in the javax.microedition.rms package Supported Initial version number of a record to be zero Supported Page 21
23 Chapter 6 - Record Management System All constructors, methods, and inherited methods for the RecordStoreException class in the javax.microedition.rms package Supported All constructors, methods, and inherited methods for the RecordStoreFullException class in the javax.microedition.rms package Supported All constructors, methods, and inherited methods for the RecordStoreNotOpenException class in the javax.microedition.rms package Supported All constructors, methods, and inherited methods for the InvalidRecordIDException class in the javax.microedition.rms package Supported All fields and methods for the RecordComparator interface in the javax.microedition.rms package Supported All methods for the RecordEnumeration interface in the javax.microedition.rms package Supported All methods for the RecordFilter interface in the javax.microedition.rms package Supported All methods for the RecordListener interface in the javax.microedition.rms package Supported All fields, methods, and inherited methods for the ReSupported cordstore interface in the javax.microedition.rms package All constructors, methods, and inherited methods for the RecordStoreException class in the javax.microedition.rms package Supported All constructors, methods, and inherited methods for the RecordStoreNotFoundException class in the javax.microedition.rms package Supported All constructors, methods, and inherited methods for the RecordStoreNotOpenException class in the javax.microedition.rms package Supported Table 5 RMS Feature/Class Page 22
24 Chapter 7 - Downloading MIDlet Through Browser 7 Downloading MIDlet Through Browser The Download MIDlet Through Browser requires the browser to be connected before performing any downloads on the handset. The example shows how to access the Browser application by any of the following methods: Selecting 'Browser' from the Main Menu. Pressing a dedicated 'Browser' key on the keypad (if available on the handset). Pressing a 'Browser' soft key from the idle display (if assigned). Using 'Browser' shortcut (if assigned). Selecting URL from a message. Selecting GetJavaApps from the Main Menu or Java Settings. Start Active Browser Session from Main Menu Figure 2 describes Starting Active Browser Session from Main Menu: Page 23
25 Chapter 7 - Downloading MIDlet Through Browser Figure 2 Starting Active Browser Session from Main Menu GetJavaApps is a feature that allows an operator to insert a WAP designated URL that links to a Java ME site with MIDlet suites. This feature can be found under Java Settings or in the Main Menu as it is flexible for either menu item. Find a Location with Java ME Application Once connected to the WAP browser, different locations may be visited where Java ME Applications may be downloaded. From here, a MIDlet may be selected to download to the handset. Handset initially receives information from the Java Application Descriptor (JAD) file. The JAD includes information about MIDlet-name, version, vendor, MIDlet-Jar-URL, MIDlet-Jar-size, and MIDlet-Data-size. Two additional JAD attributes are Mot-Data-Space-Requirements and Mot-Program-Space-Requirements. These attributes help the KVM determine whether there is enough memory to download and install the selected MIDlet suite. If there is not enough memory, 'Memory Full' dialog is displayed before the download begins. Page 24
26 Chapter 7 - Downloading MIDlet Through Browser Downloading MIDlets Figure 3 represents Java ME Application (MIDlets) Download and Installation. Figure 3 Downloading and Installing Java ME Application (MIDlets) Page 25
27 Chapter 7 - Downloading MIDlet Through Browser Steps to Download and Install Java ME Application: BACK shows previous screen to the user. If the SELECT softkey is selected, the handset displays the application size, time to install, and version. If an error occurs with the descriptor file, the handset then displays the transient notice 'Failed Invalid File.' Upon Time-out, the handset goes back to Browser. If the CANCEL softkey is selected, it shows the Browser Application Card from where the application was selected. If the DOWNLD softkey is selected, the handset starts downloading the application. The handset displays 'Downloading...% Complete' along with the percentage of downloading completed at a time. 'Downloading...% Complete' shall use static dots, not dynamic. Before downloading the MIDlet, handset checks for available memory. Mot-Data-Space-Requirements and Mot-Program-Space-Requirements are two JAD attributes that will help the KVM determine whether there is enough memory to download and install the selected MIDlet suite. If there is not enough memory, 'Insufficient storage' transient dialog is displayed before the download begins. Upon time-out, the handset goes back to Browser. If an error occurs during download, such as a loss of service, then the transient notice 'Download Failed' must be displayed. Upon time-out, the handset goes back to idle state. A downloading application can be cancelled by pressing the END key. The transient notice, 'Download Cancelled' displays. Upon time-out, handset goes back to Browser. If JAR -file size does not match with specified size, it displays 'Failed Invalid File.' Upon time-out, the handset goes back to Browser. When the downloading application is cancelled, handset cleans up all files, including any partial JAR files and temporary files created during the download process. When downloading is done, the handset displays a transient notice 'Download Completed.' The handset then starts to install the application. The handset displays 'Installing...' After an application is successfully downloaded, a status message must be sent back to the network server. This allows for charging of the downloaded application. Charging is per the Over the Air User Initiated Provisioning specification. The status of an install is reported by means of an HTTP POST request to the URL contained in the MIDlet-Install-Notify attribute. The only protocol that MUST be supported is ' Page 26
28 Chapter 7 - Downloading MIDlet Through Browser If the browser connection is interrupted/ended during the download/installation process, the device is unable to send the HTTP POST with the MIDlet-Install Notify attribute. In this case, the MIDlet is deleted to ensure the user does not get a free MIDlet. The use case can occur when a phone call is accepted and terminated during the installation process, because then the browser is not in the needed state to return the MIDlet Install Notify attribute. Upon completing Installation, the handset displays a transient notice 'Installed to Games and Apps'. Upon time-out, the handset goes back to Browser. During Installation if the MANIFEST file is wrong, the handset displays a transient notice 'Failed File Corrupt'. Upon time-out, the handset goes back to Browser. During the installation process, if the flip is closed on a flip handset, the installation process continues and the handset does not return to the idle display. When the flip is opened, the 'Installing...' dialog should appear on the screen and should be dynamic. During download or install of application, voice record, voice commands, voice shortcuts, and volume control is not supported. However, during this time, incoming calls and SMS messages are able to be received. The handset must support sending and receiving at least 30 kilobytes of data using HTTP either from the server to the client or the client to the server, per Over the Air User Initiated Provisioning specification. If JAD does not contain mandatory attributes, 'Failed Invalid File' notice appears. If JAD does not contain mandatory attributes, 'Failed Invalid File' notice appears. Figure 4 Application Does Not Have Mandatory Attributes in ADF Page 27
29 Chapter 7 - Downloading MIDlet Through Browser Different Error Checks Memory Full There are two distinct cases when a Memory Full error can occur during the download process. Memory Full is displayed when the device does not have enough memory to completely download the MIDlet. The JAD of the MIDlet has two attributes, Mot-Data-Space-Requirements and Mot-Program-Space-Requirements. If an application developer adds these attributes to their JAD file, a Motorola device can determine if enough memory exists on the phone before the MIDlet is downloaded. These attributes may or may not be provided in all MIDlets. Two separate prompts are displayed, depending on whether these attributes are present. In cases where there is not enough memory to download the application, the user must be given a message to delete existing applications to free additional memory. The following messages and screen flows are displayed depending on whether specific JAD attributes are present or not. Page 28
30 Chapter 7 - Downloading MIDlet Through Browser Page 29
31 Chapter 7 - Downloading MIDlet Through Browser Figure 5 Memory Full Error Rules: If Mot-Data-Space-Requirements and Mot-Program-Space-Requirements attributes are present in the JAD, the above noted prompt is displayed. This value takes into account the memory requirements of the MIDlet and the current memory usage on the phone to tell the user exactly how much memory to free. The memory usage is based in kilobyte units. 'Data Space:' and the value of the data space should be on separate lines. 'Prog. Space:' and the value of the program space should be on separate lines. The download process is canceled when this error condition occurs. The Memory Full error is no longer a transient prompt. A dialog screen with a Help softkey and a Back softkey is displayed instead. DETAILS will give the user the above detailed Help screen describing the memory required to be able to download the MIDlet. The Help dialog includes a 'More' right softkey label (for those products in which not all the help data can be displayed on a single screen). This label should disappear when the user has scrolled to the bottom of the dialog. BACK from this message takes the user back to the browser page from which the user selected the MIDlet to download. Page 30
32 Chapter 7 - Downloading MIDlet Through Browser Figure 6 Mot-Data-Space and Mot-Program-Space Attributes If Mot-Data-Space-Requirements and Mot-Program-Space-Requirements JAD attributes are not present in the JAD file, the handset can not determine how much memory to free and displays the above help dialog. The Help dialog includes a 'More' right softkey label (for those products in which not all the help data can be displayed on a single screen). This label should disappear when the user has scrolled to the bottom of the dialog. All rules stated in the previous figure must also be followed for the above stated prompt. Page 31
33 Chapter 7 - Downloading MIDlet Through Browser Memory Full During Installation Process Once the MIDlet is successfully downloaded, the installation process begins. During the installation of the MIDlet, the phone may determine there is insufficient memory to complete the installation. This error can occur whether the Mot-Data-Space-Requirements and Mot-Program-Space-Requirements JAD attributes are present or not. The following message and Figure Figure 7 must be displayed: Figure 7 Memory Full Help Message During Installation Process Page 32
34 Chapter 7 - Downloading MIDlet Through Browser The installation process is canceled when this error condition occurs. The Memory Full error is no longer a transient prompt. A dialog screen with a Help softkey and a Back softkey is displayed instead. DETAILS give the user the above Help screen explaining that additional memory is required to be able to install the MIDlet. The Help dialog includes a 'More' right softkey label (for those products in which not all the help data can be displayed on a single screen). This label should disappear when the user has scrolled to the bottom of the dialog. BACK from this message takes the user back to the browser page from which the user selected the MIDlet to download. Application Version Already Exists Compares the version number of the application with that already present on the handset. If the versions are the same, the following message is displayed. The error occurred can be queried by selecting DETAILS. Page 33
35 Chapter 7 - Downloading MIDlet Through Browser Figure 8 Same Version of Application Already Exists on the Handset Rules: Handset checks for MIDlet-Name, MIDlet-vendor, and version number. If they are the same, a dialog 'Application Already Exists' is displayed. To know more about this error, select the DETAILS softkey. Handset displays the new version of the application, as well as the existing application. Page 34
36 Chapter 7 - Downloading MIDlet Through Browser Newer application version exists If the application version on the handset is newer than the downloaded version of application, the following message is displayed. The error occurred can be queried by selecting DETAILS. Figure 9 (Newer) Version of Application Exists Rules: If the latest or newer version of application is already present on the handset, it cannot be downloaded. Page 35
37 Chapter 8 - JAD Attributes 8 JAD Attributes JAD / Manifest Attribute Implementations The JAR manifest defines attributes to be used by the Application Manager Software (AMS) to identify and install the MIDlet suite. These attributes may or may not be found in the application descriptor. The application descriptor is used, in conjunction with the JAR manifest, by the Application Manager Software to manage the MIDlet. The application descriptor is also used for the following: By the MIDlet, for configuration specific attributes. Allows the Application Manager Software on the handset to verify the MIDlet is suited to the handset before loading the JAR file. Allows configuration-specific attributes (parameters) to be supplied to the MIDlet(s) without modifying the JAR file. Motorola has implemented the following support for the MIDP 2.0 Java Application Descriptor attributes as outlined in the JSR-118. Table 6 lists all MIDlet attributes, descriptions, and its location in the JAD and/or JAR manifest that are supported in the Motorola implementation. Please note that the MIDlet does not install if the MIDlet-Data-Size is greater than 512k. Page 36
38 Chapter 8 - JAD Attributes Attribute Name Attribute Description JAR Manifest JAD MIDlet-Name The name of the MIDlet suite that identifies the MIDlets to the user. Yes Yes MIDlet-Version The version number of the MIDlet suite. Yes Yes MIDlet-Vendor The organization that provides the MIDlet suite. Yes Yes MIDlet-Icon The case-sensitive absolute name of a PNG file within the JAR, used to represent the MIDlet suite. Yes Yes MIDlet-Description The description of the MIDlet suite. No No MIDlet-Info-URL A URL for information further describing the MIDlet suite. Yes No MIDlet-<n> The name, icon, and class of the Yes, or no if nth MIDlet in the JAR file. Name is included in used to identify this MIDlet to the the JAD. user. Icon is as stated above. Class is the name of the class extending the. MIDlet-Jar-URL Yes, or no if included in the JAR manifest. The URL from which the JAR file is loaded. Yes MIDlet-Jar-Size The number of bytes in the JAR file. Yes MIDlet-Data-Size The minimum number of bytes of persistent data required by the MIDlet. MicroEdition-Profile The Java ME profiles required. If Yes, or no if any of the profiles are not imple- included in mented the installation fails. the JAD. Yes, or no if included in the JAR manifest. MicroEdition-Configuration The Java ME Configuration required, that is, CLDC. Yes, or no if included in the JAR manifest. MIDlet-Permissions Zero or more permissions that are critical to the function of the MIDlet suite. Yes Yes MIDlet-Permissions-Opt Zero or more permissions that are non-critical to the function of the MIDlet suite. Yes Yes Yes Yes, or no if included in the JAD. Yes Page 37
39 Chapter 8 - JAD Attributes MIDlet-Push-<n> Register a MIDlet to handle inbound connections Yes Yes MIDlet-Install-Notify The URL to which a POST request is sent to report installation status of the MIDlet suite. Yes Yes MIDlet-Delete-Notify The URL to which a POST request is sent to report deletion of the MIDlet suite. Yes Yes MIDlet-Delete-Confirm A text message to be provided to the user when prompted to confirm deletion of the MIDlet suite. Yes Yes Table 6 MIDlet Attributes, Descriptions, and its Location in the JAD and/or JAR Manifest Page 38
40 Chapter 9 - Network APIs 9 Network APIs Network Connections The Motorola implementation of Networking APIs will support several network connections. The network connections necessary for Motorola implementation are the following: CommConnection for serial interface HTTP connection HTTPS connection Push registry SSL (secure socket) Datagram (UDP) Refer to Table 7 for Network API feature/class support for MIDP 2.0: Feature/Class Implementation All fields, methods, and inherited methods for the Connector class in the javax.microedition.io package Supported Mode parameter for the open () method in the Connector class READ, WRITE, the javax.microedition.io package READ_WRITE The timeouts parameter for the open () method in the Connector class of the javax.microedition.io package HttpConnection interface in the javax.microedition.io package Supported HttpsConnection interface in the javax.microedition.io package Supported SecureConnection interface in the javax.microedition.io package Supported SecurityInfo interface in the javax.microedition.io package Supported UDPDDatagramConnection interface in the javax.microedition.io package Supported Connector class in the javax.microedition.io.package Supported PushRegistry class in the javax.microedition.io package Supported Page 39
41 Chapter 9 - Network APIs CommConnection interface in the javax.microedition.io package Supported Dynamic DNS allocation through DHCP Supported HttpConnection interface in the javax.microedition.io.package. Supported HttpsConnection interface in the javaxmicroedition.io.package Supported SecureConnection interface in the javax.microedition.io.package Supported SecurityInfo Interface in the javax.microedition.io.package Supported UDPDatagramConnection interface in the javax.microedition.io.package Supported Table 7 Network API feature/class support for MIDP Code Sample 1 shows the implementation of Socket Connection: Socket Connection import javax.microedition.io.*; import java.io.*; import javax.microedition.midlet.*;... try { //open the connection and io streams sc = (SocketConnection)Connector.open ("socket:// Connector.READ_WRITE, true); is = sc[i].openinputstream(); os = sc[i].openoutputstream(); catch (Exception ex) { closeallstreams(); System.out.println("Open Failed: " + ex.getmessage()); if (os!= null && is!= null) { try { os.write(somestring.getbytes()); //write some data to server int bytes_read = 0; int offset = 0; int bytes_left = BUFFER_SIZE; //read data from server until done Page 40
42 Chapter 9 - Network APIs do { bytes_read = is.read(buffer, offset, bytes_left); if (bytes_read > 0) { offset += bytes_read; bytes_left -= bytes_read; while (bytes_read > 0); catch (Exception ex) { System.out.println("IO failed: "+ ex.getmessage()); finally { closeallstreams(i); //clean up Code Sample 1 Socket Connection User Permission The user of the handset will explicitly grant permission to add additional network connections. Indicating a Connection to the User When the java implementation makes any of the additional network connections, it will indicate to the user that the handset is actively interacting with the network. To indicate this connection, the network icon will appear on the handset's status bar as shown in Figure 10. Page 41
43 Chapter 9 - Network APIs Figure 10 Network Connections example Conversely, when the network connection is no longer used the network icon will be removed from the status bar. If the handset supports applications that run when the flip is closed, the network icon on the external display will be activated when the application is in an active network connection with the flip closed. Please note that this indication is done by the implementation. HTTPS Connection Motorola implementation supports a HTTPS connection on the MOTOROKR E6/E6e handset. Additional protocols that will be supported are the following: TLS protocol version 1.0 as defined in SSL protocol version 3.0 as defined in Code Sample 2 shows the implementation of HTTPS: HTTPS import javax.microedition.io.*; import java.io.*; import javax.microedition.midlet.*; try { hc[i] = (HttpConnection)Connector.open(" + url[i] + "/"); catch (Exception ex) { Page 42
44 Chapter 9 - Network APIs hc[i] = null; System.out.println("Open Failed: " + ex.getmessage()); if (hc[i]!= null) { try { is[i] = hc[i].openinputstream(); bytecounts[i] = 0; readlengths[i] = hc[i].getlength(); System.out.println("readLengths = " + readlengths[i]); if (readlengths[i] == -1) { readlengths[i] = BUFFER_SIZE; int bytes_read = 0; int offset = 0; int bytes_left = (int)readlengths[i]; do { bytes_read = is[i].read(buffer, offset, bytes_left); offset += bytes_read; bytes_left -= bytes_read; bytecounts[i] += bytes_read; while (bytes_read > 0); System.out.println("byte read = " + bytecounts[i]); catch (Exception ex) { System.out.println("Downloading Failed: "+ ex.getmessage()); numpassed = 0; finally { try { is[i].close(); is[i] = null; catch (Exception ex) { Page 43
45 Chapter 9 - Network APIs /** * close http connection */ if (hc[i]!= null) { try { hc[i].close(); catch (Exception ex) { hc[i] = null; Code Sample 2 HTTPS DNS IP The DNS IP will be flexed on or off (per operator requirement) under Java Settings as read only or as user-editable. In some instances, it will be flexed with an operator-specified IP address. Push Registry The push registry mechanism allows an application to register for notification events that are meant for the application. The push registry maintains a list of inbound connections. Mechanisms for Push Motorola implementation for push requires the support of certain mechanisms. The mechanisms that will be supported for push are the following: SMS push: an SMS with a port number associated with an application used to deliver the push notification. The formats for registering any of the above mechanisms will follow those detailed in JSR-118 specification. Page 44
46 Chapter 9 - Network APIs Push Registry Declaration The application descriptor file will include information about static connections that are needed by the MIDlet suite. If all static push declarations in the application descriptor cannot be fulfilled during the installation, the MIDlet suite will not be installed. The user will be notified of any push registration conflicts despite the mechanism. This notification will accurately reflect the error that has occurred. Push registration can fail as a result of an Invalid Descriptor. Syntax errors in the push attributes can cause a declaration error resulting in the MIDlet suite installation being cancelled. A declaration referencing a MIDlet class not listed in the MIDlet-<n> attributes of the same application descriptor will also result in an error and cancellation of the MIDlet installation. Two types of registration mechanisms will be supported. The registration mechanisms to be supported are the following: Registration during installation through the JAD file entry using a fixed port number Dynamically register using an assigned port number If the port number is not available on the handset, an installation failure notification will be displayed to the user while the error code 911 push is sent to the server. This error will cease the download of the application. Applications that wish to register with a fixed port number will use the JAD file to identify the push parameters. The fixed port implementation will process the MIDlet-Push-n parameter through the JAD file. Code Sample 3 shows the implementation of Push Registry: Push Registry Declaration import javax.microedition.lcdui.*; import javax.microedition.midlet.*; import javax.microedition.io.pushregistry; public class PushTest_1 extends MIDlet implements CommandListener{ public Display display; Page 45
47 Chapter 9 - Network APIs public public public public static static static static Form Form Form Form regform; unregform; mainform; messageform; public public public public static static static static Command Command Command Command public public public public static static static static TextField regconnection; TextField regfilter; ChoiceGroup registeredconnscg; String[] registeredconns; exitcommand; backcommand; unregcommand; regcommand; public static Command mc; public static Displayable ms; public PushTest_1(){ regconnection = new TextField("Connection port:", "1000", 32, TextField.PHONENUMBER); regfilter = new TextField("Filter:", "*", 32, TextField.ANY); display = Display.getDisplay(this); regform = new Form("Register"); unregform = new Form("Unregister"); mainform = new Form("PushTest_1"); messageform = new Form("PushTest_1"); exitcommand = new Command("Exit", Command.EXIT, 0); backcommand = new Command("Back", Command.BACK, 0); unregcommand = new Command("Unreg", Command.ITEM, 1); regcommand = new Command("Reg", Command.ITEM, 1); mainform.append("press \"Reg\" softkey to register a new connection.\n" + "Press \"Unreg\" softkey to unregister a connection."); mainform.addcommand(exitcommand); mainform.addcommand(unregcommand); mainform.addcommand(regcommand); mainform.setcommandlistener(this); regform.append(regconnection); regform.append(regfilter); Page 46
48 Chapter 9 - Network APIs regform.addcommand(regcommand); regform.addcommand(backcommand); regform.setcommandlistener(this); unregform.addcommand(backcommand); unregform.addcommand(unregcommand); unregform.setcommandlistener(this); messageform.addcommand(backcommand); messageform.setcommandlistener(this); public void pauseapp(){ protected void startapp() { display.setcurrent(mainform); public void destroyapp(boolean unconditional) { notifydestroyed(); public void showmessage(string s) { if(messageform.size()!= 0 ) messageform.delete(0); messageform.append(s); display.setcurrent(messageform); public void commandaction(command c, Displayable s) { if((c == unregcommand) && (s == mainform)){ mc = c; ms = s; new runthread().start(); if((c == regcommand) && (s == mainform)){ display.setcurrent(regform); if((c == regcommand) && (s == regform)){ mc = c; ms = s; Page 47
49 Chapter 9 - Network APIs new runthread().start(); if((c == unregcommand) && (s == unregform)){ mc = c; ms = s; new runthread().start(); if((c == backcommand) && (s == unregform )){ display.setcurrent(mainform); if((c == backcommand) && (s == regform )){ display.setcurrent(mainform); if((c == backcommand) && (s == messageform)){ display.setcurrent(mainform); if((c == exitcommand) && (s == mainform)){ destroyapp(false); public class runthread extends Thread{ public void run(){ if((mc == unregcommand) && (ms == mainform)){ try{ registeredconns = PushRegistry.listConnections(false); if(unregform.size() > 0) unregform.delete(0); registeredconnscg = new ChoiceGroup("Connections", ChoiceGroup.MULTIPLE, registeredconns, null); if(registeredconnscg.size() > 0) unregform.append(registeredconnscg); else unregform.append("no registered connections found."); display.setcurrent(unregform); catch (Exception e) { showmessage("unexpected " + e.tostring() + ": " + e.getmessage()); Page 48
50 Chapter 9 - Network APIs if((mc == regcommand) && (ms == regform)){ try{ PushRegistry.registerConnection("sms://:" + regconnection.getstring(), "Receive", regfilter.getstring()); showmessage("connection successfully registered"); catch (Exception e){ showmessage("unexpected " + e.tostring() + ": " + e.getmessage()); if((mc == unregcommand) && (ms == unregform)){ try{ if(registeredconnscg.size() > 0){ for(int i=0; i<registeredconnscg.size(); i++){ if(registeredconnscg.isselected(i)){ PushRegistry.unregisterConnection(registeredConnsCG. getstring(i)); registeredconnscg.delete(i); if(registeredconnscg.size() == 0){ unregform.delete(0); unregform.append("no registered connections found."); catch (Exception e) { showmessage("unexpected " + e.tostring() + ": " + e.getmessage()); WakeUp.java import import import import import import javax.microedition.midlet.*; javax.microedition.lcdui.*; javax.microedition.io.pushregistry; javax.microedition.rms.*; java.util.*; javax.microedition.io.*; Page 49
51 Chapter 9 - Network APIs public class WakeUp extends MIDlet implements CommandListener{ public public public public public static static static static static Display display; Form mainform; Command exitcommand; TextField tf; Command registercommand; public void startapp() { display = Display.getDisplay(this); mainform = new Form("WakeUp"); exitcommand = new Command("Exit", Command.EXIT, 0); registercommand = new Command("Register", Command.SCREEN, 0); tf = new TextField("Delay in seconds", "10", 10, TextField.NUMERIC); mainform.addcommand(exitcommand); mainform.addcommand(registercommand); mainform.append(tf); mainform.setcommandlistener(this); display.setcurrent(mainform); public void pauseapp() { public void destroyapp(boolean unconditional) { notifydestroyed(); public void commandaction(command c, Displayable s) { if((c == exitcommand) && (s == mainform)){ destroyapp(false); if(c == registercommand){ new regthread().start(); Page 50
52 Chapter 9 - Network APIs public class regthread extends Thread{ public void run(){ try { long delay = Integer.parseInt(tf.getString()) * 1000; long curtime = (new Date()).getTime(); System.out.println(curTime + delay); PushRegistry.registerAlarm("WakeUp", curtime + delay); mainform.append("alarm registered successfully"); catch (NumberFormatException nfe) { mainform.append("failed\ncan not decode delay " + nfe); catch (ClassNotFoundException cnfe) { mainform.append("failed\nregisteralarm thrown " + cnfe); catch (ConnectionNotFoundException cnfe) { mainform.append("failed\nregisteralarm thrown " + cnfe); SMS_send.java import import import import import javax.microedition.lcdui.*; javax.microedition.midlet.*; javax.microedition.io.pushregistry; javax.wireless.messaging.*; javax.microedition.io.*; public class SMS_send extends MIDlet implements CommandListener{ public Display display; public static Form messageform; public static Form mainform; public static Command exitcommand; Page 51
53 Chapter 9 - Network APIs public static Command backcommand; public static Command sendcommand; public static TextField address_tf; public static TextField port_tf; public static TextField message_text_tf; String[] binary_str = {"Send BINARY message"; public static ChoiceGroup binary_cg; byte[] binary_data = {1, 2, 3, 4, 5, 6, 7, 8, 9; String address; String text; MessageConnection conn = null; TextMessage txt_message = null; BinaryMessage bin_message = null; public SMS_send(){ address_tf = new TextField("Address:", "", 32, TextField.PHONENUMBER); port_tf = new TextField("Port:", "1000", 32, TextField.PHONENUMBER); message_text_tf = new TextField("Message text:", "test message", 160, TextField.ANY); binary_cg = new ChoiceGroup(null, Choice.MULTIPLE, binary_str, null); display = Display.getDisplay(this); messageform = new Form("SMS_send"); mainform = new Form("SMS_send"); exitcommand = new Command("Exit", Command.EXIT, 0); backcommand = new Command("Back", Command.BACK, 0); sendcommand = new Command("Send", Command.ITEM, 1); mainform.append(address_tf); mainform.append(port_tf); mainform.append(message_text_tf); mainform.append(binary_cg); mainform.addcommand(exitcommand); mainform.addcommand(sendcommand); mainform.setcommandlistener(this); messageform.addcommand(backcommand); Page 52
54 Chapter 9 - Network APIs messageform.setcommandlistener(this); public void pauseapp(){ protected void startapp() { display.setcurrent(mainform); public void destroyapp(boolean unconditional) { notifydestroyed(); public void showmessage(string s) { if(messageform.size()!= 0 ) messageform.delete(0); messageform.append(s); display.setcurrent(messageform); public void commandaction(command c, Displayable s) { if((c == backcommand) && (s == messageform)){ display.setcurrent(mainform); if((c == exitcommand) && (s == mainform)){ destroyapp(false); if((c == sendcommand) && (s == mainform)){ address = "sms://" + address_tf.getstring(); if(port_tf.size()!= 0) address += ":" + port_tf.getstring(); text = message_text_tf.getstring(); new send_thread().start(); public class send_thread extends Thread{ public void run(){ try{ conn = (MessageConnection) Connector.open(address); if(!binary_cg.isselected(0)){ txt_message = (TextMessage) conn.newmessage(messageconnection.text_message); txt_message.setpayloadtext(text); Page 53
55 Chapter 9 - Network APIs conn.send(txt_message); else { bin_message = (BinaryMessage) conn.newmessage(messageconnection.binary_message); bin_message.setpayloaddata(binary_data); conn.send(bin_message); conn.close(); showmessage("message sent"); catch (Throwable t) { showmessage("unexpected " + t.tostring() + ": " + t.getmessage()); Code Sample 3 Push Registry Delivery of a Push Message A push message intended for a MIDlet on the MOTOROKR E6/E6e handset will handle the following interactions: MIDlet running while receiving a push message - if the application receiving the push message is currently running, the application will consume the push message without user notification. No MIDlet suites running - if no MIDlets are running, the user will be notified of the incoming push message and will be given the option to run the intended application as shown in Figure 11. Page 54
56 Chapter 9 - Network APIs Figure 11 Intend Application Run Option Push registry with Alarm/Wake-up time for application - push registry supports one outstanding wake-up time per MIDlet in the current suite. An application will use the TimerTask notification of time-based events while the application is running. Another MIDlet suite is running during an incoming push - if another MIDlet is running, the user will be presented with an option to launch the application that had registered for the push message. If the user selects the launch, the current MIDlet is terminated. Stacked push messages - it is possible for the handset to receive multiple push messages at one time while the user is running a MIDlet. The user will be given the option to allow the MIDlets to end and new MIDlets to begin. The user will be given the ability to read the messages in a stacked manner (stack of 5 supported), and if not read, the messages should be discarded. No applications registered for push - if there are no applications registered to handle this event, the incoming push message will be ignored. Deleting an Application Registered for Push If an application registered in the Push Registry is deleted, the corresponding push entry will be deleted, making the PORT number available for future Push Registrations. Page 55
Technical Manual. Motorola C381p Handset J2ME Developer Guide. Version 01.00
Technical Manual Motorola C381p Handset J2ME Developer Guide Version 01.00 Table of Contents Table of Contents TABLE OF CONTENTS... 2 TABLE OF FIGURES... 6 INDEX OF TABLES... 7 TABLE OF CODE SAMPLES...
More informationJava ME Developer Guide for MOTOMAGX 1.0. Developer Guide
1.0 Developer Guide Copyright 2008, Motorola, Inc. All rights reserved. This documentation may be printed and copied solely for use in developing products for Motorola products. In addition, two (2) copies
More informationMOTO Q 9h Java ME Developer Guide. Version 01.00
MOTO Q 9h Version 01.00 Copyright 2007, Motorola, Inc. All rights reserved. This documentation may be printed and copied solely for use in developing products for Motorola products. In addition, two (2)
More informationSeries 40 6th Edition SDK, Feature Pack 1 Installation Guide
F O R U M N O K I A Series 40 6th Edition SDK, Feature Pack 1 Installation Guide Version Final; December 2nd, 2010 Contents 1 Legal Notice...3 2 Series 40 6th Edition SDK, Feature Pack 1...4 3 About Series
More informationOMA-ETS-DL-OTA-v1_ a Page 1 (24)
OMA-ETS-DL-OTA-v1_0-20040317-a Page 1 (24) Enabler Test Specification for Download 1.0 Version 1.0, 17-Mar-2004 Open Mobile Alliance OMA-ETS-DL-OTA-v1_0-20040317-a OMA-ETS-DL-OTA-v1_0-20040317-a Page 2
More informationfor ColdFire Architectures V7.2 Quick Start
for ColdFire Architectures V7.2 Quick Start CodeWarrior Development Studio for ColdFire Architectures V7.2 Quick Start SYSTEM REQUIREMENTS Hardware Operating System Disk Space 1 GHz Pentium compatible
More informationMobile Application Development. Introduction. Dr. Christelle Scharff Pace University, USA
Mobile Application Development Introduction Dr. Christelle Scharff cscharff@pace.edu Pace University, USA Objectives Getting an overview of the mobile phone market, its possibilities and weaknesses Providing
More informationMinne menet, Mobiili-Java?
Minne menet, Mobiili-Java? Java Platform, Micro Edition Status and Future Directions Antero Taivalsaari Sun Microsystems, Inc. December 2005 Growth Continues (2005 vs. 2003) 1 Billion Installed Base as
More informationNOVPEK NetLeap User Guide
NOVPEK NetLeap User Guide Document Number: 001-124-04 Rev. 1.0 1/2017 Property of NovTech, Inc. 2016. All Rights Reserved Contact Information: Home Page: Company: www.novtech.com Modules: www.novsom.com/#/products1/
More informationCodeWarrior Development Tools mwclearcase Plug-in User s Guide
CodeWarrior Development Tools mwclearcase Plug-in User s Guide Revised: 29 January 2008 Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. CodeWarrior is a trademark or registered
More informationDeveloping Mobile Applications
Developing Mobile Applications J2ME Java 2 Micro Edition 1 Virtual machines portable apps virtual machine native apps operating system hardware 2 Java - important issues Symbolic language not a random
More informationInstalling Service Pack Updater Archive for CodeWarrior Tools (Windows and Linux) Quick Start
Installing Service Pack Updater Archive for CodeWarrior Tools (Windows and Linux) Quick Start SYSTEM REQUIREMENTS Hardware Operating System Disk Space Windows OS: PC with 1 GHz Intel Pentium compatible
More informationOne Identity Starling Two-Factor Authentication. Administration Guide
One Identity Starling Two-Factor Authentication Copyright 2018 One Identity LLC. ALL RIGHTS RESERVED. This guide contains proprietary information protected by copyright. The software described in this
More informationCodeWarrior Development Studio for Freescale 68HC12/HCS12/HCS12X/XGATE Microcontrollers Quick Start SYSTEM REQUIREMENTS Hardware Operating System 200
CodeWarrior Development Studio for Freescale 68HC12/HCS12/HCS12X/XGATE Microcontrollers Quick Start SYSTEM REQUIREMENTS Hardware Operating System 200 MHz Pentium II processor or AMD-K6 class processor,
More informationWho am I? Wireless Online Game Development for Mobile Device. What games can you make after this course? Are you take the right course?
Who am I? Wireless Online Game Development for Mobile Device Lo Chi Wing, Peter Lesson 1 Email: Peter@Peter-Lo.com I123-1-A@Peter Lo 2007 1 I123-1-A@Peter Lo 2007 2 Are you take the right course? This
More informationSoftware Development & Education Center. Java Platform, Micro Edition. (Mobile Java)
Software Development & Education Center Java Platform, Micro Edition (Mobile Java) Detailed Curriculum UNIT 1: Introduction Understanding J2ME Configurations Connected Device Configuration Connected, Limited
More informationCodeWarrior Kernel-Aware Debug API
CodeWarrior Kernel-Aware Debug API Revised: 17 October 2006 Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. CodeWarrior is a trademark or registered trademark of Freescale
More informationOne Identity Password Manager User Guide
One Identity Password Manager 5.8.2 User Guide Copyright 2018 One Identity LLC. ALL RIGHTS RESERVED. This guide contains proprietary information protected by copyright. The software described in this guide
More informationIntel Manageability Commander User Guide
Intel Manageability Commander User Guide Document Release Date: October 27, 2016 Legal Information INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED,
More informationKT-1 Token. Reference Guide. CRYPTOCard Token Guide
KT-1 Token Reference Guide CRYPTOCard Token Guide Proprietary Notice License and Warranty Information CRYPTOCard Inc. and its affiliates retain all ownership rights to the computer program described in
More informationfor StarCore DSP Architectures Quick Start for the Windows Edition
for StarCore DSP Architectures Quick Start for the Windows Edition CodeWarrior Development Studio for StarCore DSP Architectures Quick Start for the Windows Edition SYSTEM REQUIREMENTS Hardware Operating
More informationfor Freescale MPC55xx/MPC56xx Microcontrollers V2.10 Quick Start
for Freescale MPC55xx/MPC56xx Microcontrollers V2.10 Quick Start CodeWarrior Development Studio for MPC55xx/MPC56xx Microcontrollers, version 2.xx Quick Start SYSTEM REQUIREMENTS Hardware Operating System
More informationCodeWarrior Development Studio
CodeWarrior Development Studio for StarCore and SDMA Architectures Quick Start for Windows Operating Systems and Embedded Cross Trigger This Quick Start explains how to set up a sample project to use the
More information2005: 0.5 PQ-MDS-PCIEXP
HW Getting Started Guide PQ-MDS-PCIEXP Adaptor December 2005: Rev 0.5 PQ-MDS-PCIEXP Adaptor HW Getting Started Guide Step 1:Check HW kit contents 1.PQ-MDS-PCIEXP Adaptor 2.PIB (Platform I/O Board) to PCIEXP
More informationProgramming and Evaluation Tool for Serial EEPROMs
EasyPro 3.2 Evaluation Board User's Manual EVAL BOARD USER S MANUAL Programming and Evaluation Tool for Serial EEPROMs What is EasyPRO? EasyPRO is an easy-to-use, software-driven device programmer that
More informationOCTOSHAPE SDK AND CLIENT LICENSE AGREEMENT (SCLA)
OCTOSHAPE SDK AND CLIENT LICENSE AGREEMENT (SCLA) This is a License Agreement (the "Agreement") for certain code (the Software ) owned by Akamai Technologies, Inc. ( Akamai ) that is useful in connection
More informationController Continuum. for Microcontrollers V6.3. Quick Start
Controller Continuum for Microcontrollers V6.3 Quick Start CodeWarrior Development Studio for Microcontrollers V6.x Quick Start SYSTEM REQUIREMENTS Hardware Operating System Disk Space PC with 1 GHz Intel
More informationPRODUCT GUIDE. L e p i d e S o f t w a r e P r i v a t e L i m i t e d
PRODUCT GUIDE Table of Contents 1. About Kernel for PDF to Word... 4 1.1 Using this Manual... 4 1.2 Kernel for PDF to Word... 5 1.4 Who Should Use this Software?... 6 2. Getting Started... 7 2.1 Installation
More informationHome Phone Service CUSTOMER AGREEMENT
Home Phone Service CUSTOMER AGREEMENT This Agreement constitutes the agreement ("Agreement") between Public Service Data Wireless ("we," "us" or "PSDW") and the user ("you," "user" or "Customer") of Public
More informationCodeWarrior Development Studio for Power Architecture Processors Version 10.x Quick Start
CodeWarrior Development Studio for Power Architecture Processors Version 10.x Quick Start SYSTEM REQUIREMENTS Hardware Operating System Intel Pentium 4 processor, 2 GHz or faster, Intel Xeon, Intel Core,
More informationOne Identity Starling Two-Factor Authentication. Administrator Guide
One Identity Authentication Administrator Guide Copyright 2017 Quest Software Inc. ALL RIGHTS RESERVED. This guide contains proprietary information protected by copyright. The software described in this
More informationOne Identity Starling Identity Analytics & Risk Intelligence. User Guide
One Identity Starling Identity Analytics & Risk Intelligence User Guide Copyright 2019 One Identity LLC. ALL RIGHTS RESERVED. This guide contains proprietary information protected by copyright. The software
More informationAvaya one-x Mobile User Guide for J2ME
Avaya one-x Mobile User Guide for J2ME 18-602147 Issue 1 November 2007 2007 Avaya Inc. All Rights Reserved. Notice While reasonable efforts were made to ensure that the information in this document was
More informationNovTech User Guide Chameleon96
NovTech User Guide Chameleon96 Document Name: User Guide Document Number: 001-127-04-05-01 Rev. 1.1 10/2017 Property of NovTech, Inc. 2017. All Rights Reserved Contact Information: Home Page: Company:
More informationJSR 248: Taking Java Platform, Micro Edition (Java ME) to the Next Level
JSR 248: Taking Java Platform, Micro Edition (Java ME) to the Next Level Kay Glahn Consultant Mobile Service Architecture, Vodafone http://www.vodafone.com Erkki Rysä Technologist Nokia Corporation http://www.nokia.com
More informationComponent Development Environment Installation Guide
Freescale Semiconductor Document Number: PEXCDEINSTALLUG Rev. 1, 03/2012 Component Development Environment Installation Guide 1. Introduction The Component Development Environment (CDE) is available as
More informationv2.0 September 30, 2013
v2.0 September 30, 2013 This document was written for Iwatsu Enterprise-CS systems with version 8.x software. In some cases, available feature operations may differ from those listed in this document,
More informationLogTunnel Deployment Guide
LogTunnel Deployment Guide This guide describes the deployment process when using the SiteManager LogTunnel functions for pushing and/or pulling log data from devices to a central server. Version: 1.3,
More informationFusion360: Static SIP Trunk Programming Guide
Fusion360: Static SIP Trunk Programming Guide Contents: SIP Trunk Programming Guide.................................................................................. 4 Step 1: Gather the Following Information
More informationTerms of Use. Changes. General Use.
Terms of Use THESE TERMS AND CONDITIONS (THE TERMS ) ARE A LEGAL CONTRACT BETWEEN YOU AND SPIN TRANSFER TECHNOLOGIES ( SPIN TRANSFER TECHNOLOGIES, STT, WE OR US ). THE TERMS EXPLAIN HOW YOU ARE PERMITTED
More informationAuthentication Services ActiveRoles Integration Pack 2.1.x. Administration Guide
Authentication Services ActiveRoles Integration Pack 2.1.x Administration Guide Copyright 2017 One Identity LLC. ALL RIGHTS RESERVED. This guide contains proprietary information protected by copyright.
More informationNokia Client Release Notes. Version 2.0
Nokia Email Client Release Notes Version 2.0 Published June 9, 2008 COPYRIGHT Copyright 1997-2008 Nokia Corporation. All rights reserved. Nokia, Nokia Connecting People, Intellisync, and Intellisync logo
More informationApplication Security for Java-based BlackBerry Handhelds
Application Security for Java-based Originally posted: February 2003 Latest revision: May 2003 Introduction Corporate data access capabilities supported by the BlackBerry platform enable wireless connectivity
More informationSite Impact Policies for Website Use
Site Impact Policies for Website Use Thank you for visiting the Site Impact website (the Website ). We have set up some ground rules to ensure protection of our rights and yours. Site Impact reserves the
More informationBlackBerry Desktop Software Version 4.0 Service Pack 1 Release Notes
BlackBerry Desktop Software Version 4.0 Service Pack 1 Release Notes BlackBerry Desktop Software Version 4.0 Service Pack 1 2 of 9 NOTE This document is provided for informational purposes only, and does
More informationDevice Errata MPC860ADS Application Development System Board Versions ENG, PILOT, REV A
nc. Microprocessor and Memory Technologies Group Errata Number: E2 Device Errata MPC860ADS Application Development System Board Versions ENG, PILOT, REV A February 5, 1997 1. Failures bursting to EDO DRAM.
More informationOne Identity Starling Two-Factor HTTP Module 2.1. Administration Guide
One Identity Starling Two-Factor HTTP Module 2.1 Administration Guide Copyright 2018 One Identity LLC. ALL RIGHTS RESERVED. This guide contains proprietary information protected by copyright. The software
More informationCodeWarrior Development Studio for StarCore DSP SC3900FP Architectures Quick Start for the Windows Edition
CodeWarrior Development Studio for StarCore DSP SC3900FP Architectures Quick Start for the Windows Edition SYSTEM REQUIREMENTS Hardware Operating System Disk Space Intel Pentium 4 processor, 2 GHz or faster,
More informationM68CPA08QF Programming Adapter. User s Manual. Freescale Semiconductor, I. User s Manual. M68CPA08QF324448UM/D Version 1.
nc. User s Manual M68CPA08QF324448UM/D Version 1.0 June 24, 2003 M68CPA08QF324448 Programming Adapter User s Manual Motorola, Inc., 2003 nc. Important Notice to Users While every effort has been made to
More informationDAY 3 J2ME March 2007 Aalborg University, Mobile Device Group Mobile Phone Programming
DAY 3 J2ME Mobile Phone Programming Module 2 Micro (J2ME) Overview Introduction J2ME architecture Introduction 1 J2ME Key Factors Portability: Write once run anywhere Security: Code runs within the confines
More informationStellar WAB to PST Converter 1.0
Stellar WAB to PST Converter 1.0 1 Overview Stellar WAB to PST Converter software converts Outlook Express Address Book, also known as Windows Address Book (WAB) files to Microsoft Outlook (PST) files.
More informationSoftware Defined Radio API Release Notes
Software Defined Radio API Release Notes SDRplay Limited. Software Defined Radio API Release Notes Applications Revision History Revision Release Date: Reason for Change: Originator 1.0 03/Jun/2013 First
More informationProduct Support Notice
PSN # PSN003109u Product Support Notice 2010 Avaya Inc. All Rights Reserved. Original publication date: 13-Dec-10. This is Issue # 1, published date: 13-Dec-10. Severity/risk level High Urgency Immediately
More informationAdministrator Guide. Find out how to set up and use MyKerio to centralize and unify your Kerio software administration.
Administrator Guide Find out how to set up and use MyKerio to centralize and unify your Kerio software administration. The information and content in this document is provided for informational purposes
More informationStellar Phoenix Windows Data Recovery - Pro
Stellar Phoenix Windows Data Recovery - Pro Version 4.2 Installation Manual 1 Overview Stellar Phoenix Windows Data Recovery is a complete solution to recover data from hard disk. However, Microsoft Windows
More informationAvaya one-x Mobile User Guide for Palm Treo
Avaya one-x Mobile User Guide for Palm Treo Release 5.2 January 2010 0.2 2009 Avaya Inc. All Rights Reserved. Notice While reasonable efforts were made to ensure that the information in this document was
More informationOctober J. Polycom Cloud Services Portal
October 2018 3725-42461-001J Polycom Cloud Services Portal Copyright 2018, Polycom, Inc. All rights reserved. No part of this document may be reproduced, translated into another language or format, or
More informationCisco Instant Connect MIDlet Reference Guide
Cisco Instant Connect MIDlet Reference Guide Cisco IPICS 4.7 Americas Headquarters Cisco Systems, Inc. 170 West Tasman Drive San Jose, CA 95134-1706 USA http://www.cisco.com Tel: 408 526-4000 800 553-NETS
More informationTERMS & CONDITIONS. Complied with GDPR rules and regulation CONDITIONS OF USE PROPRIETARY RIGHTS AND ACCEPTABLE USE OF CONTENT
TERMS & CONDITIONS www.karnevalkings.com (the "Site") is a website and online service owned and operated by the ViisTek Media group of companies (collectively known as "Karnevalkings.com", "we," "group",
More informationAvaya one-x Mobile User Guide for Palm Treo
Avaya one-x Mobile User Guide for Palm Treo 18-602149 Issue 2 December 2008 2008 Avaya Inc. All Rights Reserved. Notice While reasonable efforts were made to ensure that the information in this document
More informationAvaya one-x Mobile User Guide for J2ME
Avaya one-x Mobile User Guide for J2ME Release 5.2 January 2010 0.2 2009 Avaya Inc. All Rights Reserved. Notice While reasonable efforts were made to ensure that the information in this document was complete
More informationFigure 1. Power Barrel Connector Requirements
Freescale Semiconductor Quick Start Guide Rev. 0.1, 06/29/2004 DEMO9S12NE64 Demo Quick Start Guide Introduction This kit and guide contains everything you need to get started. You will connect the board
More information4. Save as expressly set out herein no license is granted in respect of any intellectual property rights vested in F1000 or other third parties.
Legal information The website F1000.com is operated by Faculty of 1000 Limited, a company registered in England and Wales with Company Number 3739756, with registered offices at Middlesex House, 34-42
More informationFreescale Semiconductor, I
nc. Using the Bluetooth Audio Signal Processor (BTASP) for High-Quality Audio Performance Application Note AN2210/D Rev. 0, 12/2001 nc. Motorola reserves the right to make changes without further notice
More informationInstallation and Configuration Guide
Installation and Configuration Guide BlackBerry Blend Version 1.2 Published: 2015-07-06 SWD-20150706173035792 Contents About BlackBerry Blend... 4 BlackBerry Blend architecture... 4 Security... 5 IT policy
More informationSony Xperia Configurator Cloud User Instructions
Sony Xperia Configurator Cloud User Instructions This document is published by: Sony Mobile Communications Inc., 1-8-15 Konan, Minato-ku, Tokyo 108-0075, Japan www.sonymobile.com Sony Mobile Communications
More informationCisco Terminal Services (TS) Agent Guide, Version 1.1
First Published: 2017-05-03 Last Modified: 2017-10-13 Americas Headquarters Cisco Systems, Inc. 170 West Tasman Drive San Jose, CA 95134-1706 USA http://www.cisco.com Tel: 408 526-4000 800 553-NETS (6387)
More informationRedirector User Guide
Redirector User Guide Revision B November 04, 2005 Part Number GC-800-235 Copyright and Trademark Copyright 2004, Grid Connect, Inc. All rights reserved. No part of this manual may be reproduced or transmitted
More informationRapid Recovery License Portal Version User Guide
Rapid Recovery License Portal Version 6.1.0 User Guide 2017 Quest Software Inc. ALL RIGHTS RESERVED. This guide contains proprietary information protected by copyright. The software described in this guide
More informationJUGAT meeting. Roman Waitz Development. MATERNA Information & Communications
JUGAT meeting Roman Waitz Development MATERNA Information & Communications 22/04/2002 Agenda +What the J2ME Platform is +How to build and deploy J2MEbased wireless applications +J2ME programming techniques
More informationModel-Based Design Toolbox
Model-Based Design Toolbox Quick-Start An Embedded Target for the S32K1xx Family of Processors Version 3.0.0 Target Based Automatic Code Generation Tools For MATLAB /Simulink /Stateflow Models working
More informationOne Identity Starling Two-Factor Desktop Login 1.0. Administration Guide
One Identity Starling Two-Factor Desktop Login 1.0 Administration Guide Copyright 2018 One Identity LLC. ALL RIGHTS RESERVED. This guide contains proprietary information protected by copyright. The software
More informationUser Guide for Accessing Cisco Unity Connection Voice Messages in an Application
User Guide for Accessing Cisco Unity Connection Voice Messages in an Email Application Release 9.x Published June, 2013 Americas Headquarters Cisco Systems, Inc. 170 West Tasman Drive San Jose, CA 95134-1706
More informationThe Travel Tree Terms and Conditions
The Travel Tree Terms and Conditions Please read the following Terms & Conditions carefully before using this site. Use of this site indicates acceptance of these Terms and Conditions. The following terms
More informationUpgrade the Solution With No Changes 2 Upgrade the Solution With No Changes If a Codebase does not contain updates to its properties, it is possible t
Freescale Semiconductor Application Note Document Number: AN3819 Rev. 0.0, 02/2009 Methods for Upgrading Freescale BeeStack Codebases 1 Introduction This note describes how to upgrade an existing Freescale
More informationThe Privileged Appliance and Modules (TPAM) 1.0. Diagnostics and Troubleshooting Guide
The Privileged Appliance and Modules (TPAM) 1.0 Guide Copyright 2017 One Identity LLC. ALL RIGHTS RESERVED. This guide contains proprietary information protected by copyright. The software described in
More informationIPNexus Server Secure Instant Messaging & Integrated Collaboration
IPNexus Server Secure Instant Messaging & Integrated Collaboration Version 1.5 Installation & Setup Guide DOC00023 Rev. 1.0 01.03 VCON IPNexus Server Installation & Setup Guide 1 2003 VCON Ltd. All Rights
More informationM68CPA08W1628T20. Programming Adapter. User s Manual. Freescale Semiconductor, I. User s Manual. M68CPA08W1628T20UM/D Version 1.
nc. User s Manual M68CPA08W1628T20UM/D Version 1.1 January 12, 2004 M68CPA08W1628T20 Programming Adapter User s Manual Motorola, Inc., 2004 nc. Important Notice to Users While every effort has been made
More informationCisco Meeting Management
Cisco Meeting Management Cisco Meeting Management 1.1 User Guide for Administrators September 19, 2018 Cisco Systems, Inc. www.cisco.com Contents 1 Introduction 4 1.1 The software 4 2 Deployment overview
More informationDaniel MeterLink Software v1.40
Quick Start Manual P/N 3-9000-763, Rev K June 2017 Daniel MeterLink Software v1.40 for Daniel Gas and Liquid Ultrasonic Flow Meters Software License Agreement PLEASE READ THIS SOFTWARE LICENSE AGREEMENT
More informationBar Code Discovery. Administrator's Guide
Bar Code Discovery Administrator's Guide November 2012 www.lexmark.com Contents 2 Contents Overview...3 Configuring the application...4 Configuring the application...4 Configuring Bar Code Discovery...4
More informationCisco Terminal Services (TS) Agent Guide, Version 1.1
First Published: 2017-05-03 Last Modified: 2017-12-19 Americas Headquarters Cisco Systems, Inc. 170 West Tasman Drive San Jose, CA 95134-1706 USA http://www.cisco.com Tel: 408 526-4000 800 553-NETS (6387)
More informationDAY 3 J2ME Aalborg University, Mobile Device Group. Mobile. Mobile Phone Programming
DAY 3 J2ME Mobile Phone Programming Java 2 Micro Edition (J2ME) Overview Introduction J2ME architecture MIDlets Application development Introduction J2ME Key Factors Portability: Write once run anywhere
More informationDeploying Devices. Cisco Prime Infrastructure 3.1. Job Aid
Deploying Devices Cisco Prime Infrastructure 3.1 Job Aid Copyright Page THE SPECIFICATIONS AND INFORMATION REGARDING THE PRODUCTS IN THIS MANUAL ARE SUBJECT TO CHANGE WITHOUT NOTICE. ALL STATEMENTS, INFORMATION,
More informationQuarkXPress Server Manager 8.0 ReadMe
QuarkXPress Server Manager 8.0 ReadMe CONTENTS Contents QuarkXPress Server Manager 8.0 ReadMe...3 What's New in QuarkXPress Server Manager 8...4 Deprecated features, new stubs, and deploying SDK classes...4
More informationInstalling Your Microsoft Access Database (Manual Installation Instructions)
Installing Your Microsoft Access Database (Manual Installation Instructions) Installation and Setup Instructions... 1 Single User Setup... 1 Multiple User Setup... 2 Adjusting Microsoft Access 2003 Macro
More informationBCDC 2E, 2012 (On-line Bidding Document for Stipulated Price Bidding)
BCDC 2E, 2012 (On-line Bidding Document for Stipulated Price Bidding) CLAUSE 13 ON-LINE BIDDING 13.1 ON-LINE BIDDING.1 Definitions: Owner means the party and/or their agent designated to receive on-line
More informationHYCU SCOM Management Pack for Nutanix
HYCU SCOM Management Pack for Nutanix Product version: 2.5 Product release date: May 2018 Document edition: First Legal notices Copyright notice 2016-2018 HYCU. All rights reserved. This document contains
More informationDell Statistica. Statistica Enterprise Server Installation Instructions
Dell Statistica Statistica Enterprise Server Installation Instructions 2014 Dell Inc. ALL RIGHTS RESERVED. This guide contains proprietary information protected by copyright. The software described in
More informationCisco C880 M4 Server User Interface Operating Instructions for Servers with E v2 and E v3 CPUs
Cisco C880 M4 Server User Interface Operating Instructions for Servers with E7-8800 v2 and E7-8800 v3 CPUs November, 2015 THE SPECIFICATIONS AND INFORMATION REGARDING THE PRODUCTS IN THIS MANUAL ARE SUBJECT
More informationAcknowledgments Introduction p. 1 The Wireless Internet Revolution p. 1 Why Java Technology for Wireless Devices? p. 2 A Bit of History p.
Figures p. xiii Foreword p. xv Preface p. xvii Acknowledgments p. xxi Introduction p. 1 The Wireless Internet Revolution p. 1 Why Java Technology for Wireless Devices? p. 2 A Bit of History p. 3 J2ME Standardization
More informationM68HC705E24PGMR PROGRAMMER USER'S MANUAL
M68HC705E24PGMR/D Rev. 2 March 1995 M68HC705E24PGMR PROGRAMMER USER'S MANUAL Third Edition MOTOROLA Ltd., 1993, 1995; All Rights Reserved Motorola reserves the right to make changes without further notice
More informationSchool Installation Guide ELLIS Academic 5.2.6
ELLIS Academic 5.2.6 This document was last updated on 2/16/11. or one or more of its direct or indirect affiliates. All rights reserved. ELLIS is a registered trademark, in the U.S. and/or other countries,
More informationCisco UCS C-Series IMC Emulator Quick Start Guide. Cisco IMC Emulator 2 Overview 2 Setting up Cisco IMC Emulator 3 Using Cisco IMC Emulator 9
Cisco UCS C-Series IMC Emulator Quick Start Guide Cisco IMC Emulator 2 Overview 2 Setting up Cisco IMC Emulator 3 Using Cisco IMC Emulator 9 Revised: October 6, 2017, Cisco IMC Emulator Overview About
More informationCisco Meeting App. Cisco Meeting App (ios) Release Notes. October 06, 2017
Cisco Meeting App Cisco Meeting App (ios) 1.9.19.0 Release Notes October 06, 2017 Cisco Systems, Inc. www.cisco.com Contents 1 What's changed in the Release Notes 1 2 Introduction 2 2.1 Installation Instructions
More informationCisco Terminal Services (TS) Agent Guide, Version 1.0
First Published: 2016-08-29 Last Modified: 2018-01-30 Americas Headquarters Cisco Systems, Inc. 170 West Tasman Drive San Jose, CA 95134-1706 USA http://www.cisco.com Tel: 408 526-4000 800 553-NETS (6387)
More informationProduct Manual Select Code Comcode Issue 8 January EasyView Software for the Galaxy Controller
Product Manual Select Code 193-104-105 Comcode 107488710 Issue 8 January 2008 EasyView Software for the Galaxy Controller Product Manual Select Code 193-104-105 Comcode 107488710 Issue 8 January 2008
More informationSentinel EMS 4.1. Release Notes
Sentinel EMS 4.1 Release Notes Document Revision History Document Number: 007-013357-001 (Revision B), August 2016 Disclaimer and Copyrights All information herein is either public information or is the
More informationFLUENDO GENERIC EULA
FLUENDO GENERIC EULA FLUENDO S.A. Avenida Diagonal 579, 8th floor 08014 Barcelona Spain 1 END USER LICENSE AGREEMENT (EULA) FLUENDO LICENSE AGREEMENT BY FLUENDO, S.A. ( FLUENDO ) IMPORTANT - READ CAREFULLY
More informationRelease Notes. BlackBerry UEM Client for Android Version
Release Notes BlackBerry UEM Client for Android Version 12.27.0.153083 Published: 2017-01-13 SWD-20170113121937594 Contents What's new...4 Fixed issues...5 Known issues... 6 Legal notice...7 What's new
More information