×
Namespaces

Variants
Actions
Revision as of 03:10, 18 November 2011 by hamishwillee (Talk | contribs)

SDK API Plug-in

From Nokia Developer Wiki
Jump to: navigation, search

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 S60 API Partnering 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:

Warning.pngWarning: PLEASE NOTICE THE FOLLOWING ISSUES WITH THESE APIs:

  1. Nokia is not giving any binary compatibility promise for these APIs; neither between platform versions or within a platform version.
  2. 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.

Note.pngNote: The content of the Limited License Agreement (LLA) has been updated to address the concerns regarding the usage of the API in 3rd Party projects.

Note.pngNote: The latest version of the VoIP Audio Services API device binaries (SIS file) can now be found through API's page in this wiki.

Currently the following API Plug-in packages are available:

Contents

S60 3rd Edition SDK, MR (Symbian C++)

The following APIs are included:

Adaptive History List API AIW Criteria API
AIW Generic Parameters API AIW Service Handler API
Audio Metadata Reader API Audio Proxy Server API v2.43 ***
Bluetooth Engine API Browser Launcher API
Camera Application Engine API CR Keys To Control Phone Volume API
Data Connection Log Counters API Extended AIW Criteria API
Extended Skins API Item Finder API
KAccessoryModeChanged API KAlarmClockOne API
KCoreAppUIsNewEmailStatus API Logs Client API
Logs Timers API Media Player Engine API
Media Recorder API Meeting Request API
WLAN Management API New File Service Client API
OMA Provisioning Adapter API Personalisation Skins Settings API
Phone Client Dial API Phone Client Extension API
Profiles Engine API Profiles Engine Extended API
Profile UID API PS Keys for Call Status & Indicators API
S60 RTP/RTC API ScShortcuts Engine Wrapper API
Shared Data API SMS Utilities API
SW Installer Launcher API SyncML Client API
WLAN Info API WLAN Settings UI API
PS Keys for WLAN API


S60 3rd Edition SDK, Feature Pack 1 (Symbian C++)

The following APIs are included:

Adaptive History List API for 3rd Edition Feature Pack 1 AIW Criteria API
AIW Generic Parameters API AIW Service Handler API
Audio Metadata Reader API Audio Proxy Server API v2.43 (deprecated),***
Audio Routing API Bluetooth Engine API
Browser Launcher API CR Keys To Control Phone Volume API
Data Connection Log Counters API Extended AIW Criteria API
Extended Skins API Item Finder API
KAccessoryModeChanged API KAlarmClockOne API
KCoreAppUIsNewEmailStatus API Logs Client API
Logs Timers API Media Player Engine API
Media Recorder API Meeting Request API
MMFDevSound API Music Player Remote Control API
New File Service Client API OMA Provisioning Adapter API
Personalisation Skins Settings API Phone Client Dial API
Phone Client Extension API Profiles Engine Extended API
Profile UID API PS Keys for Call Status & Indicators API
S60 RTP/RTC API ScShortcuts Engine Wrapper API
Settings Framework API SMS Utilities API
SW Installer Launcher API SyncML Client API
WLAN Info API WLAN Management API
Call Audio Control API *** VoIP Audio Service API ***

Supplementary packages for API Plug-in for the S60 3rd Edition SDK for Symbian OS, for C++, supporting Feature Pack 1

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++)

The following APIs are included:

Adaptive History List API for 3rd Edition Feature Pack 2 CS001026 - AIW Dial Data Consumer API (new)
Audio Metadata Reader API Audio Routing API – Input and Output (new)
Alarm Clock One API CS001064 - Bluetooth Engine API for S60 3rd Edition, Feature Pack 2 (new)
Browser Launcher API CS001028 - Calendar Exporter API (new)
CS001027 - Calendar Importer API (new) CS001038 - Calendar Settings API (new)
Call Audio Control API *** Camera Application Engine API
CS001037 - Clock Settings API (new) CommsDat WLAN API (new)
Data Connection Log Counters API Extended AIW Criteria API
Extended Skins API Item Finder API
KCoreAppUIsNewEmailStatus API CS001035 - Location Settings Launch API (new)
Logs Timers API CS001032 - Logs UI Command Line API (new)
CS001065 - MDFDevVideo Record API (new) MDFDevVideo Playback API (new)
CS001036 - Media File API (new) Media Player Utility API (new)
Media Recorder API Media Recorder Sink API
MMFDevSound API New File Service Client API
CS001033 - NSSTTS Common API (new) CS001031 - NSSTTS Utility API (new)
OMA Provisioning Adapter API CS001025 - Personalisation and Skins Settings API
Phone Client USSD API (new) CS001024 - Profiles Engine Active Profile Settings API (new)
CS001034 - Remote Control Extension API (new) S60 RTP/RTC API
CS001039 - Screensaver Settings API (new) Settings Framework API
Symbian Onboard Camera Advanced Settings API (CCameraAdvancedSettings) (new) SMS Utilities API
CS001030 - Speech Encoder Config API (new) SW Installer Launcher API
Send UI Technology Mail Uid Value API VoIP Audio Service API ***
WLAN Info API WLAN Management API

Supplementary packages for API Plug-in for the S60 3rd Edition SDK for Symbian OS, for C++, supporting Feature Pack 2

Contents:

Radio Utility API (new) SIM Utils API (File:SIMUtilsAPI 3x 50.zip)


S60 5th Edition SDK (Symbian C++)

Adaptive History List API for 5th Edition AIW Dial Data Consumer API
Alarm Const API Audio MetaData Reader API
Audio Routing API Audio Visualization API
Browser Launcher API Calendar Settings Keys API
Clock Settings API CommsDat WLAN API
Data Connection Log Counters API Extended AIW Criteria API
Extended Skins API Item Finder API
Location Settings Launch API Logs Timers API
MDF DevVideoGeneral API MDF DevVideoRecord API
MDF VideoPlayback API Media File API
Media Player Utility API Media Recorder API
Media Recorder Sink API MMFDevSound API
New File Service API NSS TTS Common API
NSS TTS Utility API OMA Provisioning Adapter API
Personalisation and Skins Settings API Remote Control Extension API
RTP/RTCP API Screensaver Settings API
Settings Framework API SMS Utilities API
Speech Encoder Config API SRTP API
SW Installer Launcher API SyncML Client API
System Application Notification API TVOut Engine API
VoIP Audio Service API WLAN Info API
WLAN Management API

Supplementary packages for API Plug-in for the S60 5th Edition SDK for Symbian OS, for C++

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 S60 API Partnering 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.


544 page views in the last 30 days.
×