How to guide for pre-installed applications

From Nokia Developer Wiki
Jump to: navigation, search
Article Metadata
Created: User:Nobody (27 Feb 2007)
Last edited: hamishwillee (27 Jul 2012)



In preinstalled applications, application files such as binaries are already in place in their target folders on a memory card. When a memory card with preinstalled applications is inserted into a device, the preinstalled applications are automatically installed so that the user can use them without having to install them manually.

In addition to the application files, a .sis file created with a PA type must also exist in the \private\10202dce folder on the memory card. This .sis file is also known as a "stub" .sis file since it contains sis controller data but no files.

Also it was noticed that SW installer would not initiate stub .sis installation if any application with the same UID used to be installed on the device earlier. That is why reset to factory setting may be required to get stub .sis file installed automatically. However anyway user could install stub .sis file manually through SW installer.

How to create PA package

Creating PA sis package

  • Make sure that the package type is PA in the .pkg file.
  • In the .pkg file, change the target drive for each file to the MMC drive.
  • Make sure that correct product dependency is specified in the package file.
  • Get certification for the final .sis file, ie. submit the application to Symbian Signed. When submitting, include the PA type sis, .pkg file and corresponding binaries to a .zip file. Arrange the binaries in the .zip file according to the correct structure so that binaries are located in the correct directories under
    • private
    • resource
    • sys

You need to be aware of the following for PA packages:

  • Do not use FR (FILERUN) options since they are not invoked in PA packages.
  • The FN option can be used if the stub file is not read-only.

Do not use the FT (FILETEXT) option. It is skipped/ignored for PA packages.

  • The PA .sis file cannot have embedded .sis file(s).

Sample .pkg file content for PA application:

#{"Test Application"},(0x11223344),1,0,0, TYPE=PA
;Localized Vendor name
;Unique Vendor name
;Dependency for S60 3rd Edition
[0x101F7961], 0, 0, 0, {"Series60ProductID"}
;Preinstalled files
"MyTestApp.exe" - "e:\sys\bin\MyTestApp.exe"
"MyTestApp_reg.rsc" - "e:\private\10003a3f\import\apps\MyTestApp_reg.rsc"
"input.dat" - "e:\private\11223344\input.dat"

In the development phase, you can use developer certificate to sign the PA type sis. Create the .sis file and sign it with a trusted certificate and key:

makesis.exe mytestpa.pkg mytestpa.sis

signsis.exe mytestpa.sis mytestpa_signed.sis <certificate> <key>

Publishing files to target locations on memory card

Make sure that files referred in PA package exist on memory card.

Publish PA sis file to the \private\10202dce\ folder on the memory card. Publish package files to their location as specified in .pkg file.

IMPORTANT: You need to make sure that the .pkg file used to create the PA .sis file doesn’t list files that are updated/modified during run time. These files still need to be on the memory card but they will no longer be protected against tampering. If any of the installed files (e.g., the configuration file) is updated/modified, propagation won't work when the memory card is inserted to another device or when the C drive is formatted. One possible solution to this problem is that if a file (e.g., a configuration file) is updated, application(s) will not touch the original file (only reading). Instead they will make a copy of this file and update the copy.

Upgrading pre-installed applications

Preinstalled applications can be upgraded by overwriting the PA files with an SA package. When an SA package is installed to a memory card, it is propagated. This means that it will behave like a PA package when the memory card is inserted into another device.

Preinstalled applications cannot be upgraded by using Partial Upgrade (PU) packages. SIS Patch (SP) packages can be used to upgrade preinstalled applications but the upgrade is not propagated to the memory card. Thus, it will not be in place when the memory card is inserted into another device.

External links

This page was last modified on 27 July 2012, at 08:29.
61 page views in the last 30 days.

Was this page helpful?

Your feedback about this content is important. Let us know what you think.


Thank you!

We appreciate your feedback.