blackberry.com
BlackBerry Dynamics
Runtime library for macOS applications
from the application developer portal

Build-Time Configuration

BlackBerry Dynamics utilizes a number of capabilities of the operating system that require build-time configuration. Some build-time configuration is therefore mandatory for all applications.

Inter-Application Communication

All applications must support inter-application communication. This is required for:

BlackBerry Dynamics utilization of inter-application communication requires the following build-time configuration.

All applications must register a specific URL type on the device. The URL type must be the same as the application's native bundle identifier.

Within the URL type declaration a URL scheme must be declared that is the same as the URL type, with .sc2 appended. The URL type and schemes would be declared in the application's Info.plist file, as usual.

For example, if the native bundle identifier of the application was com.example.gd.myapp then the URL type declared would also be com.example.gd.myapp and the URL schemes would be:

The Info.plist file of any of the official sample applications that come with the BlackBerry Dynamics SDK can be used as a guide.

Alternatively, add the following XML to the application's Info.plist file, using a text editor. Change all instances of com.macOS.App.ID to the native bundle identifier of the application.

 <key>CFBundleURLTypes</key>
 <array>
     <dict>
         <key>CFBundleTypeRole</key>
         <string>None</string>
         <key>CFBundleURLName</key>
         <string>com.macOS.App.ID</string>
         <key>CFBundleURLSchemes</key>
         <array>
             <string>com.macOS.App.ID.sc2</string>
         </array>
     </dict>
 </array>

Note that the first CFBundleURLSchemes array item has a .sc2 suffix applied to the native bundle identifier. The CFBundleTypeRole element is not used by BlackBerry Dynamics and could take another value, as required by the application.

In case there are multiple Info.plist files, check that the correct one has been edited by opening the Info tab of the application target being built. The declarations just made should appear there.

The BlackBerry Dynamics runtime checks the configuration during authorization processing. The end user will not be authorized if the configuration is incorrect.

Symbol Stripping

Stripping symbols from the executable increases the security of an application. It makes reverse engineering and binary modification more difficult.

Select the following options in the configuration for the production build.

The user interface for these options can be found in the Xcode Project Editor, on the Build Settings tab. The easiest way to locate the options may be to key the name of each setting in the search box.

The above settings will remove symbols and debugging information from the executable. It is OK not to select them in a debug build.

Check the Apple application developer website for more explanation of what these options do.