BlackBerry Dynamics SDK for iOS version 6.0
BlackBerry Dynamics SDK for iOS
version 6.0What's new in BlackBerry Dynamics SDK for iOS version 6.0
BlackBerry Dynamics SDK for iOS
version 6.0Required SDK changes
Feature | Description |
---|---|
Changes to software requirements | The BlackBerry Dynamics Runtime static library requires DeviceCheck.framework in the Link Binary With Libraries build phase. For a full list of the required frameworks and libraries, see the Requirements section of the BlackBerry Dynamics SDK for iOS Development Guide. |
Changes to the Automated Test Support Library (ATSL) | The BlackBerry
Dynamics ATSL is now delivered as a dynamic framework, with the sources available on GitHub . For more information, see the Testing and Troubleshooting section of the BlackBerry Dynamics SDK for iOS Development Guide. |
General SDK changes
Feature | Description |
---|---|
Changes to cipher support | Support for the following ciphers has been removed in this release as they do not meet the security standards of the SDK:
The next release of the BlackBerry Dynamics SDK will remove support for additional weak ciphers, including the following:
|
Support for multiple UIWindow objects | This release adds support for apps that use UIWindow objects. No coding is required to use this feature. The AppKinetics sample app has been updated to demonstrate support for multiple UIWindow objects. |
Changes to WKWebView support |
|
Changes to RSS Reader sample app | If cellular access is enabled for a feed, the name of the feed is green in the app. If cellular access is not enabled for a feed, the name of the feed is black in the app. |
Programmatic activation | The programmatic activation feature enables a BlackBerry
Dynamics app to activate without any user interaction and without displaying activation prompts or progress screens. This can be useful when targeting your apps to a consumer audience or for developing apps for devices that have limited or no means of user input.This release features a new implementation of this feature. For more information, see programmaticAuthorize in the BlackBerry Dynamics SDK API Reference.Note that as a result of this new implementation, the following APIs have been deprecated:
|
API changes |
|
Improvements to the log upload screen | Improvements have been made to the log upload screen in BlackBerry
Dynamics apps to better notify the user that a log has been uploaded successfully and to remove additional options that often resulted in duplicate log uploads. |
New APIs
Feature | Description |
---|---|
Preventing password autofill | Password autofill is an iOS feature that automatically provides suggestions for a user’s password or other privacy data in an app. This feature does not satisfy the security standards of the BlackBerry
Dynamics platform and can lead to the exposure of sensitive data.The BlackBerry Dynamics SDK disables the password autofill feature for all screens in BlackBerry
Dynamics apps but it does not block the feature in the app UI. BlackBerry provides an open source sample on GitHub that demonstrates how to prevent the password autofill feature in the app UI. For more information, see AutoFill blocking solution for Password AutoFill in UITextField.This method is independent of and does not rely on the BlackBerry Dynamics SDK . Note that this solution applies only to UITextField. |
Crypto C programming interface | This release adds a new Crypto C language programming interface that allows an app to retrieve public key certificates that are stored in the BlackBerry
Dynamics credentials store and use those certificates for signing and verification of messages and documents such as PDFs. Note that BlackBerry Infrastructure certificates cannot be retrieved from the store and that the private key will remain inaccessible. A new sample app demonstrates the use of this interface.For more information, see the Crypto C Programming Interface appendix in the API reference. |
Locally block or unblock the app UI | The BlackBerry Dynamics SDK includes the following APIs that can be used to locally block or unblock a user’s access to the UI of a BlackBerry
Dynamics app:These APIs can be used to temporarily prevent access to an app under certain conditions. For example, if the user accesses a public Wi-Fi network that is not trusted, you can use GDiOS.executeBlock to prevent access to the app until the user is once again on a trusted Wi-Fi network. While the app UI is blocked, the app’s network activity and container storage access is not affected.You can use GDiOS.executeBlock to display a message to the user that explains why access to the app has been blocked and how the user can restore compliance and unblock the UI. The RemoteDB sample app has been updated to demonstrate the use of these APIs. It is possible to circumvent a UI block if the user is able to restore a backup that was created before the block occurred. Take this condition into account when developing and testing your app. |
Background Authorize | Background Authorize is a restricted API that allows a recently locked BlackBerry
Dynamics app to use the principal BlackBerry Dynamics APIs (such as secure storage and secure communication) when the app is running in the background.This feature can be useful in scenarios where the app has stopped unexpectedly and is started in the background in response to an APNS message (for example, a new email). If Background Authorize is enabled, the app can download new messages and store them in the secure container. When the user brings the app to the foreground they can authorize and immediately access their new messages. To access this restricted API, submit a request to the BlackBerry
Dynamics Registrar program at BlackBerryDynamicsRegistrar@blackberry.com.For more information about this feature, see the Background Authorize Security White Paper. |
New administrative and security features in
BlackBerry UEM
version 12.11Feature | Description |
---|---|
iOS app integrity check | A new option in activation profiles in UEM 12.11 allows an administrator to periodically check the integrity of BlackBerry
Dynamics apps using the Apple DeviceCheck framework. For more information, see Framework: DeviceCheck.Note the following:
|
Changes to the BlackBerry
Dynamics connectivity profile | The BlackBerry
Dynamics connectivity profile in BlackBerry UEM 12.11 includes a new Default route option that is intended to replace the Route all traffic option (the Route all traffic option is still available). The new Default route option allows for more detailed control over how BlackBerry
Dynamics apps that use SDK version 6.0 or later can connect to app servers.The troubleshooting section of the RSS Reader sample app has been updated to allow you to check the route that is used for any user-entered URL or port. Note the following:
|
Using Entrust for BlackBerry
Dynamics apps | In UEM 12.11, you can now use an Entrust PKI connection to enroll certificates for BlackBerry
Dynamics apps using the User credential profile. |
BlackBerry Dynamics Launcher Library
BlackBerry Dynamics Launcher Library
This release uses
BlackBerry Dynamics Launcher Library
version 2.10.0.231.Fixed issues
The following issues are fixed in this release:
- Previously, if a user tried to activate aBlackBerry Dynamicsapp that was designated as the primary authentication delegate by using the secondary authentication delegate app, and the secondary delegate was locked, the activation prompt became stuck in a loop. This issue is now resolved. (FIRST-15509)
- If you upgraded aBlackBerry Dynamicsapp to SDK version 5.0.0.52, and aUEMadministrator remotely locked the app at some point, subsequent remote lock commands did not work. This issue is resolved by upgrading the app to SDK version 6.0. (GD-42770)
- If aBlackBerry Dynamicsapp uses app-based client certificates, and a user tries to open and activate the app before the certificate provider (theBlackBerry UEM ClientorEntrustSmart Card credentials) has been provisioned forBlackBerry Dynamics, theBlackBerry UEM Clientbecomes locked.A descriptive error message has been added to clarify how to resolve this scenario. (GD-39573)
- If theUEMadministrator configured and assigned a SCEP profile to devices withBlackBerry Dynamicsapps,BlackBerry Dynamicsapps could not enroll the certificate if the CA instance name specified in the profile included a space or a character that was not alpha-numeric [0-9a-zA-Z] or $-_.+!*'(), for example, non-ASCII, URL-reserved, or unsafe URL characters. This issue is now resolved. (GD-39207)
- Previously, if a user reactivated aBlackBerry Dynamicsapp that was assigned as the authentication delegate, the user had to enroll the client certificate again. In this release, if a user reactivates an authentication delegate app, the app tries to retrieve the client certificate from otherBlackBerry Dynamicsapps on the device. If no other apps have the certificate, then the user is prompted to enroll the certificate again. (GD-23372)
Known issues
- When aBlackBerry Dynamicsapp with SDK version 4.1.x or later is upgraded to a new version that uses SDK version 6.0, if the user selects the “Forgot Password” option when logging in, the remote unlock of the app is successful but future unlock attempts could fail in certain scenarios.
- ForiOS11 devices, if the "Do not allow copying data from nonBlackBerry Dynamicsapps intoBlackBerry Dynamicsapps" setting is not enabled in aBlackBerry Dynamicsprofile that is assigned to a user, the user will see an additional Look Up option when they try to paste copied text. When tapped, the Look Up option does not do anything. This issue occurs due to a known issue withiOS11. (GD-41723)
- If an activatedBlackBerry Dynamicsapp is blocked because of a compliance violation (based on the assignedUEMcompliance profile), when the user tries to activate additionalBlackBerry Dynamicsapps, those apps cannot be activated because they cannot retrieve certificates from the blocked app. (GD-41592)Workaround:Resolve the compliance issue with the blocked app or remove the blocked app and try the activation process again.
- If an app uses the new Crypto C programming interface and the "Enable device certificate store" setting is enabled in theBlackBerry Dynamicspolicy that is assigned to the user, this setting applies to SSL/TLS verification only, not to PKCS#7/SMIME. (GD-40906)Workaround:Install the trusted CA certificate in theBlackBerry Dynamicscertificate store using aUEMCA certificate profile.
- If theUEMadministrator enables FIPS in aBlackBerry Dynamicsprofile and assigns it to a user account,BlackBerry Dynamicsapps on the user's device cannot verify an MD5 certificate thumbprint. (GD-38397)Workaround:Turn off FIPS in theBlackBerry Dynamicsprofile or use SHA1, SHA224, SHA256, SHA384, or SHA512 instead.
- If theUEMadministrator changes the settings in a user credential profile, any users that are assigned that profile are not prompted to enroll the certificates again. (GD-38029)
- When using apps in split-screen mode, text input actions when using UIWebView or WKWebView are limited and may not work as expected. (GD-37985)
- When a user first installs and opens aBlackBerry Dynamicsapp, the app attempts to get shared certificates from anotherBlackBerry Dynamicsapp on the device. To obtain the shared certificates from another app, the user must log in to that app. If the user clicks Forgot Password at this point, then unlocks that app using a key fromUEMor standaloneGood Control, the process to share the certificate and log in to the newBlackBerry Dynamicsapp does not complete successfully. (GD-37931)Workaround:Close the newBlackBerry Dynamicsapp, manually open and log in to anotherBlackBerry Dynamicsapp that uses the shared certificates, then open and log in to the newBlackBerry Dynamicsapp.
- If theUEMadministrator assigns a user credential profile that usesEntrust, and another user credential profile that uses PKI, when activatingBlackBerry Dynamicsusing an authentication delegate, the user is prompted to enroll the PKI certificate multiple times. (GD-35783)