You need to register your
applications in order to make them visible to the application menu
and to provide other information to the underlying system. To register,
you need to provide a registration resource file, typically named <application_name>_reg.rss
, that contains the non-localized
information for your application. You also need to provide the localizable registration
information. The registration resource file is compiled during
the build process and included in the pkg
file
used to make the sis
installation file.
To create a registration resource file:
Determine the requirements of your application.
Create
a text file with the name <application_name>_reg.rss
.
Include the appropriate header files. Typically, you need to include the following files:
appinfo.rh
, which is the resource
header file that includes the data structure declaration for the resource
statement used in the registration resource file.
compiled resource header file for the resource file with the symbolic ID for the localizable registration information.
localization file, depending on you implementation of the registration resource file.
Add a statement for the UID2 value for the registration resource file as follows:
UID2 KUidAppRegistrationResourceFile
UID2 always has the same value in registration resource files.
Add a statement for the UID3 value of the application as follows:
UID3 <uid3 value for application>
Create
a APP_REGISTRATION_INFO
resource for your application.
The definition for the registration code block is as follows:
RESOURCE APP_REGISTRATION_INFO { app_file = ""; // name of application binary file (not including extension) - mandatory attributes = 0; localisable_resource_file = ""; // path (not including drive) and name of localisable resource file localisable_resource_id = r_name36; hidden = KAppNotHidden; embeddability = KAppNotEmbeddable; newfile = KAppDoesNotSupportNewFile; launch = KAppLaunchInForeground; group_name(KAppMaxGroupName) = ""; default_screen_number = 0; datatype_list[]; // SUPPORTED DATATYPES file_ownership_list[]; // FILE_OWNERSHIP_INFO service_list[]; // SERVICE_INFO opaque_data = 0; // use for opaque data to send to non-native application launchers i.e. MIDlet id }
where,
app_file
indicates the name
of the application executable binary file without the extension.
localisable_resource_file
indicates
the path and name of the localizable resource file for the application.
localisable_resource_id
indicates
the symbolic name of the resource for the localizable registration
resource.
newfile
indicates whether the
application is document-based and supports the creation of new files.
The default value is KAppDoesNotSupportNewFile
.
embeddability
indicates whether
an application is embeddable.
The default value is KAppNotEmbeddable
.
The header file for the registration resource files is appinfo.rh
and is located in the ./epoc32/include
folder.
For a commented example, see HelloWorldBasic_reg.rss.