Tutorials explaining and describing specfic areas of UIQ 3 and reference guides covering cross-functional topics. These practical documents support developers in understanding and getting familiar with UIQ development, and in producing "well-behaved" UIQ applications.
Essential UIQ 3 - Getting started (booklet)
Guides developers through some of the most important features of the UIQ 3 development platform by walking through an example.
More information
This booklet guides developers through some of the most important features of the UIQ 3 user interface and development platform. Walking through an example you will learn key concepts of UIQ 3, the basics of application design, building applications and adding views. You will also get some handy tips that will prove helpful when you write your own applications. All the information a developer needs to get started with UIQ in one handy booklet. This is the first booklet published by Symbian Press dedicated to UIQ.
The full code this booklet is based upon is available in the UIQ 3 White Paper Series - Issue 01 and Issue 02.
Essential UIQ 3 - Getting started (booklet) - Chinese version
Booklet, in Chinese, to guide developers through some of the most important features of the UIQ 3 development platform.
More information
This Chinese booklet guides developers through some of the most important features of the UIQ 3 user interface and development platform. Walking through an example you will learn key concepts of UIQ 3, the basics of application design, building applications and adding views. You will also get some handy tips that will prove helpful when you write your own applications. All the information a developer needs to get started with UIQ in one handy booklet. This is the first booklet published by Symbian Press dedicated to UIQ.
The full code this booklet is based upon is available in the UIQ 3 White Paper Series - Issue 01 and Issue 02.
UIQ 3 Java ME platform and tools
Java ME is part of the UIQ 3 platform. Find more about how MIDP and additional JSRs are tightly integrated into the native UIQ 3 platform.
More information
The richness of UIQ 3 is exposed to Java developers through standard Java ME APIs, which are integrated to the UI platform to provide a robust, scalable and optimized execution application environment.
UIQ 3 supports the widely adopted MIDP standard. At the core of the platform is the engine - a high-performance CLDC virtual machine. Additional Java ME API packages, JSRs, all tightly integrated to the native APIs of UIQ 3 (e.g., file and PIM access, Bluetooth, 3D graphics, multimedia and more), provide additional opportunities to create rich applications using this set of optional APIs that complement MIDP.
Views in UIQ 3
Summary of the view architecture and a look at how applications create, launch, and switch views, including switching to and from views created and owned by other application.
More information
Views abstract from the details of the physical display that is available on a particular device, and from other details of the windowing and graphics model, to provide application developers with a simplified logical framework for display and interaction. Typically an application populates its views with GUI controls (list boxes, displayed or editable text, dialogs and menus, images, and so on), which enable user interaction with the application. All (displayable) applications require at least one view.
In UIQ applications, one view is identified as the application 'base' view, the default view which is displayed when the application launches. Other views are activated by user interaction with the base view and enable detailed interaction with the application. For example, many applications use a list-based view as the base view to show their data, and editable text-based views as the detail views for users to enter and update details of selected entries in the list view.
Tips and tricks for screen layouts in UIQ 3
How to create and use UIQ 3 simple dialogs and view dialogs, how building blocks let you create complicated screen elements, and how to make resource files easily readable.
More information
When porting applications to UIQ 3, a new user interface (UI) is often necessary to fit the ported engine code. Creating a UI in UIQ 3 is surprisingly easy, but it's a bit different from the other Symbian OS platforms, and in this article we are going to share with you some tips and tricks that we at Penrillian have learned along the way.
One of the first surprises in UIQ 3 is that it really does live up to its claim to be resource-driven. You can define most kinds of standard layout using dialogs and 'view dialogs', supported entirely by resources - and do so in a way that works equally happily on many different kinds of phone.
UIQ 3 gives you great flexibility in how to put resources together for dialogs and view dialogs; this article aims to show you the way we've found easiest.
UIQ 3 workshop (Symbian Smartphone Show 2006)
Slides from the "Designing applications for UIQ 3" workshop presented by EMCC Software at the Symbian Smartphone Show 2006.
More information
Slides from the Designing applications for UIQ 3 workshop presented by Adam Fleming from EMCC Software at the Symbian Smartphone Show 2006. This workshop is in two parts. The first is an introduction to the UIQ 3 user interface platform. The second is a much more in-depth look at one aspect of UIQ 3 programming: how controls are laid out by the UIQ 3 platform (how to use the layout manager and building blocks).
How to start the application framework (white paper)
Learn the most important features of the UIQ 3 and how to start the application framework. (UIQ 3 white paper - Issue 01)
More information
This is the first white paper in a series that will guide new and experienced developers through the most important features of the UIQ 3 development platform. It is expected that the developer has some familiarity with Symbian OS programming since basic concepts will not be described here. Should you not be familiar with those basic concepts then you should still be able to follow this white paper, though so some details might look strange.
View and command: resource file-driven layout (white paper)
Learn about UI configurations, building blocks, the command processing framework, and to construct views from resource files. (UIQ 3 white paper - Issue 02)
More information
In this white paper we continue from where we stopped in the previous whitepaper: now that we know how to start the application framework, we will take our application a step further and improve our view. Once you have worked your way through this white paper you should have a good understanding of UI configurations, building blocks and the command processing framework (CPF) concepts, you should be able to construct the content of your view from a resource file, create and handle some commands, and know how your view adapts to different UI configurations.
UIQ 3 style guide
Provides developers and interaction designers with guidelines on how to design application user interfaces for the UIQ 3 platform.
More information
UIQ 3 can be used for mobile phones that have any one of a variety of form factors. The phone can be pen-based or softkey, portrait or landscape, and, this is provided on just one codeline. For developers this means that applications can be written once and used directly on any UIQ 3 device regardless of form factor. UIQ 3 takes care of rearranging the layout and adapting the application to the mobile phone's interaction style. This document describes the UI fundamentals for the two main reference UI styles that UIQ 3 provides: Softkey style and Pen style.
Available in html from the UIQ Developer Library.
Programmer's guide to new features in UIQ 3
Guide to the new feature introduced in UIQ 3; includes code snippets.
More information
This document explains the motives behind the extensive set of changes introduced in UIQ 3 (especially in the application framework and user interface controls) and provides developers with an informative guide to migrating from previous UIQ releases to UIQ 3.
The main objectives for this release of UIQ were to ensure UIQ is a viable option for mid-tier phones by enabling keypad input as well as touch-screen input; to increase the flexibility of UIQ further to enable a wider variety of UIQ phones to be created from a single code line by, for example, supporting a range of screen sizes; to increase and enhance the customization features of UIQ to ensure simpler and faster branding and differentiation of UIQ 3 phones; and to improve public APIs to make it easier for developers to create applications for UIQ 3.
Available in html from the UIQ Developer Library.
UIQ 3 application behavior guide
Specifies the general behavior that should be followed by every UIQ 3 application.
More information
The Application Behavior Guide (ABG) specifies the general behavior for applications in different situations. These behavior guidelines should be followed by every UIQ application. If an application for some reason cannot comply with some of the guidelines in the ABG, this should be motivated in the specification for that application. These guidelines apply to applications in UIQ 3 and later versions.
Available in html from the UIQ Developer Library.
UIQ migration quick guide
Outlines some of the necessary steps to take to migrate an application from UIQ 2.1 to UIQ 3.
More information
The UIQ Migration Quick Guide outlines some of the necessary steps to take to migrate an application from UIQ 2.1 to UIQ 3. It is not a complete guide to all the new features in UIQ 3 but rather a place to start. For more information see the other documents included in the Developer Library, in particular the Programmer's guide, the Style guide, the API reference documentation and the various How-To guides.
Available in html from the UIQ Developer Library.
Porting to UIQ 3
Guidelines and suggestions on how to rewrite existing - UIQ 2, S60 2nd Ed., Windows Mobile & Palm OS - applications for UIQ 3.
More information
This special interest paper is all about porting to UIQ 3 - from UIQ 2, from S60, from Windows Mobile and from Palm OS. Some general tips will apply as well if you're porting from another platform. Co-authored by Sony Ericsson Developer World and Penrillian the package includes two sample applications illustrating the porting process from S60 Second Edition and UIQ 2.1.
Kylom - Taking full advantage of UIQ 3 (interview)
Benoit Dupont, Kylom's owner, explains how his software runs successfully on all UIQ 3 phones.
More information
The same Kylom software runs successfully on touchscreen devices, such as the Sony Ericsson P1, as well as on keypad phones, such as the Motorola MOTO Z8. In this white paper Richard Bloor, of SymbianOne.com, explores how Benoit Dupont, Kylon's owner, has achieved this by taking full advantage of the flexibility of UIQ 3. The article focuses on the process used by Benoit to ready his UIQ 3 applications for the Motorola MOTO Z8.
Porting: instant gratification on UIQ 3 (interview)
AnotherGuest, the prolific porter of applications to UIQ 3, reveals his motivation and method.
More information
Lars Persson - using the pseudonym of AnotherGuest - is the popular and prolific porter of applications, mostly games, to UIQ 3. In an interview with Richard Bloor of SymbianOne.com, Lars wonders why there are not more developers porting applications to UIQ 3. Lars presents his porting process, in the hope of making porting easy for every developer.
WebGate: taking a passion for technology to the market (interview)
Learn why WebGate finds that for any developer unfamiliar with Symbian OS, UIQ offers an easy learning experience.
More information
WebGate's engineers are huge fans of UIQ. Richard Bloor of SymbianOne.com in an interview with Spartak Kabakchiev finds out how WebGate went from creating an application that was pleasing from a technical point of view but didn't succeed in the market to developing a commercial success: Advanced Call Manager. This application, built on their technical expertise, addressed the need of a well identified market: early technology adopters and power users of smartphones
WebGate's engineers found that, for programmers with a background in developing Windows applications, UIQ offers the best introduction to Symbian OS C++ development. Once these developers have gained knowledge of the concepts common to Symbian UIs, such as resource files, from working with UIQ it is much easier for them to understand the controls specific to the S60 platform.
OutBank: banking on UIQ (interview)
Find out how straightforward was the experience of Stoeger it to port OutBank from S60 3rd Edition to UIQ 3 and how it helped further improve the quality of the code.
More information
OutBank was first developed for S60 1st and 2nd Edition devices. It has since been ported to all Symbian OS phones with UIQ 3 being the latest release. Richard Bloor, of SymbianOne.com interviews Tobias Stoeger and discovers that porting has been straightforward. Several features of UIQ 3 were found to be an improvement over S60, with the building blocks approach to resource file creation a significant advantage.
Porting OutBank to UIQ 3 not only ensured complete coverage of all Symbian OS phones, it also helped improve the quality of the code and made it easier to add new functionality.
Porting DreamConnect to UIQ 3 (interview)
Discover how DreamSpring took advantage of the changes in UIQ 3 when porting DreamConnect, its innovative contact manager.
More information
The release of UIQ 3 has seen some important changes in the interface. For developers, this offers challenges and opportunities, particularly when bringing a successful UIQ 2 application to the updated UIQ platform. Richard Bloor, of SymbianOne.com, looks at how early-adopter DreamSpring took advantage of the changes when porting its innovative contact manager DreamConnect.
Find out what document on this portal is an essential reading for DreamSpring's developers and get some tips gathered through fellow developers' experience.
Porting to UIQ 3 from S60 - A practical approach
Learn how to port a simple multi-view S60 2nd Edition application to UIQ 3.
More information
This tutorial will show you how to port a simple application from S60 to UIQ 3. In it, Gregory Saugis and Eric Bustaret from NewLC drive you through their experience in porting an S60 2nd Edition task manager with two views. You will learn some important concepts introduced in UIQ 3, understand how to adapt the design of an S60 application to UIQ 3 and how to rewrite all that is GUI-specific (resources, code).
When porting from S60 2nd Edition to UIQ 3, a lot more than just renaming a few classes is needed, however, thanks to the new framework, building blocks and layout manager provided by the UIQ 3 platform, this is surprisingly easy. The source code referenced in the article is included and licensed under the GPL.
Case study - Porting Quickoffice Premier to UIQ 3
Case study by Quickoffice of the port of its QuickOffice Premier to UIQ 3.
More information
Quickoffice Premier is the leading mobile office suite on the UIQ software platform. The application allows Mobile Business Professionals to manage their office files directly on their smartphone. Quickoffice focuses exclusively on the mobile professional with its core mobile office suite as well as logical application extensions and services. UIQ 3 brings the mobile developer community the valued mid-tier range of devices that will hopefully increase both the volume and reach of their software applications.
Getting started with web services - gSOAP for UIQ 3
Tutorial on the gSOAP (Simple Object Access Protocol) package; includes examples of using web services with UIQ 3.
More information
Getting started with web services takes you through the gSOAP (Simple Object Access Protocol) package, explains its usage on UIQ 3 and shows how to create a simple Google query example application. This tutorial is authored by Sony Ericsson Developer Program and the accompanying example application created by Penrillian.
How to write backup aware software
What you need to do in your application or server in order for it to participate in backup and restore operations.
More information
Symbian OS includes software to carry out backup and restore operations from a connected PC. In order for this software to function correctly, it requires co-operation from other software (servers and applications) running on the phone. This document describes the required co-operation, how an application or server needs to behave in order to participate in backup and restore operations.
Introduction to localizing your UIQ 3 applications
Introduction to localizing your UIQ 3 applications; covers the changes brought by the introduction of platform security.
More information
This article outlines the measures required to localize your UIQ 3 applications. The introduction of an enhanced security architecture in Symbian OS v9 has imposed constraints that have necessitated minor changes in the structure of applications. These necessarily result in some changes to the structure and location of resource files involved in localization. This Symbian-authored article is part of a Symbian series of papers on localization.
Designing for interaction with UIQ 3
The interaction architect from UIQ Technology talks about interaction design for UIQ 3.
More information
Mobility makes designing for the mobile phone a different game than designing for the PC. People buy phones because they want to communicate with others on the move, despite the limitations of a small handset. We have designed UIQ 3 for high-volume phones by focusing on ease of use.
UIQ 3 themes creation guide
Describes how to set the look and feel of a UIQ 3 phone; specifies which elements can be changed and customized.
More information
This document describes the components that make up a theme. A theme is a collection of media files that is used to set the look and feel of a UIQ device. Changeable components include control bitmaps, system sounds and wallpapers. This document also specifies which elements of UIQ can be changed and customized, and other properties of a theme; it provides guidelines and advices on how to perform those changes.
Configuration of environment settings in the UIQ 3 emulator
Explains the environment settings and how they can be configured using the UIQ Environment Configuration Tool (UiqEnv).
More information
Symbian OS and UIQ 3 provide support for dealing with the complexity of configuring the development environment. Environment settings are available to configure the emulator for various UI styles, to determine which communication ports to use and to provide connectivity through the PC.
For most application developers these settings are more or less irrelevant; the emulator's default settings are perfectly adequate. But for anyone looking into developing communicating software, there are several settings to be considered in order to configure an SDK environment that is suitable for developing and testing. Even developers of applications that are targeted for UIQ phones with varying UI styles will want to adjust the settings.
Available in html from the UIQ Developer Library.