Thursday, July 27, 2006

Signing Error Messages Series 60 (S60) 3rd Edition

If you have been reading discussions at Forum Nokia Developer Discussion Board recently, you may notice there are many questions about signing in S60 3rd Edition. It seems the new security feature in Symbian 9 has led to frustration for some developers.

I would like to share what kind of error messages I have seen when installing signed/unsigned application in S60 3rd Edition phones. There is a hint that explains what may cause a particular message. I may not be able to cover all error messages because I may not have seen all of them.

Read also a nice blog posting from S60 team, Signing applications for S60 3rd Edition.

Message: Certificate error. Contact the application supplier.


Hint: You may have tried installing unsigned application. Note that signing is mandatory S60 3rd Edition. You can use self-signed certificate or developer certificate from Symbian Signed to sign your application.

Message: Unable to install. Constrained by the certificate.


Hint: This message pops up when you attempt to install developer certificate in the unsupported device. The developer certificate from Symbian Signed can only be used in a limited number of devices. Remember that you have to send your IMEIs to Symbian Signed when requesting certificate. You cannot use the certificate in other devices that is not in your IMEIs list.

Message: Required application access not granted


Hint: Check that your certificate can be used to sign all capabilities needed by your application. For example, if you use self-signed certificate, you can only sign basic set capabilities, i.e. NetworkServices, ReadUserData, WriteUserData, LocalServices and UserEnvironment. If your application requires one of the extended capabilities, for example SwEvent, you cannot sign it with self-signed certificate. In this case, apply for developer certificates from Symbian Signed.


Message: Unable to install a protected application from an untrusted supplier


Hint: If you use self-signed certificate, make sure that your application uses unprotected UID, i.e. 0xA0000000 - 0xAFFFFFFF. If you use protected UID (0×20000000 - 0×2FFFFFFF) or legacy UID (0×10000000 - 0×1FFFFFFF), you will get this message.

Message: Unable to install



Hint: This message may come up when your installation file (.sis/.sisx) copies files to other application’s private folder, i.e. \private\uid. Note that Symbian 9 introduces data caging concept, it means you don’t have access to other application’s private folder.

3 comments:

Anonymous said...

http://groups-beta.google.com/group/alt.cellular.nokia/browse_frm/thread/2aaca9c37f7df511/#

Device: Nokia E50-1
OS: Symbian 3rd ED futured pack 1 (aka v9.1)

During instaling JAR App (J2ME) after ~80% i had a error "Unable To
Install" !!!

The problem is ... that Installer have a bug, i think so !!! Than U
install JAR from Internet by JAD and connection is lost, installation
is interapted AND U are in trouble !!!
After this U can't install any more JAR and can't see in APP.Manager Ur
allready installed JARs (few still are)

Do u know this !?! Do U know which files are responsyble for that !?!
Any ideas =) ???

One more thing .. i found file Z:\System\swipolicy.ini

AllowUnsigned = false ***IT'S MY NOTES - THERE I MUST CHANGED IT. IN
APP.Manager - INSTALL ALL IS SET TO TRUE - END OF MINE***
MandatePolicies = false
MandateCodeSigningExtension = false
Oid = 1.2.3.4.5.6
Oid = 2.3.4.5.6.7
DRMEnabled = true
DRMIntent = 3
OcspMandatory = false
OcspEnabled = true
AllowGrantUserCapabilities = true
AllowOrphanedOverwrite = true
UserCapabilities = NetworkServices LocalServices ReadUserData
WriteUserData UserEnvironment
AllowPackagePropagate = true
SISCompatibleIfNoTargetDevices = false
RunWaitTimeoutSeconds = 600
AllowRunOnInstallUninstall = false
DeletePreinstalledFilesOnUninstall = true

Anonymous said...

http://groups-beta.google.com/group/alt.cellular.nokia/browse_frm/thread/2aaca9c37f7df511/#

Device: Nokia E50-1
OS: Symbian 3rd ED futured pack 1 (aka v9.1)

During instaling JAR App (J2ME) after ~80% i had a error "Unable To
Install" !!!

The problem is ... that Installer have a bug, i think so !!! Than U
install JAR from Internet by JAD and connection is lost, installation
is interapted AND U are in trouble !!!
After this U can't install any more JAR and can't see in APP.Manager Ur
allready installed JARs (few still are)

Do u know this !?! Do U know which files are responsyble for that !?!
Any ideas =) ???

One more thing .. i found file Z:\System\swipolicy.ini

AllowUnsigned = false ***IT'S MY NOTES - THERE I MUST CHANGED IT. IN
APP.Manager - INSTALL ALL IS SET TO TRUE - END OF MINE***
MandatePolicies = false
MandateCodeSigningExtension = false
Oid = 1.2.3.4.5.6
Oid = 2.3.4.5.6.7
DRMEnabled = true
DRMIntent = 3
OcspMandatory = false
OcspEnabled = true
AllowGrantUserCapabilities = true
AllowOrphanedOverwrite = true
UserCapabilities = NetworkServices LocalServices ReadUserData
WriteUserData UserEnvironment
AllowPackagePropagate = true
SISCompatibleIfNoTargetDevices = false
RunWaitTimeoutSeconds = 600
AllowRunOnInstallUninstall = false
DeletePreinstalledFilesOnUninstall = true

Anonymous said...

I get the "unable to install" message when trying to install Opera Mini 3.0.on my Nokia N73. Found a site for 2.0 but same. Searched various forums for answers - none. This blog seems to provide an explanation. If this is my problem, how do I overcome it? Have y-browser and SExplorer loaded, but novice user. Thanks.