Read about updates, corrections, and clarifications to the documentation released with Sybase Unwired Platform Mobile SDK.
| Issue Number | Description | 
|---|---|
n/a  | Duplication linking issues in Sybase Control Center for Sybase Unwired Platform In the Applications topic,
                            there are dulicate links to these topics: 
                        
 There are duplicate Parent topic links back to the Applications topic in these topics: 
                    
  | 
n/a  | Close parentheses missing from linker flags In the Importing Libraries and Code topic in Developer Guide: iOS Object API Applications step 11 should include close parentheses after EFFECTIVE_PLATFORM_NAME: $(SRCROOT)/$(PRODUCT_NAME)/libs/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/libMO.a $(SRCROOT)/$(PRODUCT_NAME)/libs/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/libSUPObj.a  | 
n/a  | Corrected code for setting up a database connection The code in Connecting Through a Relay Server was updated to cover two situations: whether the connection template on SCC is configured with all the required Relay Server information or not.  | 
n/a  | On-demand cache policy with a small coherence window, not large In the Cache Group Considerations topic in Mobile Data Models: Using Mobile Business Objects 2.1 ESD #3, the second sentence should read: "...for transactional data that has little tolerance for EIS data that is stale, an On-demand cache policy with a small coherence window is a more appropriate cache solution than an hourly schedule-based refresh."  | 
n/a  | Do not compile and run the example
                            projects The following note was omitted from the prerequisites in the Unwired Platform version 2.1 ESD #3 Tutorials: Do not try to compile and run the tutorial example projects posted in the SAP® Community Network: http://scn.sap.com/docs/DOC-8803. They are meant only as code examples. This applies to:  
  | 
n/a  | Updates to the Datavault documentation for Android were made. A new topic was added in Developer Guide: Android Object API Applications > Client Object API Usage > Security APIs > SUPDataVault DataVault to document the init method. Developer Guide: Android Object API Applications > Client Object API Usage > Security APIs > SUPDataVault DataVault > Code Sample is also updated to include the init method.  | 
n/a  | Changes in the directory structure for the Sybase Mobile SDK installation in this version were not updated in the documentation. Beginning with Unwired Platform version 2.1 ESD #3, Sybase Mobile SDK installs in a directory structure that allows multiple versions of Mobile SDK to coexist on the same system. The SDK top level directory now includes the version and some directories that were peers to the SDK top level directory are now located below it. Refer to Path Corrections for Backward Compatibility when you encounter a path specifying the location of any Mobile SDK files.  | 
n/a  | In
                        the Developer Guide: Mobile Workflow Packages >
                            Mobile Workflow Development > Hybrid Web Container Customization >
                            iOS Hybrid Web Container Customization > iOS Customization Touch
                            Points > Default Behavior Customization for the iOS Hybrid Web
                            Container > Customizing PIN Screens on iOS > Removing the PIN
                            Screen, there is additional information to note: Note: Removing the PIN screen leaves data that is stored on
                            the device less secure. You should remove the PIN screen only if you are
                            not concerned about keeping your data secure. 
This also applies to Developer Guide: Mobile Workflow Packages > Mobile Workflow Development > Hybrid Web Container Customization > Android Hybrid Web Container Customization > Android Customization Touch Points > Default Behavior Customization for the Android Hybrid Web Container > Removing the PIN Screen.  | 
SMPONP-3383  | Documentation does not mention need to
                            re-get sync parameter instance In Developer Guide: iOS Object API Applications 2.1 ESD #3 > Customizing the Application Using the Object API > Initializing an Application > Initially Starting an Application > Modifying Synchronization Parameters, when modifying synchronization parameters, you must re-get the sync parameter instance and save again. Workaround: Use the correct
                            code: 
<MBO>SynchronizationParameters *params = [<MBO> getSynchronizationParameters]; [params delete]; params = [<MBO> getSynchronizationParameters]; //must re-get the sync parameter instance params.Param1 = @value1; //set new sync parameter value params.Param2 = @value2; //set new sync parameter value [params save]; [SUP101SUP101DB synchronize];  | 
CR 724568  | Use submitPendingOperations and cancelPendingOperations only when there are multiple pending entities on the same MBO type. submitPendingOperations and cancelPendingOperations do a select on the MBO table to find the pending MBO instances. If the MBO instance is available in memory, using the MBO instance's submitPending or cancelPending is more efficient. Applies to the Pending
                                Operation topic in the Object API developer guides: 
                    
  | 
CR 721074  | Topic no longer applicable in the BlackBerry developer guide The HTTP Push Gateway topic in Developer Guide: BlackBerry Object API Applications > Client Object API Usage > Synchronization APIs > Push Synchronization Applications is not applicable in Unwired Platform version 2.1 ESD #3.  | 
CR 716173  | MBS is used for authentication The topic Object API Changes in SDK Version 2.1 ESD #3 in New Features 2.1 ESD #3 > New Features for Sybase Mobile SDK > Object API Development requires clarification. The sentence "Consequently, messaging-based synchronization has been removed from the 2.1 ESD #3 SDK." should be changed to: "Consequently, messaging-based synchronization has been removed from the 2.1 ESD #3 SDK for data delivery. The messaging channel continues to be used for communications such as application registration." The types of communications the messaging channel sends are listed in DeveloperGuide: iOS Object API Applications > Getting Started with iOS Development > Best USes for Object API Applications > Client Runtime Architecture > Mobile Channel Interfaces.  | 
CR 714445  | References in
                            the Developer Guide: Mobile Workflow
                                Packages > Mobile Workflow DCN
                                Without Payload topic are not valid JSON, because the data
                            value is an object and should be an array, and there is an extra colon.
                            For example, this syntax is
                            incorrect: 
                         {”id”:””,”op”:”:”,”subject”:””,”to”:””,”from”:””,”read”:,”priority”:,
”body”:””, “data{}} 
And
                            should
                            be: {”id”:””,”op”:”:upsert”,”subject”:””,”to”:””,”from”:””, ”read”:,”priority”:, ”body”:””, 
”data”:[]} 
 And this
                            example: 
                        {”id”:””,”op”:”:”,”subject”:”test”, ”to”:”test”,”from”:”test”,”read”:, 
”priority”:,”body”:” MATCH:SUP_MWF,TaskID:TS97200149, WIID:1470577, USER:PERF0111*#END#*”, "data”{}}
Should
                            be: 
                     {”id”:””,”op”:”:upsert”,”subject”:”test”,”to”:”test”,”from”:”test”,”read”:, ”priority”:,
”body”:” MATCH:SUP_MWF,TaskID:TS97200149, WIID:1470577, USER:PERF0111*#END#*”,”data”:[]}
                         | 
CR 710930  | Startup of an application always gets http callback errors. During initialization, the client may try several URLs in an attempt to discover the correct path to the Unwired Platform server. During these attempts, 404 errors (Page Not Found) may occur and will be reported to the OnHttpCommunicationError callback. This is expected behavior and you can safely ignore these initial 404 errors. If the 404 errors continue to occur after successful registration of the application or if registration never succeeds, double check the UrlSuffix setting of the application's ConnectionProperties object.  | 
CR 710608  | Return code is unexpected through onHttpCommunicationError with disabled user. In an environment configured for SiteMinder authentication, the expectation is that onHttpCommunicationError will be called back for error condition 302. This condition is not fulfilled currently by the Windows and Windows Mobile platforms; instead, they return 404 errors.  | 
CR 710105  | Issue: Unwired WorkSpace online help
                        for output mapping does not link to a valid topic. Search Sybase Unwired Platform documentation for the topic Output Mappings for more information.  | 
CR 709826  | Clarification on
                            onReplaySuccess:(id)entityObject. In the Developer Guide: iOS Object API Applications > Client Object API Usage > Callback and Listener APIs, there is additional information to note: Note: The onReplaySuccess:(id)entityObject is an MBO object
                            instance that contains the data prior to the synchronization. You can
                            use the change log API to find records that occur after the
                            synchronization. 
 | 
CR 709815  | Issue: The synchronization method
                        described in the topic Synchronization Parameter Behavior in the Mobile Data
                        Models: Using Mobile Business Objects guide is incorrect. References to sp.Synchronize() should be SUP101DB.Synchronize().  | 
CR 709519  | Issue: Some documents reference an
                        incorrect path: <Install-Root>\MobileSDK213\ObjectAPI\iOS\MBS\iOS and
                            <Install-Root>\MobileSDK213\ObjectAPI\iOS\RBS\iOS. iOS client files for 2.1.3 are in <Install-Root>\MobileSDK213\ObjectAPI\iOS\RBS and <Install-Root>\MobileSDK213\ObjectAPI\iOS\MBS.  | 
CR 709194  | Issue: For all Object API tutorials,
                        if you opt to use the Mobile Business Object example project instead of
                        performing the tutorial, the instructions should include that you must
                        deploy the mobile application project to Unwired Server. Creating the MBOs
                        and deploying the project are prerequisites for performing the Object API
                            tutorials. After importing the MBO example project, connect to Unwired Server and deploy the project. See Tutorial: Mobile Business Object Development > Deploying the Database Mobile Business Objects for details.  | 
CR 706677  |  Creating a DataVault that Enforces
                            Password Policy  The data vault security feature has been enhanced to allow administrators to create a password policy for data vault logins. Developers must create data vault code that performs policy enforcement. Use the datavault class to create a datavault that enforces a password policy. This class provides encrypted storage of occasionally used, small pieces of data, and is documented in the SUPDataVault or DataVault topic in the corresponding Developer Guide for your application type.  | 
CR 708259  | The developer guides do not document all
                            the methods in the ConnectionPropertyType class. See the generated API reference information provided with the Mobile SDK for a complete list of methods in the ConnectionPropertyType class.  | 
CR 674889  | Apple Push Notification Services (APNS)
                            Works on iPad Devices. The Apple Push Notification Service Configuration topic in the OData SDK Developer Guide and the iOS Object API Applications Developer Guide incorrectly states that APNS cannot be used with iPad devices.  |