It is important to remember the two UID ranges used in the context of Symbian OS v9.1 onwards: the protected range and the unprotected range.
When an application is to be Symbian Signed (either during development using a Developer Certificate or via the Symbian Signed program), it must use a UID from the protected range. Specifically, the 0 range (0x00000000 to 0x0FFFFFFF) has been reserved for development purposes, and new UID allocations are made from the 2 range (0x20000000 to 0x2FFFFFFF). Before being submitted for Symbian Signed testing, an application must have a UID allocated from the 2 range.
When an application is self-signed it must use a UID from the unprotected range. Specifically, the E range (0xE0000000 to 0xEFFFFFFF) has been reserved for development purposes, and new UID allocations are made from the A range (0xA0000000 to 0xAFFFFFFF). Before being released to end users, a self-signed application must have a UID allocated from the A range. For more information on the application UIDs, go to the Symbian Signed Web site.