• BlackBerry Dynamics
  • Runtime library for iOS applications
  • 12.0.1.79
GDAppResultCode.h File Reference
#import <Foundation/Foundation.h>

Enumerations

enum  GDAppEventType {
  GDAppEventAuthorized = 0,
  GDAppEventNotAuthorized = 1,
  GDAppEventRemoteSettingsUpdate = 2,
  GDAppEventServicesUpdate = 3,
  GDAppEventPolicyUpdate = 4,
  GDAppEventEntitlementsUpdate = 6,
  GDAppEventBackgroundAuthorized = 7,
  GDAppEventBackgroundNotAuthorized = 8
}
 Constants for GDAppEvent type. More...
 
enum  GDAppResultCode {
  GDErrorNone = 0,
  GDErrorActivationFailed = -101,
  GDErrorProvisioningFailed = -102,
  GDErrorPushConnectionTimeout = -103,
  GDErrorAppDenied = -104,
  GDErrorAppVersionNotEntitled = -105,
  GDErrorIdleLockout = -300,
  GDErrorBlocked = -301,
  GDErrorWiped = -302,
  GDErrorRemoteLockout = -303,
  GDErrorPasswordChangeRequired = -304,
  GDErrorSecurityError = -100,
  GDErrorProgrammaticActivationNoNetwork = -601,
  GDErrorProgrammaticActivationCredentialsFailed = -602,
  GDErrorProgrammaticActivationServerCommsFailed = -603,
  GDErrorProgrammaticActivationAppIntegrityFailed = -606,
  GDErrorProgrammaticActivationUnknown = -600
}
 Constants for GDAppEvent result code. More...
 

Enumeration Type Documentation

◆ GDAppEventType

This enumeration represents the type of a GDAppEvent that is being notified. The GDAppEvent::type property will always take one of these values.

Enumerator
GDAppEventAuthorized 

Either the user has been authorized to access the application and its data, following authorization processing, or a condition that caused authorization to be withdrawn has been cleared.

The user can be given access to the application data, and the application can make full use of the BlackBerry Dynamics programming interface.

The event result code will be GDErrorNone.

See authorize (GDiOS) for authorization processing initiation.

GDAppEventNotAuthorized 

Either the user hasn't been authorized to access the application and its data, following authorization processing, or a condition has arisen that caused authorization to be withdrawn.

The application must deny the user access to any application data. This includes not displaying any data in the application user interface.

In the case that the user is found not to be authorized following authorization processing, the application cannot make use of the BlackBerry Dynamics programming interface, except to initiate authorization processing again. Otherwise, if authorization has only been withdrawn, the application can make use of the BlackBerry Dynamics programming interface.

The event result code will indicate the condition that has arisen. See GDAppResultCode.

See authorize (GDiOS) for authorization processing initiation.

GDAppEventRemoteSettingsUpdate 

A change to application configuration or other settings from the enterprise has been received. An event of this type is dispatched whenever there is a change in any value that is returned by getApplicationConfig (GDiOS) .

GDAppEventServicesUpdate 

A change to services-related configuration of one or more applications has been received. See under getServiceProvidersFor: (GDiOS) .

GDAppEventPolicyUpdate 

A change to one or more application-specific policy settings has been received. See under getApplicationPolicy (GDiOS) .

GDAppEventEntitlementsUpdate 

A change to the entitlements data of the end user has been received. If the entitlements of the end user had previously been checked, by calling the getEntitlementVersionsFor:callbackBlock: (GDiOS) function, then the entitlements should be checked again now.

GDAppEventBackgroundAuthorized 

The application has been authorized to access its data as a result of the system starting the application process from cold in the background, following background authorization processing.

The application can make full use of the BlackBerry Dynamics programming interface.

The event result code will be GDErrorNone.

See authorize (GDiOS) for authorization processing initiation.

GDAppEventBackgroundNotAuthorized 

The application hasn't been authorized to access its data, following background authorization processing, or a condition has arisen that caused background authorization to be withdrawn.

The application must deny the user access to any application data.

The event result code will indicate the condition that has arisen. See GDAppResultCode.

See authorize (GDiOS) for authorization processing initiation.

◆ GDAppResultCode

This enumeration represents the possible reasons that the end user isn't authorized. Its values are used in the following programming interfaces.

  • In a GDAppEvent that has been dispatched to the application, the code property takes one of these values. The code can be interpreted in conjunction with the event type, see GDAppEventType.
  • The GDState reasonNotAuthorized property takes one of these values if the isAuthorized property has the value NO.
Enumerator
GDErrorNone 

Used for all non-failure events.

GDErrorActivationFailed 

Device activation failed. Device activation is part of authorization processing. This code notifies the application that processing didn't succeed this time, but might succeed if another attempt is made. See under authorize (GDiOS) .

GDErrorProvisioningFailed 

Enterprise activation failed. Enterprise activation is part of authorization processing. This code notifies the application that processing didn't succeed this time, but might succeed if another attempt is made. See under authorize (GDiOS) .

GDErrorPushConnectionTimeout 

Connection to the Push Channel service failed but is required to complete authorization. This code notifies the application that authorization processing didn't succeed this time, but might succeed if another attempt is made.

See authorize (GDiOS) .

GDErrorAppDenied 

User not entitled. Authorization processing has completed, but the user isn't entitled to use this application. This code notifies the application that the BlackBerry Dynamics container has been wiped of all application data and authentication credentials.

If entitlement was withdrawn in error then, after reinstating entitlement, the following steps must be taken.

  1. The user must terminate the application on the device, for example, using the native task manager, and then restart the application.
  2. The application will then open as if being started for the first time.
  3. The user will then have to activate the application.

This code is utilized when the end user is not entitled to any version of the application. Compare the GDErrorAppVersionNotEntitled code, below.

See also
System administration tasks.
GDErrorAppVersionNotEntitled 

User not entitled to this version. Authorization processing has completed, but the user isn't entitled to this version of this application. This code notifies the application that the BlackBerry Dynamics container has been locked and isn't accessible.

If entitlement to the version is later granted, or reinstated, then the lock is removed. The device must be on-line and able to connect to the BlackBerry Dynamics infrastructure, and the user will have to re-authenticate, in order to complete the removal of the lock.

This code is utilized when the end user is entitled to at least one other version of the application, but not to the current version. Compare the GDErrorAppDenied code, above.

See also
System administration tasks.
GDErrorIdleLockout 

User inactive. The enterprise's security policies specify a time after which the application is to be locked, and the user has now been inactive for a period that exceeds this time. In effect, the user's authorization to access the application data has been withdrawn. This code notifies the application that the BlackBerry Dynamics unlock screen is active and therefore the application's own user interface mustn't be made active.

The locked condition will be cleared when the user enters their password, at which point the application will be notified with a new event.

GDErrorBlocked 

Policy violation block. The enterprise's security policies specify a condition under which access is to be blocked, and that condition has occurred. In effect, the user's authorization to access the application data has been withdrawn. This code notifies the application that its user interface must not be made active.

(Compare GDErrorWiped, below.)

This code may be set when, for example, connection to the BlackBerry Dynamics infrastructure hasn't been made for a specified interval. If the condition is cleared, the application will be notified with a new event.

GDErrorWiped 

Policy violation wipe. The enterprise's security policies specify a condition under which the secure container is to be wiped, and that condition has occurred. This code notifies the application that the container has been wiped of all application data and authentication credentials.

(Compare GDErrorBlocked, above, which also gives an example of a policy condition.)

After a device wipe, the application cannot be run until the following steps have been taken.

  1. The user must terminate the application on the device, for example, using the native task manager, and then restart the application.
  2. The application will then open as if being started for the first time.
  3. The user will then have to activate the application.
GDErrorRemoteLockout 

Remote lock-out. Either a remote lock command has been received from the enterprise management console,
or the security password on the device has been retried too often. In effect, the user's authorization to access the application data has been withdrawn. This code notifies the application that its user interface mustn't be made active.

The user's authorization will remain withdrawn until the lock is removed at the enterprise management console, and the end user has entered a special unlock code at the device.

GDErrorPasswordChangeRequired 

Password change required. The user's security password has expired, or no longer complies with enterprise security policy. In effect, the user's authorization to access the application data has been withdrawn. This code notifies the application that the BlackBerry Dynamics password change screen is active and therefore the application's own user interface mustn't be made active.

GDErrorSecurityError 

Internal error: Secure store couldn't be unlocked.

GDErrorProgrammaticActivationNoNetwork 

Programmatic activation connection failed. It wasn't possible to establish a data connection for programmatic activation. This code notifies the application that programmatic activation didn't succeed this time, but might succeed if another attempt is made. See under authorize (GDiOS) .

GDErrorProgrammaticActivationCredentialsFailed 

Programmatic activation credentials failed. The credential values supplied for programmatic activation were rejected during some stage of activation processing. This code notifies the application that programmatic activation didn't succeed this time, but could succeed if another attempt is made with different credential values. See under authorize (GDiOS) .

GDErrorProgrammaticActivationServerCommsFailed 

Programmatic activation server communication failed. A data connection was established but communication with a required server resource subsequently failed. This code notifies the application that programmatic activation didn't succeed this time, but could succeed if another attempt is made later. See under authorize (GDiOS) .

It is recommended not to make repeated attempts at programmatic activation with no delay between attempts. Instead, an exponential back-off algorithm should be used to calculate a delay.

GDErrorProgrammaticActivationAppIntegrityFailed 

Programmatic activation application integrity check failed. App integrity check failure occurred during programmatic activation processing.

\ Check your app configuration and make sure the device is compatible with your enterprise policies.

GDErrorProgrammaticActivationUnknown 

Programmatic activation failed. A general failure occurred during programmatic activation processing. This code notifies the application that programmatic activation didn't succeed this time, but could succeed if another attempt is made. See under authorize (GDiOS) .