Skip Navigation

Shared Services Framework

BlackBerry Dynamics
apps can communicate with each other and application servers using the Shared Services Framework, a collaboration system that is defined by two components: one that provides a service and another that consumes the service.
The provider can be a client-side service, which is a
BlackBerry Dynamics
app that uses the GDService APIs (Android/iOS), or a server-side service that is provided by an application server or other remote system. The service is consumed by a
BlackBerry Dynamics
app that communicates with the provider using AppKinetics (a proprietary
BlackBerry
ICC protocol) for client-side services or a protocol such as HTTPS for server-side services.
The typical steps that are required to consume a service:
  1. Service discovery: The
    BlackBerry Dynamics
    app (the consumer) queries for service providers using the GDAndroid.getServiceProvidersFor API or the GDiOS.getServiceProvidersFor API. Service discovery is optional but recommended for both types of services because it respects user entitlements and permissions.
  2. Provider selection: The consuming app selects the provider. This is handled by the app code.
  3. Service request: The consuming app sends a service request to the provider using the GDServiceClient API (Android/iOS) for client-side services or TCP sockets or HTTP over
    BlackBerry Dynamics
    secure communication (Android/iOS) for server-side services.
  4. Service response: The consuming app receives the provider response using the same interface that was used for the request (the GDServiceClient API (Android/iOS) for client-side services or
    BlackBerry Dynamics
    secure communication (Android/iOS) for server-side services).
Client-side services can be used offline and are ideal if the service requires specific user interaction.
Server-side services can be provided by a clustered application server and are ideal if the server software already exists outside of the
BlackBerry Dynamics
platform.
Client-side and server-side services both require user entitlement in the management console.
If you want your custom
BlackBerry Dynamics
app to use the Shared Services Framework, the
UEM
administrator must specify the app package ID (
Android
) or bundle ID (
iOS
) in the
BlackBerry Dynamics
app settings in the management console. Contact your organization’s administrator to provide this information. For instructions for specifying the package ID or bundle ID for an app, see Manage settings for a BlackBerry Dynamics app in the
UEM Administration Guide
.
Sample apps that are included with the SDK demonstrate how to use the Shared Services Framework. For more information about how to use the Shared Services Framework, see the following resources:
Server-side services can use the Push Channel API (Android/iOS) to send notifications to
BlackBerry Dynamics
apps. The channel is end-to-end secure at the same level as
BlackBerry Dynamics
secure communication. As a result, the
BlackBerry Dynamics
app does not need to poll the application server, which decreases the load on both the app and the application server. Any application server that is a service provider can use the Push Channel.