Sony Ericsson P900, P800 User Manual

October 2004
UIQ C++ and PersonalJava
P800, P900 and P910 series
Developers Guideline UIQ C++ and PersonalJava

Preface

Purpose of this document

This document describes the UIQ C++ and Personal Java support for the Sony Ericsson P800, P900 and P910 series. Readers benefiting from this document include:
• Business decision-makers
• Corporate buyers
• IT professionals
For more up-to-date information about technologies, products and tools refer to Sony Ericsson Developer
World.
• Support engineers
• Software developers
These Developers Guidelines are published by:
Sony Ericsson Mobile Communications AB, SE-221 88 Lund, Sweden
Phone: +46 46 19 40 00 Fax: +46 46 19 41 00 www.SonyEricsson.com/
© Sony Ericsson Mobile Communications AB,
2004. All rights reserved. You are hereby granted a license to download and/or print a copy of this document. Any rights not expressly granted herein are reserved.
Third edition (October 2004) Publication number: EN/LZT 108 6846, R3A
This document is published by Sony Ericsson Mobile Communications AB, without any warranty*. Improvements and changes to this text necessitated by typographical errors, inaccuracies of current information or improvements to programs and/or equipment, may be made by Sony Ericsson Mobile Communications AB at any time and without notice. Such changes will, however, be incorporated into new editions of this document. Printed versions are to be regarded as temporary reference copies only.
*All implied warranties, including without limitation the implied warranties of merchantability or fitness for a particular purpose, are excluded. In no event shall Sony Ericsson or its licensors be liable for incidental or consequential damages of any nature, including but not limited to lost profits or commercial loss, arising out of the use of the information in this document.
2 October 2004
Developers Guideline UIQ C++ and PersonalJava

Document history

Change history
2003-10-31 Version R1A First release
2004-08-18 Version R2A Second release, P910 updates
2004-10-11 Version R3A Third release, updates and editorial changes

Trademarks and acknowledgements

Sun, Java and all Java-based trademarks and logos are trademarks or registered trademarks of Sun Microsystems, Inc. in the U.S. and other countries.
Symbian and all Symbian-based marks and logos are trademarks of Symbian Limited.
Borland and JBuilder are trademarks or registered trademarks of Borland Software Corporation in the United States and other countries.
Metrowerks and CodeWarrior are trademarks or registered trademarks of Metrowerks.
The Bluetooth word mark and logos are owned by the Bluetooth SIG, Inc. and any use of such marks by Sony Ericsson is under license.
Microsoft, Windows and Visual Basic are either trademarks or registered trademarks of Microsoft Corpo­ration in the United States and/or other countries.
Other product and company names mentioned herein may be the trademarks of their respective owners.

Terminology and abbreviations

API Application Programming Interface
CLDC Connected Limited Device Configuration. A J2ME configuration for mobile devices.
JSR Java Specification Request
MIDlet Suite One ore more MIDlets that belong to the same JAR file and share common date
HTTP HyperText Transfer Protocol
J2ME Java 2 Micro Edition. A Java platform targeting ‘micro’ devices with small processors and memory capacities, such as mobile phones, communicators and PDAs.
MIDP Mobile Information Device Profile. A J2ME profile connected to the CLDC for mobile phones
MMAPI Mobile Media Application Programming Interface
SMS Short Message Service
3 October 2004
Developers Guideline UIQ C++ and PersonalJava
URI Uniform Resource Identifier
URL Uniform Resource Locator
WMA Wireless Messaging API
WTK Wireless Toolkit

Online Developer Resources

On the Sony Ericsson Developer World website, http://www.sonyericsson.com/developer/, developers will find all documentation and tools such as phone White Papers, Developers Guidelines, SDK's and API's, and so on. The developer web site also contains discussion forums monitored by our Sony Ericsson Developer Support team, a searcheable Knowledge Base of support queries and solutions, Tips & Tricks, example code, and so on. To stay up-to-date on development issues, register and subscribe to the monthly Sony Ericsson Developer Newsletter.

Sony Ericsson Developer Support

Sony Ericsson offers developers professional technical support services. The service can be purchased from the developer web portal, as part of the Sony Ericsson Core and Core+ membership package, or as individual support incidents. There are two levels of support included in the memberships.
The Basic E-mail Developer Support is an annual support service included in the Core membership that provides developers with all the basics to successfully develop world class applications for Sony Ericsson products. With this support contract, developers get access to Sony Ericsson developer support engi­neers via email with same-day response, five technical support incidents as well as the ability to purchase more.
The Priority E-mail Developer Support is an annual support service included in the Core+ membership that equips professional developers with everything they need to successfully develop world-class appli­cations for Sony Ericsson products. With this support contract, developers get priority access to Sony Ericsson developer support engineers via email with fast response times and up to 50 technical support incidents.
4 October 2004
Developers Guideline UIQ C++ and PersonalJava

Contents

Purpose of this document .........................................................................................2
Document history ......................................................................................................3
Trademarks and acknowledgements ....................................................................3
Terminology and abbreviations .............................................................................3
Online Developer Resources .....................................................................................4
Sony Ericsson Developer Support .........................................................................4
Technical overview and architecture ........................................................................7
A developer’s perspective on the P800, P900 and P910 series ...............................8
Application development ...........................................................................................9
General information about the P900 series .............................................................10
General tips for the P900 and P910 series .............................................................10
Internal user storage – C: drive ...............................................................................11
Folder view of internal storage ............................................................................11
C++ ..........................................................................................................................13
PersonalJava ...........................................................................................................14
Additional tools useful to the pJava developer ...................................................14
pJava performance ..............................................................................................15
pJava application considerations ........................................................................15
pJava font limitations (java.awt.Font) ..................................................................15
Behaviour related to flip modes ...........................................................................16
Application development .....................................................................................16
UIQ 2.0 vs UIQ 2.1 and application compatibility .............................................16
UIQ SDK for Symbian OS v7.0 .........................................................................17
Device Emulator and Library Linking ................................................................17
Porting applications ..........................................................................................18
Sony Ericsson specific APIs ................................................................................19
Camera API .......................................................................................................19
Vibration API .....................................................................................................19
Streaming AMR API ..........................................................................................20
MMS API ...........................................................................................................20
Other useful Symbian APIs ..................................................................................20
Device identification ..........................................................................................20
Bluetooth...........................................................................................................21
IMEI, IMSI..........................................................................................................21
Colour display ...................................................................................................21
Audio .................................................................................................................21
Media server .....................................................................................................21
API Limitations .....................................................................................................22
COMMDB Object ..............................................................................................22
BIOMSG Object ................................................................................................22
BAFL bassnd.h..................................................................................................22
CEikInfoDialog...................................................................................................22
WAP stack.........................................................................................................22
ETel ...................................................................................................................23
Messaging/MMS ...............................................................................................23
Deploying applications on the P800, P900 and P910 series ..................................23
P800/P900 series specific .sis packages ............................................................24
Installation and data storage ...................................................................................25
5 October 2004
Developers Guideline UIQ C++ and PersonalJava
On-target debugging ...............................................................................................25
Signing digital applications .....................................................................................26
Symbian Signed ...................................................................................................26
Installing ”Symbian Signed” applications on the P800, P900 and P910 series26
Go-to-Market opportunities ....................................................................................27
Technical specifications and references ................................................................28
Technical specifications for the P800, P900 and P910 series ................................29
Links and references ...............................................................................................30
Tips, information and external documentation ....................................................30
6 October 2004
Developers Guideline UIQ C++ and PersonalJava

Technical overview and architecture

This document is valid for the Sony Ericsson P800, P900 and P910 series mobile phones.
The Sony Ericsson P800, P900 and P910 series mobile phones are based on the Symbian™ UIQ user interface. UIQ is a pen-based user interface platform for media rich mobile phones based on the Symbian Operating System (OS).
The P800, P900 and P910 series is a versatile application platform enabling application developers to cre­ate applications in a variety of programming languages, including native C++, Personal Java (pJava), Java (J2ME) and Visual Basic. This document provides guidelines for developing C++ and pJava based appli­cations. For J2ME and Visual Basic development environments, refer to the links provided at the end of this document.
The reader of this document is expected to understand the basics of Symbian OS™, UIQ and the devel­opment environment of UIQ SDK. For further reading, please refer to h
ttp://www.uiq.com/developer.
7 October 2004
Developers Guideline UIQ C++ and PersonalJava

A developer’s perspective on the P800, P900 and P910 series

The P800, P900 and the P910 series are based on Symbian OS 7.0. The P800 User Interface (UI) is based on UIQ 2.0, whereas the P900 and P910 series are based on UIQ 2.1. The table below presents a compar­ison of what is supported by the different phones and what developers need to consider when designing applications:
Technical data P910 series P900 series P800 series
SDK support UIQ 2.1, 2.0 UIQ 2.1, 2.0 UIQ 2.0
Colour screen 262K 65K 4K
Camera API Yes Yes Yes
(CXC 162001 R2A14 and later)
Camera Video API Yes Yes No
MMS API Yes No No
Vibration API Yes Yes Yes
Streaming AMR API Yes Yes Yes
Themes Yes Yes No
Internal User storage 64 MB 16 MB 12 MB
Additional storage: Memory Stick Duo Memory Stick Duo Pro
supports up to 128 MB supports up to 1 GB
supports up to 128 MB No
(CXC 162001 R2A14 and later)
supports up to 128 MB No
8 October 2004
Developers Guideline UIQ C++ and PersonalJava

Application development

This chapter contains information for the developer of C++ and PersonalJava™ applications for the Sony Ericsson P800, P900 and P910 series of mobile phones.
9 October 2004
Developers Guideline UIQ C++ and PersonalJava

General information about the P900 series

The table below lists the major features of the P900 series:
Feature Support
Third party application support • C++
• PersonalJava
TM
•J2ME
• Microsoft® Visual Basic® 6
Music Player MP3,WAV, AU, AMR, MIDI (G-MIDI level 1 with 24 voices polyphony),
RMF, iMelody
Video Recorder and Player 3GPP and MPEG4 (VGA, QVGA, QQVGA and 24-bit colour depth)
with AMR encoded audio (2 quality levels + video without audio)
CLDC/MIDP 2.0 with JSR 120 and JSR 82.
Streaming RTSP according to 3GPP
Still images JPEG/EXIF
Feature Support
Integrated browser • WAP Version:2.0
• Markup HTML3.2 (excl. JavaScript and partial support for Frames)
• Languages: WML 1.3
WBXML XHTML Basic XHTML Mobile Profile cHTML
• Scripting: Compiled WML scripts
• Style sheets: WCSS
• Security: WTLS Class 1, 2, 3
TLS/SSL
• Certificates: Pre-install & download
WTLS, X.509
• WIM: WIM interface including SIM-WIM
Note: For further J2ME related information, see “Developers Guidelines Java MIDP 2.0 for the P900 series mobile phones” available at Sony Ericsson Developer World
.

General tips for the P900 and P910 series

The UIQ version 2.1 introduces new features within the Symbian OS platform:
10 October 2004
Loading...
+ 21 hidden pages