A.2. Capabilities

In a device that uses Platform Security, a program must have permission to access potentially sensitive features. In Platform Security jargon, these permissions are called capabilities. A program has to hold a certain capability to access a certain set of sensitive features. Not all features require capabilities – there are many things you can do without holding any capabilities at all. Almost all the examples in this book, except GSM locationing, do not require special capabilities.

There is a small, fixed set of capabilities and each capability grants access to a specific set of functionality. The capabilities defined in S60 3rd Edition are listed in Table A.1.

From the viewpoint of a PyS60 programmer, the capabilities can be roughly divided into three groups, based on the difficulty of accessing them:

  • User-grantable capabilities are capabilities that the user who is installing a program can grant to the program at install time. A program that needs only user-grantable capabilities can be self-signed, meaning that it can be signed with a random untrusted key that anyone can generate.

  • Capabilities available with a free developer certificate (devcert) are capabilities with which you can experiment on a single phone using a devcert available from the Symbian Signed service for free. However, packaging a program that needs these capabilities into a SIS file that would install to any phone can only be done through the Symbian Signed process.

  • Manufacturer-approved ...

Get Mobile Python: Rapid Prototyping of Applications on the Mobile Platform now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.