Appendix G: New Features
The following are some of the new features to the SMP 3.0 platform since its initial release that may be of interest to Kapsel developers.
SMP 3.0 Server SP01
SMP 3.0 Server SP02
SMP 3.0 Server SP03
SMP 3.0 Server SP03 PL02
SMP 3.0 Server SP04
SMP 3.0 Server SP04 PL01
SMP 3.0 SDK SP01
SMP 3.0 SDK SP02
SMP 3.0 SDK SP03
SMP 3.0 SDK SP04
SMP 3.0 SDK SP05
SMP 3.0 Server SP01
- Final build dated Nov 15th, 2013.
- Endpoints must now be specifically selected or enabled for an application. Previously an application could use any endpoint.
See also Using a Technical User to Connect to a Backend OData Source for an example showing how a Kapsel app can use more than one endpoint.
SMP 3.0 Server SP02
- Final build dated Feb 18, 2014.
- Applications can be exported and imported through the Management Cockpit. This is intended to be used for moving applications from a test server to a production server. Note that security profiles and registration information is not included in the exported zip.
If the AppUpdate plugin is used, after completing the import, the Deploy button must be pushed to increment the revision. To do this, select the newly imported app, click on App Specific Settings, New Version, Deploy.
The above screenshot shows the state following an import of a Kapsel app. For the app to become available the Deploy button must be pressed which will update the revision from 1 to 2.
Note, that the revision number on the server is incremented by one following the import/deploy. If revision 10 of an app on a production server is exported, then the app is removed and then imported it will be at revision 1. If the revision of the app on production server is 5 and a new version is imported on top of an existing version, its revision will be 6 following the import. - The shortcuts to start and stop the SMP 3.0 server from the start menu now can start and stop the server when it is running as a service.
SMP 3.0 Server SP03
- Final build dated April 29, 2014.
- The install can be run without having a previous installation of SMP 3.0 being present.
- Support for running the SMP 3.0 server in a cluster. For additional details see Cluster Installation.
- Support for accessing the SMP 3.0 server using the Relay Server.
- If an endpoint makes use of relative paths, they can be added a shown here.
SMP 3.0 Server SP03 PL02
- Final build dated July 18th, 2014.
- Must be applied to an SMP SP03 server.
- Adds the ability to have the backend rewrite the URL rather than the SMP server.
When the request is made to the backend OData source or web server, a header indicating the host name and port is included. The backend system then is responsible for rewriting the request. An example of the header sent is shown below.Host: 10.7.171.196:8080
SMP 3.0 Server SP04
- Final build dated Sept 13, 2014. Note this SP corresponds with the SP05 SDK.
- Additional Cluster enhancements, proxy info is now set in the management cockpit.
- Server ports are now configurable in the management cockpit. The connections now have names in the default-server.xml file such as smpConnectorName="oneWaySSL".
- New ability to send push notifications to all users of an application or to multiple devices based on user. Notification Data Sent Using Push API
- The SMP server logs are now in the List Log Format 2.0. Some logs are now stored in a database rather than a file.
SMP 3.0 Server SP04 PL01
- Final build dated Sept 13th, 2014.
- This PL provides a feature vector which can be used to prevent a plugin from being called from JavaScript. The SMP 3.0 SP04 PL01 server provides a REST API that can be used to specify which plugins cannot be called. The Kapsel settings plugin enforces this policy and also provides an API named isFeatureEnabled that can be used before calling a plugin's API. For additional details see SAP Note 2064369 - Specifying mobile features to be restricted for an SAP Mobile Platform application.
SMP 3.0 SDK SP01
- Final build dated Nov 8th, 2013.
- Support for Cordova 3.1
SMP 3.0 SDK SP02
- Final build dated Feb 14, 2014.
- Support for Cordova 3.3
- The below code shows the new progress event for the app update plugin.
sap.AppUpdate.addEventListener("progress", function(e) { if (e.lengthComputable) { var percent = Math.round(e.loaded / e.total * 100); //console.log("Progress " + percent); document.getElementById('statusLabel').innerHTML = "Download progress " + percent + "%"; } });
The above code is contained in the sample provided in the App Update section. Note that for updates other than a full update, the download will be very quick since only changed files or deltas are sent. - The EncryptedStorage plugin now deletes its data if the Logon plugin's data vault is deleted. This can occur when the user clicks the Forgot Application Passcode button on the unlock screen of the Logon plugin, if the user enters too many incorrect passcodes or if the method sap.Logon.core.deleteRegistration is called. Previously it was not possible to delete an existing encrypted store and create a new one with the same name. A new method is provided named deleteStore.
store.deleteStore(successCallback, errorCallback);
- Previously the whitelist was not respected by the Kapsel plugins such as the AuthProxy or Logon. The whitelist is respected in SP02 by the Kapsel plugins.
SMP 3.0 SDK SP03
- Final build dated April 29, 2014.
- Cordova 3.4.0-0.1.3 support.
- Android 4.4 (KitKat) support.
- The EncryptedStorage plugin now requires the Logon plugin and uses its data vault to store the encryption keys. It no longer requires or uses a user provided password. Data stored in Kapsel projects is not migrated after upgrading the EncryptedStorage plugin from a prior version to SP03.
A new method was added to the Logon plugin named initPasscodeManager to support the use case where the application does not register with an SAP Mobile Platform or Gateway server and the developer still wishes to use the Encrypted Storage plugin. Examine the sample provided in the section Encrypted Storage for further details. - A new interface was added to the Logon plugin to enable it to call a native method whose implementation provides a client certificate. Previously this was only possible using SAP Afaria. For additional details see Using the X.509 Certificate Provider to Register using a Client Certificate.
- The ability to skip a screen was added to the Logon Plugin. See the section Customizing the Logon Plugin's UI for further details.
SMP 3.0 SDK SP04
- Final build dated July 8, 2014.
- Cordova 3.4.1-0.1.0 support.
- Local Kapsel plugins are now located using a plugin_search_path parameter that is provided when the project is created.
cordova -d create C:\Kapsel_Projects\LogonDemo com.mycompany.logon LogonDemo "{\"plugin_search_path\":\"C:/SAP/MobileSDK3/KapselSDK/plugins/\"}"
If your network uses a proxy server, it is also necessary to configure npm, git and plugman to use the proxy as demonstrated in the section Installing Apache Cordova with Node.js. - Online Application plugin (New in SP04).
- Toolbar plugin (New in SP04).
- Barcode Scanner plugin (New in SP04).
- Application Preferences plugin (New in SP04).
- Cache Manager (New in SP04)
- SAP Fiori Client (New in SP04)
- AuthProxy plugin can intercept requests and handle HTTP(S) and certificate challenges.
- Official support for iOS 7.1 and iOS 64 bit support. Previously it was required to change the build settings > Architectures from $(ARCHS_STANDARD) to $(ARCHS_STANDARD_32_BIT)
SMP 3.0 SDK SP05
- Final build dated Sept 13th, 2014.
- Cordova 3.5 support.
- Offline OData support
- Windows 8.1 and Windows 8.1 Phone support. Creating an Application on Windows 8.1 and Window 8.1 Phone
- New End-to-End Tracing plugin for Kapsel.
- Kapsel Logger plugin now logs using a different format and includes console.log entries into the log saved on the device.
SMP 3.0 SDK SP05 PL01
- Final build dated Sept 13th, 2014.
- Feature Vector