Find here a collection of tools you can use to develop on the UIQ platform.
Tools & libraries
- makesis
- Cryptography APIs
- hash & random libraries
- POSIX libraries
- C++ Standard Template Librarie (STL)
Emulator
Rapid application development environments and languages
Tools & libraries
makesis (2007-06-06)
The installation file generator, makesis, creates software installation packages (SIS files) based on information and file locations on the source PC or target phone, defined in a package (PKG) file. The version currently in the SDK does not fully support the -d option, this updated version supports all options supports, including the -d option for both language dependent and language independent files. For more information on this update, see the Symbian FAQ-1479.
Full documentation is available in the SDK documentation at » Symbian OS Tools And Utilities » Software Installation Toolkit - reference » MakeSIS - Installation file generator syntax
»» Download:
makesis
Cryptography APIs (2007-08-17)
Header files allowing developers to make use of the built-in Symbian OS cryptography libraries. These header files are being made available as a package which can be installed over the top of an existing UIQ 3 SDK, and include APIs for encryption and decryption using symmetric and asymmetric keys, and password-based encryption and decryption. Applications compiled using these APIs will use the cryptography libraries built into Symbian OS phones and emulators. Documentation is included.
»» Download:
Cryptography header files
hash & random libraries (2007-01-30)
The two libraries hash.lib and random.lib are not included in the UIQ 3.0 SDK. If you need to use APIs contained in these libraries, get the zip file.
»» Download:
hash.lib & random.lib
POSIX libaries (PIPS) (2008-02-15)
PIPS is POSIX on Symbian - enables C programmers to more easily migrate existing middleware and applications, either commercial or open source, to Symbian OS and UIQ by providing standard POSIX C APIs on Symbian OS. The new APIs are packaged into the following industry standard libraries:
- libc - The "C Standard Library" with system APIs mapped to Symbian OS APIs for better performance
- libpthread - Implements POSIX-style threading support in terms of the underlying Symbian OS thread support
- libdl - Implements POSIX-style dynamic linking that extends the dynamic loading model of Symbian OS
- libm - A mathematical library
- libz - Zlib compression
»» For more information on PIPS and download the UIQ 3 SIS file: P.I.P.S. home
»» Read the interview of Lars Persson, aka AnotherGuest, to discover how he uses P.I.P.S. when porting games to UIQ 3 and why he finds it contributes to make porting easy.
C++ Standard Template Library (STL) (2007-05-21)
The C++ Standard Template Library (STL) is a library that is part of the ISO/IEC C++ Standard that is not included natively in the Symbian OS platform. The STL eases the porting to UIQ 3 of a wide range of existing C++ code. Marco Jez and Charles Weir have each ported an implementation of the STL to Symbian OS and UIQ 3:
- STLPort - full featured port of STL. This implementation has a dependency on the Standard C library, that is provided by the P.I.P.S. library. Ported by Marco Jez.
- uSTL - subset of the STL, along with some features to improve usability for Symbian OS (e.g., easy interchange between Symbian OS Descriptors and std::string UTF strings and Using User::Leave for memory errors). Ported by Charles Weir, Penrillian.
Recommendation and notes from the authors: The STL in Symbian OS stops where the Symbian OS API begins, so if you're writing a GUI application or an application that uses system-specific features then you can't rely on the STL alone, but you can still use it in your application's internals. If your primary concern is to be portable, for example to write a cross-platform application (or part of an application) that must work on different platforms, then the STL will avoid you the cost of writing two distinct applications instead of just one. For those who need the STL, the full featured STLPort is preferred unless you're writing or porting less demanding code then you may prefer to reduce code (and thus memory) size with the uSTL port.
»» For more information on both these libraries see this forum thread.
Emulator
Skins
You can easily replace the UIQ emulator skin (the phone look-alike image you see in the emulator) to one of your liking. Here are the UIQ 3 based phones skins and a small collection of alternative skins you can use instead of the default one (image file, configuration file and an installation guide are included):
| Skin name | Download | Preview |
| Motorola MOTO Z8 | preview | |
| Sony Ericsson P1 | preview | |
| Sony Ericsson W960 | preview | |
| Sony Ericsson W950 | preview | |
| Sony Ericsson M600 | preview | |
| Sony Ericsson P990 FC | preview | |
| Sony Ericsson P990 FO | preview | |
| Compact | preview | |
| Simple | preview |
Rapid application development environments and languages
SymRAD
SymRAD is a free rapid application development tool for developing user interface-based applications. You develop your application - as an XML file with Javascript functions - within a text editor, copy it to the phone and it is interpreted directly by SymRAD.
»» For more information on SymRAD and download the UIQ 3 SIS file: SymRAD wiki
PyUIQ - Python for UIQ
PyUIQ is port of Python for UIQ. It is a preliminary port based on Python for S60 which itself is based on Python 2.2.2.
»» Download the UIQ 3 files from: PyUIQ project page