Sun Logo


Porting User’s Guide

Sun Javatrademark Wireless Client Software 2.1

Java Platform, Micro Edition

04-2008



Contents

Figures

Tables

Preface

1. Introduction

Packages and Tools

2. Overview of the Porting Process

The javacall Interfaces

Getting Started

Part I Porting CLDC and MIDP

3. Porting the Logging Facility

APIs To Be Ported

Description

Quick Workaround

4. Porting the Memory System

APIs To Be Ported

Background

Selected API Descriptions

Answers to Common Questions

Quick Workaround

5. Setting Up Time and Timers

APIs To Be Ported

Background

Preparatory Tasks

Selected Timer API Descriptions

Selected Time API Descriptions

Answers to Common Questions

Quick Workaround

6. Porting the File System APIs

APIs To Be Ported

Background

Preparatory Tasks

Selected API Descriptions

Answers to Common Questions

Quick Workarounds

7. Porting the Display (LCD) APIs

APIs To Be Ported

Background

Preparatory Tasks

Selected API Descriptions

Answers to Common Questions

Quick Workaround

8. Porting for Event Handling

APIs To Be Ported

Background

Selected API Descriptions

Answers to Common Questions

Quick Workaround

9. Porting for Keypress Events

APIs To Be Ported

Background

Preparatory Tasks

Selected API Descriptions

10. Porting Runtime Lifecycle Events

APIs To Be Ported

Background

Preparatory Tasks

JavaTask() Entry Point

Passing Events To The Java Platform

Selected API Descriptions

11. Milestone One: Running a ROMized Interactive MIDlet

12. Porting Basic Networking and Socket Communications

APIs To Be Ported

Background

Preparatory Tasks

Sequence of Operation

Common API Parameters

Selected API Descriptions

13. Porting for Advanced Networking and Socket Communications

APIs To Be Ported

Background

Selected API Descriptions

The javacall_network.h APIs

The javacall_socket.h APIs

14. Porting the Font System

APIs To Be Ported

Background

Definitions of Font Measurements

Selected API Descriptions

Font Attributes

Font Measurements

Reporting Font Width

Drawing the Font

Answers to Common Questions

Quick Workaround

15. Porting the Annunciator

APIs To Be Ported

Background

Preparatory Tasks

Selected API Descriptions

Answers to Common Questions

16. Porting Predictive Text Input Support (Optional)

APIs To Be Ported

Background

Preparatory Tasks

Selected API Descriptions

Initialization

Keypress

Traversal

Answers to Common Questions

Quick Workaround

17. Porting the Native Image Decoder (Optional)

APIs To Be Ported

Background

Selected API Descriptions

Answers to Common Questions

Quick Workaround

Part II Porting Optional JSRs

18. Porting JSR 75: File Connection APIs

APIs To Be Ported

Background

Description

Preparatory Tasks

Directory Operations

Optional APIs

File/Directory Access API

Optional APIs

File System Roots and Storage Directories API

Optional API

Root Additions/Removals Notifications

Answers to Common Questions

References

19. Porting JSR 75: Personal Information Management APIs

APIs To Be Ported

Background

Description

Preparatory Tasks

Lists and Items APIs

Fields and Attributes APIs

Categories APIs

Quick Workaround

References

20. Porting JSR 120: Short Message Service APIs

APIs To Be Ported

Background

Preparatory Tasks

Selected API Descriptions

Support for Message Segments

Answers to Common Questions

Quick Workaround

References

21. Porting JSR 205: Multimedia Message Service API

APIs To Be Ported

Background

Description

Preparatory Tasks

Selected API Descriptions

Quick Workaround

References

22. Porting JSR 135: Mobile Media API

APIs To Be Ported

Background

Overview of MMAPI

The Player

Special Player Types

Media Format

Player Controls

Platform Media Capabilities

Special Players

Player Lifecycle and Player States

The javacall_media_destroy() Function

The Unrealized State

Downloading and Examining Media Data

The Realization State

The Media Buffering Cycle

The Realized State

The Pre-Fetching State

The PreFetched State

Reporting the Media Player Duration

The Seek API: Rewind and Fast Forward

The Closed State

Selected API Descriptions

Media Library Initialization API

Simple Tones

Dual Tones

References

23. Porting JSR 234: Advanced Multimedia API

APIs To Be Ported

Background

Description

Supported and Unsupported AMMS Features

Supported SoundSource3D Audio Features

Supported Spectator Audio Features

Supported Music Effects Features

Supported Image Processing Features

Selected API Descriptions

Setting System Properties

The Global Manager

Setting 3D Audio and Music Effects

Image Processing

The Image Filter

References

24. Porting JSR 211: Content Handler API

APIs To Be Ported

Background

Description

Porting to the Platform Registry

Enumeration Functions

Other Get Functions

Porting to the AMS

References

25. Porting JSR-177: Security and Trust Services API

Background

The SATSA Security Element

SATSA-APDU Implementations

APIs To Be Ported

Initialization and Finalization API

Data Exchange API

Locking API

Retrieving Information API

Error Handling API

Additional SATSA Packages

References

26. Porting JSR 179: LandmarkStore API

APIs To Be Ported

Background

Description

Preparatory Tasks

Selected API Descriptions

Optional API

References

27. Porting JSR 179: Location API

APIs To Be Ported

Background

Description

Preparatory Tasks

Selected API Descriptions

Optional APIs

References

28. Porting JSR 82: Bluetooth API

APIs To Be Ported

Background

Description

The Bluetooth Stack

Preparatory Tasks

JavaCall API Bluetooth Variable Types and Values

Selected API Descriptions

References

29. Porting JSR 256: Mobile Sensor API

APIs To Be Ported

Background

Description

Sensor Startup Process

NativeExampleSensor Class

NativeExampleChannel Class

Selected API Descriptions

Implementing Non-Native Sensors

References

30. Milestone Two: Testing Your Completed Port

Glossary

Index