Porting MIDP

MIDP Reference Implementation
Version 2.0 FCS

November, 2002

 
Contents Previous Next Index

Contents


Preface

1. Introduction

1.1 Product Architecture

1.2 Porting Requirements

1.2.1 Hardware Requirements

1.2.2 Software Requirements

1.2.3 Compiler Requirements

1.2.4 Requirements of the Completed Port

2. Beginning a MIDP Port

2.1 Preparing to Port MIDP

2.2 Porting Device-Specific Configuration Code

2.3 Trying It Out

3. The Event Model

3.1 Event Model Overview

3.2 Events From the Virtual Machine

3.3 Events From MIDP

3.4 Native Functions

4. Persistent Storage

4.1 Porting the Native Layer

4.2 Customizing the Java Layer

5. Thread-Safety in LCDUI

5.1 Requirements

5.2 Design Approach

5.3 Coding Conventions

5.3.1 General Conventions

5.3.2 Public Method Conventions

5.3.3 Constructor Conventions

5.3.4 Event-Handling Method Conventions

5.3.5 Application Callout Conventions

5.3.6 Graphics Conventions

5.4 The serviceRepaints Method

6. LCDUI Graphical User Interface

6.1 Overview

6.2 Issues in Porting Low Level API Functionality

6.2.1 Drawing Graphics Primitives

6.2.2 Porting PNG Transparency

6.3 Using Native Widgets for MIDP Screens

6.3.1 General Instructions

6.3.2 Example: Replacing Part of DateField

6.3.3 Pop-Up Choice Groups

6.4 Porting the Game Package

7. Security

7.1 Overview

7.2 Permissions

7.3 Key Storage

8. Networking

8.1 Porting the Native Layer

8.2 Customizing the Java Layer

8.2.1 Generic Connections

8.2.2 Comm

8.2.3 IP Support

8.2.4 Secure Connections

8.2.5 HTTP 1.1

8.2.6 HTTPS

8.2.7 Internal Utilities

9. The Application Management System

9.1 Porting main.c

9.2 Customizing AMS

10. Push Functionality

10.1 Design Considerations

10.1.1 Protocols

10.1.2 Listening for Incoming Data

10.1.3 Message Buffering

10.1.4 User Interaction

10.1.5 MIDlet Concurrency

10.2 Porting the Native Layer

10.3 Customizing the Java Layer

11. Porting the Audio Building Block

11.1 Overview

11.1.1 Architecture

11.1.2 Implementing the Player Interface

11.2 Porting Synthetic Tones

11.2.1 Architectural Considerations

11.2.2 Generating Single Tones

11.2.3 Generating Tone Sequences

11.3 Porting Sampled Audio

11.3.1 Architectural Considerations

11.3.2 Implementing the Playback of Sampled Audio

12. Building Your Port

12.1 The Build Process

12.1.1 Makefiles

12.1.2 Build Instructions

12.1.3 Example Commands

12.1.4 Build Steps for the Target all

12.2 Adding Files to the Build

12.2.1 Adding Java Programming Language Files

12.2.2 Adding C Files

12.3 Removing Unused Code

A. Build Targets

B. Configuration Options

C. Reference Documentation for com.sun.midp.ssl

com.sun.midp.ssl

CertStore

Methods

CryptoException

Fields

Constructors

Methods

Key

Methods

KeyBuilder

Fields

Constructors

Methods

MessageDigest

Fields

Methods

PrivateKey

PublicKey

RandomData

Fields

Methods

RSAPrivateKey

Methods

RSAPublicKey

Methods

SecretKey

Methods

Signature

Fields

Methods

SSLStreamConnection

Constructors

Methods

X509Certificate

Fields

Constructors

Methods

Index

 


Contents Previous Next Index