application, cannot access the multimedia peripherals without going
through the multimedia subsystem and using its exposed frameworks and
APIs. The integration of MMAPI with the multimedia subsystem is a strict
requirement. All functionality of audio and video playback, recording or
processing of concurrent multiple multimedia data streams, is delegated
to the native multimedia subsystem.
A clear benefit of this mandatory approach is that Java ME applications
are consistent with native applications in regards to supported content,
playing and recording behavior. UI platforms can further ensure this
consistency by making localized changes in the customizable DLL,
which acts as an isolation layer between the MMAPI core framework and
the native multimedia subsystem.
11.5.5 Integration with Non-Operating-System Services: JSR-177
Some JSRs impose a strict requirement for integration with native services.
For example, TCP support must use the native networking stack, which,
amongst other responsibilities, acts as a high-abstraction layer on top of
the baseband hardware that is used for sending radio signals over the air.
In the case of TCP, Symbian OS has a well-defined native architecture,
ESock, and public APIs (e.g., RSocket ) that are used by the Java ME GCF
But what can be done in the case of an optional JSR for which
Symbian OS does not have native support? There are technologies where
a mandatory native service for the JSR implementation is privately owned
by the Symbian OS licensee or a network operator. We now discuss such
a case, the JSR-177 Security and Trust Services API (SATSA) Application
Protocol Data Unit (APDU) package.
SIM cards store network-specific information (e.g., IMSI, Local Area
Identity) used to authenticate and identify subscribers on the network,
other carrier-specific data (e.g., Service Provider Name) and types of
applications. The use of a SIM card is mandatory in GSM; Universal
Subscriber Identity Module (USIM) is the UMTS equivalent; in CDMA-
based devices, the Removable User Identity Module (RUIM) is popular.
The Application Protocol Data Unit (APDU) is the communication
protocol between a reader and a card. There are two types of APDU
packet: a command APDU is sent to the card for processing and a
response APDU is sent back from the card to the reader; both are defined
by the ISO 7816 standard.
JSR-177 SATSA defines the APDU protocol handler and provides
further support for logical channels, slot discovery, (U)SIM Application
Toolkit ((U)SAT), PIN operations, Answer To Reset (ATR), and so on.
The main class is javax.microedition.apdu.APDUConnec-
tion , which acts as the protocol handler for ISO 7816-4 communication