SDK API Plug-in
hamishwillee
(Talk | contribs) m (Hamishwillee - Fix tables and heading titles to make more readable) |
hamishwillee
(Talk | contribs) m (Hamishwillee - Adding missing translation link) |
||
| (3 intermediate revisions by 2 users not shown) | |||
| Line 1: | Line 1: | ||
| + | {{ArticleMetaData <!-- v1.2 --> | ||
| + | |sourcecode= [[Media:SIMUtilsAPI 3x 50.zip]] [[Media:S60 3rd ed fp1 api plug-in pack supplementary.zip]] [[Media:S60 3rd ed fp2 api plug-in pack supplementary.zip]] [[Media:S60 5th ed api plug-in pack supplementary.zip]] | ||
| + | |installfile= <!-- Link to installation file (e.g. [[Media:The Installation File.sis]]) --> | ||
| + | |devices= <!-- Devices tested against - e.g. ''devices=Nokia 6131 NFC, Nokia C7-00'') --> | ||
| + | |sdk= <!-- SDK(s) built and tested against (e.g. [http://linktosdkdownload/ Qt SDK 1.1.4]) --> | ||
| + | |platform= <!-- Compatible platforms - e.g. Symbian^1 and later, Qt 4.6 and later --> | ||
| + | |devicecompatability= <!-- Compatible devices e.g.: All* (must have internal GPS) --> | ||
| + | |dependencies= <!-- Any other/external dependencies e.g.: Google Maps Api v1.0 --> | ||
| + | |signing= <!-- Signing requirements - empty or one of: Self-Signed, DevCert, Manufacturer --> | ||
| + | |capabilities= <!-- Capabilities required by the article/code example (e.g. Location, NetworkServices. --> | ||
| + | |keywords= <!-- APIs, classes and methods (e.g. QSystemScreenSaver, QList, CBase --> | ||
| + | |language= <!-- Language category code for non-English topics - e.g. Lang-Chinese --> | ||
| + | |translated-by= <!-- [[User:XXXX]] --> | ||
| + | |translated-from-title= <!-- Title only --> | ||
| + | |translated-from-id= <!-- Id of translated revision --> | ||
| + | |review-by= <!-- After re-review: [[User:username]] --> | ||
| + | |review-timestamp= <!-- After re-review: YYYYMMDD --> | ||
| + | |update-by= <!-- After significant update: [[User:username]]--> | ||
| + | |update-timestamp= <!-- After significant update: YYYYMMDD --> | ||
| + | |creationdate= 20070616 | ||
| + | |author= [[User:Ltomuta]] | ||
| + | }} | ||
[[Category:Symbian C++]][[Category:SDK]] | [[Category:Symbian C++]][[Category:SDK]] | ||
| − | As a response to the frequent requests expressed by the 3rd party developers for more internal APIs to be released, Nokia Developer is providing the [[ | + | As a response to the frequent requests expressed by the 3rd party developers for more internal APIs to be released, Nokia Developer is providing the [[Accessing internal platform APIs through the API Partnering Program]] process through which any developer can apply for access to the APIs needed to implement a given functionality. Whether the request is approved or not it all depends on the business justification provided and the current status of the APIs ( binary compatibility breaks, API deprecation, security considerations ... ) |
The receiver of the API should understand that despite the initial testing, which is intended to show that the API works on the targeted device, no guarantees can be given with regards to the binary compatibility or the availability of the API across platform version or even within devices released based on the current platform version. | The receiver of the API should understand that despite the initial testing, which is intended to show that the API works on the targeted device, no guarantees can be given with regards to the binary compatibility or the availability of the API across platform version or even within devices released based on the current platform version. | ||
| Line 50: | Line 72: | ||
|[[KAlarmClockOne API]] | |[[KAlarmClockOne API]] | ||
|- | |- | ||
| − | |[[ | + | |[[Archived:Setting various indicators on S60 3rd Edition FP2]] |
|[[Logs Client API]] | |[[Logs Client API]] | ||
|- | |- | ||
| Line 72: | Line 94: | ||
|- | |- | ||
|[[Profile UID API]] | |[[Profile UID API]] | ||
| − | |[[ | + | |[[PS Keys for Call Status %26 Indicators API|PS Keys for Call Status & Indicators API]] |
|- | |- | ||
|[[S60 RTP/RTC API]] | |[[S60 RTP/RTC API]] | ||
| Line 126: | Line 148: | ||
|[[KAlarmClockOne API]] | |[[KAlarmClockOne API]] | ||
|- | |- | ||
| − | |[[ | + | |[[Archived:Setting various indicators on S60 3rd Edition FP2]] |
|[[Logs Client API]] | |[[Logs Client API]] | ||
|- | |- | ||
| Line 169: | Line 191: | ||
Supplementary packages for API Plug-in for the S60 3rd Edition SDK for Symbian OS, for C++, supporting Feature Pack 1 | Supplementary packages for API Plug-in for the S60 3rd Edition SDK for Symbian OS, for C++, supporting Feature Pack 1 | ||
| − | *Package URL: [[Media: | + | *Package URL: [[Media:S60 3rd ed fp1 api plug-in pack supplementary.zip|S60 3rd Ed, FP1 API Plug-in Pack - Supplementary]] |
Contents: | Contents: | ||
| Line 175: | Line 197: | ||
|[[Tuner Utility API]] <span style="color:green"> (new)</span> | |[[Tuner Utility API]] <span style="color:green"> (new)</span> | ||
|[[MMFDevSound API]] <span style="color:green"> (updated with WINSCW libraries)</span> | |[[MMFDevSound API]] <span style="color:green"> (updated with WINSCW libraries)</span> | ||
| − | |[[SIM Utils API]] ([[File: | + | |[[SIM Utils API]] ([[File:SIMUtilsAPI 3x 50.zip]]) |
|} | |} | ||
| Line 190: | Line 212: | ||
|[[Adaptive History List API for 3rd Edition Feature Pack 2]] | |[[Adaptive History List API for 3rd Edition Feature Pack 2]] | ||
| − | |[[ | + | |[[Archived:AIW Dial Data Consumer Symbian API]] <span style="color:green">(new)</span> |
|- | |- | ||
|[[Audio Metadata Reader API]] | |[[Audio Metadata Reader API]] | ||
| − | |[[Audio Routing API – Input and Output]] <span style="color:green">(new)</span> | + | |[[Archived:Audio Routing API – Input and Output]] <span style="color:green">(new)</span> |
|- | |- | ||
|[[Alarm Clock One API]] | |[[Alarm Clock One API]] | ||
| − | |[[ | + | |[[Archived:Bluetooth Engine API for S60 3rd Edition FP2]] <span style="color:green">(new)</span> |
|- | |- | ||
|[[Browser Launcher API]] | |[[Browser Launcher API]] | ||
| − | |[[ | + | |[[Archived:Calendar Exporter Symbian API]] <span style="color:green">(new)</span> |
|- | |- | ||
| − | |[[ | + | |[[Archived:Calendar Importer Symbian API]] <span style="color:green">(new)</span> |
| − | |[[ | + | |[[Archived:Calendar Settings Symbian API]] <span style="color:green">(new)</span> |
|- | |- | ||
|[[Call Audio Control API]] <span style="color:red">***</span> | |[[Call Audio Control API]] <span style="color:red">***</span> | ||
|[[Camera Application Engine API]] | |[[Camera Application Engine API]] | ||
|- | |- | ||
| − | |[[ | + | |[[Archived:Clock Settings Symbian API]] <span style="color:green">(new)</span> |
|[[CommsDat WLAN API]] <span style="color:green">(new)</span> | |[[CommsDat WLAN API]] <span style="color:green">(new)</span> | ||
|- | |- | ||
| Line 216: | Line 238: | ||
|[[Item Finder API]] | |[[Item Finder API]] | ||
|- | |- | ||
| − | |[[ | + | |[[Archived:Setting various indicators on S60 3rd Edition FP2]] |
| − | |[[ | + | |[[Archived:Location Settings Launch Symbian API]] <span style="color:green">(new)</span> |
|- | |- | ||
|[[Logs Timers API]] | |[[Logs Timers API]] | ||
| − | |[[ | + | |[[Archived:Logs UI Command Line Symbian API]] <span style="color:green">(new)</span> |
|- | |- | ||
| − | |[[ | + | |[[Archived:MDFDevVideo Record Symbian API]] <span style="color:green">(new)</span> |
|[[MDFDevVideo Playback API]] <span style="color:green">(new)</span> | |[[MDFDevVideo Playback API]] <span style="color:green">(new)</span> | ||
|- | |- | ||
| − | |[[ | + | |[[Archived:Media File Symbian API]] <span style="color:green">(new)</span> |
|[[Media Player Utility API]] <span style="color:green">(new)</span> | |[[Media Player Utility API]] <span style="color:green">(new)</span> | ||
|- | |- | ||
| Line 235: | Line 257: | ||
|[[New File Service Client API]] | |[[New File Service Client API]] | ||
|- | |- | ||
| − | |[[ | + | |[[Archived:NSSTTS Common Symbian API]] <span style="color:green">(new)</span> |
| − | |[[ | + | |[[Archived:NSSTTS Utility Symbian API]] <span style="color:green">(new)</span> |
|- | |- | ||
|[[OMA Provisioning Adapter API]] | |[[OMA Provisioning Adapter API]] | ||
| − | |[[ | + | |[[Archived:Personalisation and Skins Settings Symbian API]] |
|- | |- | ||
| − | |[[Phone Client USSD API]]<span style="color:green"> (new)</span> | + | |[[Archived:Phone Client USSD API]]<span style="color:green"> (new)</span> |
| − | |[[ | + | |[[Archived:Profiles Engine Active Profile Settings Symbian API]] <span style="color:green">(new)</span> |
|- | |- | ||
| − | |[[ | + | |[[Archived:Remote Control Extension Symbian API]] <span style="color:green">(new)</span> |
|[[S60 RTP/RTC API]] | |[[S60 RTP/RTC API]] | ||
|- | |- | ||
| − | |[[ | + | |[[Archived:Screensaver Settings Symbian API]] <span style="color:green">(new)</span> |
|[[Settings Framework API]] | |[[Settings Framework API]] | ||
|- | |- | ||
| − | |[[Symbian Onboard Camera Advanced Settings API]] (CCameraAdvancedSettings) <span style="color:green">(new)</span> | + | |[[Archived:Symbian Onboard Camera Advanced Settings API]] (CCameraAdvancedSettings) <span style="color:green">(new)</span> |
|[[SMS Utilities API]] | |[[SMS Utilities API]] | ||
|- | |- | ||
| − | |[[ | + | |[[Archived:Speech Encoder Config Symbian API]] <span style="color:green">(new)</span> |
|[[SW Installer Launcher API]] | |[[SW Installer Launcher API]] | ||
|- | |- | ||
| Line 265: | Line 287: | ||
Supplementary packages for API Plug-in for the S60 3rd Edition SDK for Symbian OS, for C++, supporting Feature Pack 2 | Supplementary packages for API Plug-in for the S60 3rd Edition SDK for Symbian OS, for C++, supporting Feature Pack 2 | ||
| − | *Package URL: [[Media: | + | *Package URL: [[Media:S60 3rd ed fp2 api plug-in pack supplementary.zip|S60 3rd Ed, FP2 API Plug-in Pack - Supplementary]] |
Contents: | Contents: | ||
{| class="wikitable" | {| class="wikitable" | ||
|[[Radio Utility API]]<span style="color:green"> (new)</span> | |[[Radio Utility API]]<span style="color:green"> (new)</span> | ||
| − | |[[SIM Utils API]] ([[File: | + | |[[SIM Utils API]] ([[File:SIMUtilsAPI 3x 50.zip]]) |
|} | |} | ||
| Line 317: | Line 339: | ||
|[[MMFDevSound API]] | |[[MMFDevSound API]] | ||
|- | |- | ||
| − | |[[New File Service API]] | + | |[[New File Service Client API]] |
|[[NSS TTS Common API]] | |[[NSS TTS Common API]] | ||
|- | |- | ||
| Line 350: | Line 372: | ||
Supplementary packages for API Plug-in for the S60 5th Edition SDK for Symbian OS, for C++ | Supplementary packages for API Plug-in for the S60 5th Edition SDK for Symbian OS, for C++ | ||
| − | *Package URL: [[Media: | + | *Package URL: [[Media:S60 5th ed api plug-in pack supplementary.zip|S60 5th Edition API Plug-in Pack - Supplementary]] |
Contents: | Contents: | ||
| Line 356: | Line 378: | ||
|[[Radio Utility API]]<span style="color:green"> (new)</span> | |[[Radio Utility API]]<span style="color:green"> (new)</span> | ||
|[[MMFDevSound API]] <span style="color:green"> (ARMV5 + WINSCW libraries)</span> | |[[MMFDevSound API]] <span style="color:green"> (ARMV5 + WINSCW libraries)</span> | ||
| − | |[[SIM Utils API]] ([[File: | + | |[[SIM Utils API]] ([[File:SIMUtilsAPI 3x 50.zip]]) |
|} | |} | ||
---- | ---- | ||
<span style="color:red">***</span> - Contains a SIS file compatible only with Nokia devices. | <span style="color:red">***</span> - Contains a SIS file compatible only with Nokia devices. | ||
| + | |||
| + | == Symbian^3 and later (Symbian C++) == | ||
| + | |||
| + | No SDK API plugins are available or planned for the Symbian^3 SDK (or later). | ||
| + | |||
| + | We highly recommend that developers restrict themselves to Qt, Qt Mobility or public Symbian C++ APIs. With the current rapid release cycle for Symbian^3 the risk that unsupported APIs will break between releases is high. | ||
| + | |||
| + | If functionality from SDK API plugins is required on Symbian^3 developers can request access through a technical support case or can roll out their own solutions using the PDK (available from http://symbian.nokia.com/). In either case, there remain no guarantees of compatibility through device updates and developers will need to rigorously retest APIs between releases. | ||
| + | |||
== FAQ == | == FAQ == | ||
| Line 378: | Line 409: | ||
<HR> | <HR> | ||
*'''Question:''' One of the existing APIs solves partly my problem but for a full solution I need access to another internal API. Can you provide that API in the same plug-in? | *'''Question:''' One of the existing APIs solves partly my problem but for a full solution I need access to another internal API. Can you provide that API in the same plug-in? | ||
| − | *'''Answer:''' Each API has been released with a specific use case in mind. If you need some other API to accomplish your task, it is likely that you are outside the intended use case and the only solution for you is the [[ | + | *'''Answer:''' Each API has been released with a specific use case in mind. If you need some other API to accomplish your task, it is likely that you are outside the intended use case and the only solution for you is the [[Accessing internal platform APIs through the API Partnering Program]] process. Please note that if the dependency is on a Symbian owned API, you will have to contact Symbian Ltd. for requesting the API. |
<HR> | <HR> | ||
*'''Question:''' The API I need requires manufacturer granted capabilities. Are these capabilities going to be granted to me? | *'''Question:''' The API I need requires manufacturer granted capabilities. Are these capabilities going to be granted to me? | ||
| Line 392: | Line 423: | ||
*'''Answer:''' These API have been tested on a limited set of Nokia devices and there is no binary compatibility promise given even for them. They might work on other devices too but developers are expected to perform thorough testing befor distributing applications using these API. Please note also the APIs marked with <span style="color:red">***</span>, they can only be used after installing binaries on the phone and those binaries are currently only available for Nokia devices. | *'''Answer:''' These API have been tested on a limited set of Nokia devices and there is no binary compatibility promise given even for them. They might work on other devices too but developers are expected to perform thorough testing befor distributing applications using these API. Please note also the APIs marked with <span style="color:red">***</span>, they can only be used after installing binaries on the phone and those binaries are currently only available for Nokia devices. | ||
| − | + | [[Category:Code Examples]] | |
| + | <!-- Translation --> [[zh-hans:SDK中的API外掛程式]] | ||
Latest revision as of 03:29, 14 September 2012
Article Metadata
Code Example
Article
As a response to the frequent requests expressed by the 3rd party developers for more internal APIs to be released, Nokia Developer is providing the Accessing internal platform APIs through the API Partnering Program process through which any developer can apply for access to the APIs needed to implement a given functionality. Whether the request is approved or not it all depends on the business justification provided and the current status of the APIs ( binary compatibility breaks, API deprecation, security considerations ... )
The receiver of the API should understand that despite the initial testing, which is intended to show that the API works on the targeted device, no guarantees can be given with regards to the binary compatibility or the availability of the API across platform version or even within devices released based on the current platform version.
As the number of processed API Partnering requests grew, the decision was made that some of the partnered APIs are released to the whole developer community. However, due to the above mentioned binary compatibility issues the release was made without any marketing campaign and the API Packages were released in archived mode.
The following very important message accompanies the plug-in and is also included in each API's release notes, please read carefully:
- Nokia is not giving any binary compatibility promise for these APIs; neither between platform versions or within a platform version.
- You must test your application with each device that the application can be installed on. This is needed to ensure the best possible user experience. To prevent application installation on other than tested devices, define the Product ID(s) (also known as Machine UID) in the .pkg file. More information can be found in the document S60 Platform: Identification Codes available on the Nokia Developer website.
The API plug-in package is also covered by a click through Limited License Agreement (LLA), the content of which is also included in the package. The use of the API included in the API Plug-in assumes that the LLA is implicitly accepted.
Currently the following API Plug-in packages are available:
Contents |
S60 3rd Edition SDK, MR (Symbian C++)
- Package URL: Extensions plug-in package for S60 3rd Edition SDK for Symbian OS, for C++, MR
- Current version: 5.43
- Included APIs: 41
The following APIs are included:
S60 3rd Edition SDK, Feature Pack 1 (Symbian C++)
- Package URL: Extensions plug-in package for S60 3rd Edition SDK for Symbian OS, for C++, supporting Feature Pack 1
- Current version: 2.5
- Included APIs: 42
The following APIs are included:
Supplementary packages for API Plug-in for the S60 3rd Edition SDK for Symbian OS, for C++, supporting Feature Pack 1
- Package URL: S60 3rd Ed, FP1 API Plug-in Pack - Supplementary
Contents:
| Tuner Utility API (new) | MMFDevSound API (updated with WINSCW libraries) | SIM Utils API (File:SIMUtilsAPI 3x 50.zip) |
S60 3rd Edition SDK, Feature Pack 2 (Symbian C++)
- Package URL: Extensions plug-in package for S60 3rd Edition SDK for Symbian OS, for C++, supporting Feature Pack 2
- Current version: 1.2
- Included APIs: 48
The following APIs are included:
Supplementary packages for API Plug-in for the S60 3rd Edition SDK for Symbian OS, for C++, supporting Feature Pack 2
- Package URL: S60 3rd Ed, FP2 API Plug-in Pack - Supplementary
Contents:
| Radio Utility API (new) | SIM Utils API (File:SIMUtilsAPI 3x 50.zip) |
S60 5th Edition SDK (Symbian C++)
Supplementary packages for API Plug-in for the S60 5th Edition SDK for Symbian OS, for C++
- Package URL: S60 5th Edition API Plug-in Pack - Supplementary
Contents:
| Radio Utility API (new) | MMFDevSound API (ARMV5 + WINSCW libraries) | SIM Utils API (File:SIMUtilsAPI 3x 50.zip) |
*** - Contains a SIS file compatible only with Nokia devices.
Symbian^3 and later (Symbian C++)
No SDK API plugins are available or planned for the Symbian^3 SDK (or later).
We highly recommend that developers restrict themselves to Qt, Qt Mobility or public Symbian C++ APIs. With the current rapid release cycle for Symbian^3 the risk that unsupported APIs will break between releases is high.
If functionality from SDK API plugins is required on Symbian^3 developers can request access through a technical support case or can roll out their own solutions using the PDK (available from http://symbian.nokia.com/). In either case, there remain no guarantees of compatibility through device updates and developers will need to rigorously retest APIs between releases.
FAQ
- Question: The API I am using is not working on some devices. Should I report this as a bug against the platform?
- Answer: It is likely that this is due to a scheduled change in API's implementation, however, if you see the bug as also affecting the firmware components then the best approach would be to report it.
- Question: Will there be an announcement that a BC break was introduced in one of the S60 Platform builds if it affects one of the APIs from the plug-in?
- Answer: This kind of notification will be provided on best effort bases.
- Question: The APIs included in the plug-in are poorly documented. Where can I find better documentation?
- Answer: As the APIs were not intended for publishing there is no SDK level documentation available for them. These wiki pages are intended to compensate this documentation gap.
- Question: Are there any example applications available for these APIs?
- Answer: The only API that includes an example application is the Audio Proxy Server. More examples will be added to this wiki page as they will become available. You are of course welcome to contribute.
- Question: One of the existing APIs solves partly my problem but for a full solution I need access to another internal API. Can you provide that API in the same plug-in?
- Answer: Each API has been released with a specific use case in mind. If you need some other API to accomplish your task, it is likely that you are outside the intended use case and the only solution for you is the Accessing internal platform APIs through the API Partnering Program process. Please note that if the dependency is on a Symbian owned API, you will have to contact Symbian Ltd. for requesting the API.
- Question: The API I need requires manufacturer granted capabilities. Are these capabilities going to be granted to me?
- Answer: The standard process for requesting manufacturer approved capabilities applies for these APIs too.
- Question: Are you publishing all the frequently requested APIs in these plug-ins?
- Answer: Only the APIs which are considered stable enough and of wide interest are released in this plug-in. A special case is the API needed for creating Active Idle plug-ins as though it otherwise meets the criteria for being released in this plug-in it also requires for the developed 3rd party plug-in to be enabled in the firmware (i.e. firmware variant creation) and this makes the API unusable for most developers.
- Question: Where can I find the WINSCW/GCCE libraries for these APIs?
- Answer: The libraries included in this package are built at a later date that the public SDK. To speed up the release date and to avoid SDK incompatibilities it was decided that the WINSCW libraries will not be published. For the GCCE platform the ARMV5 libraries are used seamlessly.
- Question: Will these APIs work in ALL S60 devices, regardles of the manufacturer?
- Answer: These API have been tested on a limited set of Nokia devices and there is no binary compatibility promise given even for them. They might work on other devices too but developers are expected to perform thorough testing befor distributing applications using these API. Please note also the APIs marked with ***, they can only be used after installing binaries on the phone and those binaries are currently only available for Nokia devices.

