======================================================================== RELEASE NOTE FOR S60 3RD EDITION SDK FOR SYMBIAN OS, 07.03.2008 FEATURE PACK 2 ======================================================================== The S60 3rd Edition SDK for Symbian OS, Feature Pack 2 (SDK) enables application development using C++, Standard C, JAVA and Web Runtime for devices based on the S60 Platform. The SDK is based on S60 3rd Edition, Feature Pack 2 and Symbian OS 9.3. The SDK includes all key functionalities needed for application development (documentation, API reference, emulator etc.) excluding IDEs. This is a binary compatibility baseline for new APIs (see list in "What's New" section in SDK documentation). Binary compatibility for APIs introduced in S60 3rd Edition is maintained unless otherwise stated below. Features ======== - This product requires free registration 14 days after installation. - Emulator for testing and debugging applications. - Building tools and environment for emulator (WINSCW UDEB). - Building tools and environment for terminal deployment (GCCE, RVCT). (RVCT compiler is not bundled with the SDK) - Symbian and S60 platform documentation, as specified below: + Help + Installation Guide + API set documentation + Platform security documentation including description of the modified development process - S60 Tools including: + SimPSY, including tool for generating simulated locations + Svg2Svgt for converting SVG images to SVG-T format + Task Manager + Http Monitoring + System Event Generator + Emulator Configuration Tool + Command Line Interface for mobile content developers + Content Push to device through command line interface + Remote Logging API - Emulator TCP/IP support using Winsock. - Emulator supports localization plugins for English, Chinese Simplified, Japanese - Emulator supports UI resolutions: QVGA Portrait and QVGA Landscape (Both with Keypad and Keypadless) - IDEs Story: + Codewarrior versions are no longer supported. Supported IDEs for C++ -------------------------- + Carbide.C++ v1.2 or v1.3 Express, Professional and Developer + Carbide.VS 3.0.1 Supported IDEs for JAVA --------------------------- + NetBeans IDE 6.0 + Eclipse 3.3.1 with EclipseME 1.7.7 New Features ============= - Single SDK for all supported Runtimes including C++, Standard C, Java and Web Runtime. - Standard C library support The Standard C library support of the SDK provides access to standard POSIX and middleware C libraries making it easier to port existing standard C applications to S60 3rd Edition. - Web Run-Time Widget support Widgets are lightweight Web applications developed using standards-based Web technologies such as HTML, CSS, JavaScript and even AJAX. Mobile widgets give S60-based device users a full Web experience with instant access to the most essential Web 2.0 services and Internet content. - Transition Effects Transition Effects decorate application changes, including start, switch and exit cases - Carbide.vs 3.0.1 is supported - NetBeans IDE 6.0 is supported. However, backward compatibility with v5.0 and v5.5 of Netbeans IDE is not ensured. - Enhanced emulator startup speed - Platform UID - New APIs (See API section below) - Updated JAVA APIs (See JAVA APIs section below) - Middle Softkey Support For more details see What's New section in SDK documentation. APIs ==== S60 Platform is a complete smartphone reference design. It represents a rich environment for developers to create exciting content and innovative applications. The platform builds on top of Symbian OS, complementing it with a configurable graphical user interface library and a comprehensive suite of reference applications. A set of robust components and many varied APIs are provided for developers. C++ New APIs ------------ - AIW Criteria API - AIW Generic Parameter API - AIW Service Handler API - Connection Settings API - Connection Settings UI API - Directory Localizer API - Information Preview Popup API - Standard C Library Support (Glib Sources can be found at: http://www.forum.nokia.com/info/sw.nokia.com/id/8a5ff8f8-df80-4d59-9471-0db3b06dbffe/Glib_src.zip.html ) - Version Info API - SIP Profile Admin API JAVA APIs --------- Configuration: - JSR 139: Connected Limited Device Configuration 1.1 Profile: - JSR 118: Mobile Information Device Profile 2.1 Optional APIs: - JSR 75: PDA Optional Packages for the J2ME™ Platform 1.0, FileConnection and PIM APIs optional package - JSR 82: Java™ APIs for Bluetooth 1.1 - JSR 120: Wireless Messaging API 1.1 - JSR 172: J2METM Web Services Specification 1.0 - JSR 177: Security and Trust Services API for J2ME™ 1.0, SATSA-CRYPTO - JSR 177: Security and Trust Services API for J2ME™ 1.0, SATSA-PKI - JSR 179: Location API for J2ME™ 1.1 - JSR 180: SIP API for J2ME™ 1.0 - JSR 184: Mobile 3D Graphics API for J2ME™ 1.1 - JSR 205: Wireless Messaging API 2.0 - JSR 226: Scalable 2D Vector Graphics API for J2ME™ 1.1 - JSR 135: Mobile Media API 1.1 - JSR 234: Advanced Multimedia Supplements 1.0 - JSR 248: Mobile Service Architecture subset - Nokia UI API 1.1 - MobInfo API(New API) - IAP Info API(New API) - eSWT API (New API) New C++ Example Applications ========================= - AIWConsumerBasics - AudioStreamExample - DataMobility - DirectoryLocalizerEx - DynamicSettingList - ListBox - Localization - MyView (replaced MultiViews example) - RichTextEditor (replaced Editor example) - UnitEditorEx - 10 OpenC (Standard C) examples - Antiword Example - Dll Usage Example Application - Example application to simulate Active Object using Open C APIs - Libz usage example - Message Queue Library Example - Open C Hello World with Glib Events Example - Open C OpenGL ES Example - Producer Consumer Problem Solution Example - Redirect stdio to a file - String Utilities Library Example New JAVA Example Application ======================= - IAP Info Midlet Additional example applications can be found on www.forum.nokia.com Web Run-Time Widget Examples ======================= - RSS Reader Widget example Additional Widget applications can be found on www.forum.nokia.com System Requirements ==================== Basic Requirements: - Microsoft Windows XP SP2. - Minimum 1 GHz Pentium PC, 1024 MB of memory - At least 2 GB free disk space, other requirements according to the IDE used. - Installation/Uninstallation and using of the SDK requires local admin rights. - Other Requirements as required by IDE used Additional Softwares: - Active Perl 5.6.1 build 635 for SDK build tools. Newer or older versions of Perl may not be fully compatible with Symbian toolchain. Perl must be installed before using the SDK to build applications. - JRE 5.0 - Java Runtime version 1.5.0_10 or later is required. - ARM RVCT compiler 2.2 build 593 or newer is supported. (Version 3.0 is not supported by SDK toolchain) Known Issues and Deficiencies in this SDK Release =================================== Web Run-Time and Widget support ------------------------------------- - Widgets support in emulator is affected by the emulator-specific limitation of the S60 browser: openURL commands from the widget code do not succeed and may cause browser session to crash. Workaround: NONE - After closing a widget browser session, ALLOC error note can be seen. This issue is specific to emulator implementation and has no functional impact. Workaround: NONE - After installing a widget via Application Installer in S60 emulator, ALLOC error note can be seen on exit. This issue is specific to emulator implementation and has no functional impact. Workaround: NONE - Web Feeds feature is NOT supported in the S60 emulator browser. Build Tools and IDEs -------------------- - For MIDlet debugging to work on Eclipse. Please follow the Workaround: Go to Windows->Preference->Java->Debug tab Deselect all checkbox Debug timeout: 150000 (Better to put 200000) Launch timeout: 200000 - Carbide.vs 3.0.1 integration: Carbide.vs 3.0.1 does not detect this particular SDK. On how to proceed please follow the workaround given in the Forum Nokia Wiki Link: http://wiki.forum.nokia.com/index.php/S60_3rd_Edition_SDK_FP2_-_Workarounds_and_Updates (Future versions of Carbide.vs may support automatic detection of this SDK) S60 APIs --------- - Header tzconverter.h uses class RTz which is defined in tz.h but this header is not included in tzconverter.h. Workaround: To utilize tzconverter.h, header tz.h must be also included into scope. - Header wngdoor.h uses TApaAppIdentifier in the method virtual IMPORT_C TApaAppIdentifier AppId() const, class TApaAppIdentifier which is defined in apaid.h but this header is not included in wngdoor.h. Workaround: To utilize wngdoor.h header apaid.h must be also included into scope. - Header wngmodel.h uses class MPictureFactory which is defined in gdi.h but this header is not included in wngmodel.h. Workaround: To utilize wngmodel.h, header gdi.h must be also included into scope. - Symbian class CCameraAdvancedSettings (part of ecam.h) is documented in Symbian Development Library but not implemented in S60. Workaround: This API must not be used. - RestoreHeaderL, SetHintType methods in the Class CContactItemField of the header Cntfield.h doesn't have implementation in the SDK Workaround: This method must not be used. - CParserPropertyValueAlarm() method in CParserPropertyValueAlarm Class of header vcal.h does not have implementation in the SDK Workaround: This method must not be used. - DataTypes Method in the Class TApaAppServiceInfo of the header apaid.h does not have implementation in the SDK Workaround: This method must not be used. - CViewContact(long) method in the class CViewContact of the header cntviewbase.h does not have its implementation in the SDK. Workaround: This method must not be used. Installation/Uninstallation ---------------------------- - It is recommended that JDK and IDE are installed before installing the SDK. - If SDK installation path contains other than alphanumeric characters, installation fails. Currently, the installer allows selecting a path which contains spaces, but the functionality of a SDK installed to such path may fail. Workaround: Do not give any non alphanumeric characters or white spaces in the installation path. - Installation to non-default folder creates extra folders to the C: drive. Workaround: It is recommended to install the SDK to the default installation path. - SDK uninstall does not remove SDK entries from installationRegistry.xml. - Uninstalling SDK versions prior 3rd Edition FP2 while 3rd Edition FP2 present will cause error note at the end of Uninstallation. Workaround: In that case the active remaining SDK device needs to be set manually via 'devices' utility in command prompt. S60 Tools ---------- - Multiple JRE installation confuses the svg2svgt installer. Workaround: Add JRE (1.4.2 or newer) folder to PATH before running the installer, after installation the JRE installation folder can be removed from PATH. - It is not possible to run SIP applications on a single PC. Workaround: You need at least two PCs to run SIP Applications. Minimum configuration: + PC1: S60 Emulator running Client application using SIP+ SIP Server. + PC2: S60 Emulator running Client application using SIP. + SIP Server can also reside on a third computer. When using SIP Server on the same PC with S60 emulator, the SIP Profile configured on this S60 emulator must include SIP Proxy set to the same server address and SIP Realm as configured for SIP Registrar (e.g. the IP address of the machine where both run). Connectivity -------------- - Executing ceddump.exe does not create a cedout.cfg file if the emulator is running. Workaround: Run the Cedump.exe from command prompt before starting the emulator or closing the emulator for creating the cedout.cfg Emulator Applications ---------------------- - Saving locally stored web pages does not work in the Web application. - Camera application is not supported by the S60 emulator. - RealPlayer in emulator may fail to play some samples or play only partial audio or video content. This issue is related to limitation on supported codecs in the emulator. - Sending and receiving email fails in Landscape, when Security Settings are ON i.e. Email configured with SSL/TLS or Start TLS. - Sending business cards or calendar events via text message ("Smart Messaging") is not supported in S60 emulator. - After closing GPS application or an application utilizing Location service, PosServer ALLOC panic note can be seen. This issue is specific to emulator implementation and has no functional impact. - Sending an audio message throws an ALLOC error, and has no functional impact. - On opening Gallery, sometimes an error "Feature not Supported" pops up. Workaround: Restart the emulator and continue working. - Slideshow feature may not work sometimes in Landscape mode. It does not have any functional impact. - Upon exit from contacts after creating a group, Kern Exec 3 exception is encountered. This does not have any functional impact. - Upon selecting 'copy' from options menu of Contacts View, Application closes with KERN-EXEC 3 when any contact is opened. However this has no functional impact. NOTE - These failures have no major functional impact on Application development. Workaround: NONE Emulator --------- - Emulator may close automatically intermittently. Workaround: Restart emulator to start working again. - Emulator prompts for selecting an access point every time midlet is opened for running, but this has no functional impact. - Locale of the emulator can be changed by renaming a locale dependent file elocl.xxx in \release\winscw\udeb. For instance to set the emulator to Swedish locale rename elocl.006 to elocl.loc. Make a backup of the original elocl.loc. Only locale supported by the current language setting can be selected. Emulator language is modified through the S60 SDK Start menu. - The emulator includes most of the S60 applications for convenience. The lack of the actual terminal hardware limits availability of some features like SIM features. - With some Bluetooth adapters there are problems in using certain physical COM-ports for Bluetooth adapter with the emulator. Workaround: Try different COM-port for the adapter. - The emulated MMC card should be initialized with Memory Application before first use. - In MMC Emulation, removable drive letter is not always updated in configuration panel. - WAP Push Files do not open in the emulator. - Epoc.exe process hangs if the emulator is "turned off" in standby mode. Workaround: Kill process using Windows Task Manager. - In the emulator, the value of the User::NTickCount() function advances every 5 ms (200 Hz) instead of every 1 ms (1000 Hz) as mentioned in the documentation. - When opening DRM content using File > Open, rights object (DRC) must be loaded before content (DCF). - Emulated events are not visible in emulator UI in all situations. Workaround: Events need to be caught programmatically. - Pressing PC keyboard softkey shortcuts (Alt+1 and Alt+2) in Application Shell occasionally fail to have effect. - Emulator does not support USB connectivity. - Emulator does not support Bluetooth peripherals (headsets and printers). - With default Theme, some Note controls lack icons. Workaround: Changing Theme fixes the appearance. - With default Theme, Progress Indicator bar controls will not be animated or updated. Workaround: Changing Theme fixes the appearance. - Localization of Chinese and Japanese variants is not fully complete and may lack some items. - Screensaver in idle mode is not enabled by default in S60 emulator. This causes opening Personalization folder under Settings, changing screensaver text or animation file to fail with error in S60 emulator. Workaround: To enable screensaver, set the startup mode to "Start all services" in emulator Preferences. After that, screensaver and its configuration becomes active in this emulator session. - Transition effects are not fully functional in the emulator. C++ Example Applications --------------------------- - Webclient example panics on exit. This panic is caused by S60 emulator implementation. Workaround: NONE - BrCtlSampleApp example application does not render HTML properly in emulator. Workaround: NONE - SIP example: In the two PC setup Instant Messages are not sent from the machine where the SIP Server Emulator is running. Workaround: Use 3 PC setup, with the SIP server running on a third PC for two way messaging. - ContactsDB and some other S60 example application may display ALLOC error on exit. This issue is not related to example code and causes no functional impact. Workaround: NONE - Symbian Example BIOMessage fails to build but, this example demonstrates API usage. Workaround: NONE - Some Symbian Example applications do not have documentation - AcceptPrintInput, debugging and EgConverter. Workaround: NONE Removed/Deprecated Headers ------------------------------- - autosend.h - biocmtm.h - biocmds.h - biosmtm.h - icl/jp2kuids.hrh - icl/jp2kimagedata.h - imcmmain.h - imcvrecv.h - imcvsend.h - imcvutil.h - mmssettingsproxybase.h - wapp.h - wappdf.h - watcher.h Workaround: Removed/Deprecated headers do not affect application development. However, it is recommended to see the SDK Documentation for alternatives. Documentation --------------- - Some Java Documentation links do not work. Workaround: Documents are available upon search in S60\Devices\S60_3rd_SDK_Final\docs\javadocs. Java APIs ---------- - LCDUI API has issues related to Sound playback. However, this doesn't have any functional impact. - RTSP is not supported in SDK as part of JSR 135 MMAPI but it is supported on Device. Copyright (c) 2001-2008 Nokia Corporation. All rights reserved. Nokia and Nokia Connecting People are registered trademarks of Nokia Corporation.