This page was last modified 08:33, 26 November 2007.
Capabilites
From Forum Nokia Wiki
Contents |
Capabilities
A capability grants access to a set of APIs and can be obtained through certification, for example Symbian Signed. The capabilities can be divided into four:
Open to all
- APIs in this category enable development of all the basic applications, for example, most of the single-player games.
- Generally speaking, about 60 percent of the APIs are freely available without any capability requirement.
Granted by the user at installation time
- Some capabilities can be granted by the user at the application installation phase.
- The application will have the capability until the application is removed from the device.
- This option may not be active in some devices by default. Thus the user has to activate the installation time capability granting separately.
Granted through Symbian Signed
- Some capabilities are available after passing Symbian Signed testing.
- More sensitive capabilities require declarative justification why the application needs access to such a capability. Passing the testing is required as well.
- The most sensitive capabilities require the developer to fill in the Capability Request Form and acceptance from the platform manufacturer. Passing the testing is required as well.
Granted by the manufacturer
- Forum Nokia introduces a Manufacturer Approvable Capability Request Form, which is available at www.forum.nokia.com/testing.
Assigning Capabilities
Capabilities required by the application are defined at the design phase of the application. The application binaries will include an MMP file, which includes information of the capabilities that the application uses.
At the installation phase the installer application in the device checks whether the application has been certified or signed. Then it checks the list of capabilities in the MMP file. If the application has been certified, it is checked that the root certificate is allowed to grant the required capabilities. The installation can continue if no problems are encountered.
| Unrestricted | User-grantable (at installation time) | Symbian Signed | Manufacturer approval | |||||
|---|---|---|---|---|---|---|---|---|
| 60% of APIs | ReadUserData WriteUserData |
|
|
Table 1: Comparison of capabilities
| Sl No | Capability | Description |
|---|---|---|
| 1 | NetworkServices | This capability is for, e.g., dialing a number or sending a text message. |
| 2 | LocalServices | This capability is for sending or receiving information through USB, IR, and point-to-point Bluetooth profiles. |
| 3 | ReadUserData | Grants read access to user data. System servers and application engines are free to grant this restriction level to their data. |
| 4 | WriteUserData | Grants write access to user data. Again, system servers and application engines are free to grant this restriction level to their data. |
| 5 | Location | Grants access to the location of the phone. |
| 6 | UserEnvironment | Grants access to live confidential information about the user and his/her immediate environment. |
| 7 | PowerMgmt | Grants the right to kill any process in the system or to switch machine state (turn the phone off). |
| 8 | MultimediaDD | Controls access to all multimedia device drivers (sound, camera, etc.). |
| 9 | ReadDeviceData | Grants read access to sensitive system data. |
| 10 | WriteDeviceData | Grants write access to sensitive system data. |
| 11 | DRM | Grants access to protected content. |
| 12 | TrustedUI | This capability differentiates "normal" applications from "trusted" applications. If a trusted application is displaying something on the screen, a normal application cannot fake it. |
| 13 | ProtServ | Grants the right to a server to register with a protected name. Protected names start with an “!” (exclamation point). The kernel will prevent servers without ProtServ capability from using such a name, and therefore will prevent protected servers from being impersonated. |
| 14 | NetworkControl | Grants the right to modify or access network protocol controls. |
| 15 | SwEvent | Grants the right to generate and capture software key and pen events. |
| 16 | SurroundingsDD | Grants access to logical device drivers that provide input information about the surroundings of the phone. |
| 17 | TBC | Grants access to /sys and /recourse directories in the phone. |
| 18 | CommDD | Grants access to communication device drivers. |
| 19 | DiskAdmin | Grants the right to disk administration functions, such as formatting a drive. |
| 20 | AllFiles | Grants visibility to all files in the system and extra write access to files under /private. |
Table 2: Description of capabilities
| Related Discussions | ||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| <Feature not supported> S60_3rd | kompotFX | General Symbian C++ | 13 | 2008-06-07 13:01 |
| Root CA Certificate | pseudonym404 | Symbian Signing, Certification and Security | 12 | 2007-08-26 09:47 |
| Hard/soft to work with RFID tags | AlexD | Near Field Communication | 18 | 2008-08-04 14:04 |
| Raccoon 0.9.2 released. | jhnwkmn | Mobile Web Server | 5 | 2007-04-27 06:42 |
| Permission denied error when importing PyS60 Extension | gloria799 | Python | 6 | 2008-07-25 19:49 |
