Skip Navigation

Software requirements

iOS
development

Item
Requirement
Compatibility with previous versions of the SDK
The latest release of the
BlackBerry Dynamics SDK for iOS
is compatible with these previous releases of the SDK:
  • 10.0.x
  • 10.1.x
  • 10.2.x
  • 11.0.x
  • 11.2.x
  • 11.1.x
  • 11.2.x
Deployment target
iOS
15 or later
Xcode
Xcode
14 or 15
Support for
Mac
Silicon M1 devices
  • BlackBerry Dynamics
    apps using SDK version 11.0 or later are supported for
    Mac
    Silicon devices.
  • BlackBerry Dynamics
    apps running on
    Mac
    Silicon devices are reported as
    Mac
    apps in the
    UEM
    management console.
  • UEM
    administrators can control access to
    BlackBerry Dynamics
    apps using the
    macOS
    compliance settings available in the management console.
  • To support Easy Activation and authentication delegation, you will need to provide the
    macOS
    bundle ID for the app in the Apps settings in myAccount.
Supported programming languages
  • Objective-C
  • Swift
    4, 4.2, 5
Supported Internet Protocols
  • IPv4
  • IPv6
Info.plist requirements
In the Info.plist file, add the key "Privacy - Camera Usage Description" with the value "Allow camera usage to scan a QR code". This is not required if the app already uses the camera for its own purposes.
For ISV apps, it is recommended that you add the following usage descriptions (or your own custom descriptions) to the Info.plist file to inform the user why the app requires location permission:
  • NSLocationWhenInUseUsageDescription: "Allow BlackBerry to collect location data, including Wi-Fi address and IP address, and usage patterns only when the app is in use. You may change this setting at any time from your device settings."
  • NSLocationAlwaysUsageDescription: "Always allow BlackBerry to collect location data, including Wi-Fi address and IP address, and usage patterns, even when the app is not in use. You may change this setting at any time from your device settings."
  • NSLocationAlwaysAndWhenInUseUsageDescription: "Allow BlackBerry to collect location data, including Wi-Fi address and IP address, and usage patterns both when the app is and is not in use. You may change this setting at any time from your device settings."
Native bundle ID
If you develop a
BlackBerry Dynamics
app for use on both
iPhone
and
iPad
devices, use a single native bundle ID for all variations of the app.
UEM
will only accept a single native bundle ID.
Keychain group sharing for multiple apps
Keychain group sharing allows groups of apps to share information that is stored on a device's keychain. Keychain group sharing is required when you are developing multiple inter-related apps. The setting is part of a project's build.
To enable keychain group sharing in an
Xcode
project, open the project file, navigate to the app target Capabilities tab, and turn on Keychain Sharing. You may be asked for your developer password and to choose a development team. The provisioning profiles for each app must come from the same team and must share the same App ID prefix (see row below). For the Keychain Group, specify
com.good.gd.data
. Also, if you intend to use crypto tokens in your app, specify
com.apple.token
.
If the settings for keychain group sharing change, it is recommended to do a fresh reinstall of the new version of the app instead of upgrading the old version. This ensures that the new keychain settings take effect.
App ID prefix
An App ID prefix is a unique ID that groups a collection of apps and enables those apps to share keychain and UIPasteboard data. Apps that share keychain data must have a common App ID prefix from
Apple
.
The
Apple
App ID prefix is completely independent of the
BlackBerry Dynamics
entitlement ID
.
BlackBerry Dynamics Launcher Library
The
BlackBerry Dynamics Launcher
is a user-friendly interface that allows users to easily access and switch between
BlackBerry Dynamics
apps, configure app settings, and take advantage of other useful features. For more information, see the BlackBerry Dynamics Launcher Framework documentation.
The
BlackBerry Dynamics SDK
and the
BlackBerry Dynamics Launcher Library
are mutually dependent. See the BlackBerry Dynamics SDK for iOS Release Notes for the required version of the
BlackBerry Dynamics Launcher Library
.
Restricted key prefix
The key prefix "blackberry" is reserved by
BlackBerry
and should not be used for key values, key attributes, or key elements. For more information and examples, see the Application Policies Definition in the appendix of the API Reference.