Inherits from NSObject
Conforms to VDARImageReceiver
Declared in VDARSDKController.h

Overview

Manage the local Context DB and dispatch events when modes are detected / lost.

Warning: No instance of VDARSDKController should be created manually. Use only the [VDARSDKController startSDK:withLicenseKey:] method to create a shared instance and to use it.

Tasks

Other Methods

Code recognition

Notifications

Geo Points

Beacons

  • – isContainingBeacons

    Return YES if the app contain beacons, NO otherwise

  • – getNearbyBeacons

    Return the list of context IDs of nearby beacons.

  • – setEnableNearbyRequirementDialog:

    Enables/disables the nearby requirement dialog asking for bluetooth/localisation requirement If enabled, a dialog will ask the user to enabled the required settings for bluetooth and localisation when the SDK start to scan for beacons. By default, this is enabled.

  • – getNearbyStatus

    Return localization authorization status and bluetooth status

Bookmarks

  •   enableBookmarks

    Defines whether the application should display a button for adding a bookmark when some content is displayed (content with web view {@link VDARModalWebView}).

    property
  •   bookmarks

    The list of context IDs that have been bookmarked so far.

    property
  • – addBookmark:

    Add a bookmark for the specified context

  • – removeBookmark:

    Remove the bookmark for the specified context

  • – isBookmarked:

    Return YES if the context identified by contextId is already bookmarked, NO otherwise

Initialization methods

Other methods

  • – setDeviceOrientation:

    Set the current device orientation. This is necessery to be able to recognize images when the device is not in portrait mode.

  • – releaseMemory:

    Release the memory used by not-detected-but-loaded contexts. Level is for future use.

  • – save

    Save the contexts and DB to disk.

  • – openURLInInternalBrowser:

    Open the given URL in the internal browser embedded in the SDK (instead of opening up the device browser and switiching applications).

  • – previewContext:completionBlock:

    The preview of the passed context is shown. The context image has to be loaded from the network, therefore the completion block can be used in order to know when the fetch is completed and the preview is started.

  • – unloadAll

    This method will force the system to stop and hide anything displayed in the AR view such as context, content or annotations.

  • + VDARSDKVersion

    Return a string describing the VDARSDK version.

  • + isCapableOfRunningVDARSDK

    Return YES if the current device can run the Vidinoti AR SDK.

  • + platformType

    Return the device type on which the SDK is running.

  • – setVisionContext:ignored:

    Disables or enables a vision context. If the vision context is ignored, it won’t be recognized, even if it is present locally on the device. By default, all vision contexts are enabled (i.e. not ignored)

  • – removeContext:

    Unloads and removes the context.

  • – disableContext:

    Disables the context. The context remains local but won’t be detected (its sensors are unregistered)

  • – enableContext:

    Enables the context after being disabled (see disableContext).

  • – disableContexts

    Disables all the contexts. The context remains on the device but their sensors are unregistered.

  • – enableContextsWithTags:

    Enables all contexts belonging to specific tags. Ensure that the mapping Context <–> Tag exists otherwise no context will be enabled. The mapping Context-Tag must be retrieved using the VDARRemoteController

  • – setLicenseKey:

    Allows changing the license key when the SDK is already running. The new license key will be validated against the server.

  • – forceLanguage:

    Sets the language of the SDK interface. By default, the SDK uses the phone language. If this method is called, it uses the given language instead. Call this method with null, for cancelling the forced language.

Properties

afterLoadingQueue

The Context DB is loaded asynchronously at startup and therefore might not be available immediatly. This can known when a given function (add or remove) returns an error or by checking the appropriate property. In order to execute those operation when the DB is loaded, the operations can be added to the queue represented by this property.

@property (nonatomic, readonly) NSOperationQueue *afterLoadingQueue

Discussion

The Context DB is loaded asynchronously at startup and therefore might not be available immediatly. This can known when a given function (add or remove) returns an error or by checking the appropriate property. In order to execute those operation when the DB is loaded, the operations can be added to the queue represented by this property.

Once the DB is loaded, this property is not longer valid (set to nil).

Declared In

VDARSDKController.h

availableContextIDs

The id of all available contexts.

@property (nonatomic, readonly) NSArray *availableContextIDs

Availability

Version 5.1.0

Discussion

The id of all available contexts.

An available context is defined as a context that is triggered by some sensors (i.e. a beacon) but that its content is not (yet) displayed on screen and require user approval to display it on screen.

Declared In

VDARSDKController.h

bookmarks

The list of context IDs that have been bookmarked so far.

@property (nonatomic, readonly) NSArray<NSString*> *bookmarks

Availability

Version 5.2.5

Discussion

The list of context IDs that have been bookmarked so far.

Declared In

VDARSDKController.h

cloudRecognitionLanguage

Defines the language that must be used for the online recognition. If it is not set, the device language must be used.

@property (nonatomic, retain) NSString *cloudRecognitionLanguage

Availability

Version 6.??

Discussion

Defines the language that must be used for the online recognition. If it is not set, the device language must be used.

Declared In

VDARSDKController.h

contextIDs

The id of all contexts

@property (nonatomic, readonly) NSArray *contextIDs

Availability

Version 5.0.0

Discussion

The id of all contexts

Declared In

VDARSDKController.h

dbLoaded

Defines whether or not the local Context DB is loaded or not. Any call related to the DB will fail if this property is not set to YES.

@property (nonatomic, readonly) BOOL dbLoaded

Discussion

Defines whether or not the local Context DB is loaded or not. Any call related to the DB will fail if this property is not set to YES.

Declared In

VDARSDKController.h

detectionDelegates

Context detection delegates.

@property (nonatomic, readonly) NSMutableArray<NSObject<VDARSDKControllerDelegate> *> *detectionDelegates

Discussion

Context detection delegates.

Declared In

VDARSDKController.h

deviceUUID

The user device UUID

@property (nonatomic, readonly) NSString *deviceUUID

Availability

Version 5.2.0

Discussion

The user device UUID

Declared In

VDARSDKController.h

displayModelDebugOverlay

Display the debug overlay to locate the context properly even if the context has no annotation.

@property (nonatomic) BOOL displayModelDebugOverlay

Return Value

YES if the debug overlay is rendered, NO otherwise.

Availability

Version 2.0.0b2

Discussion

Display the debug overlay to locate the context properly even if the context has no annotation.

Declared In

VDARSDKController.h

enableBookmarks

Defines whether the application should display a button for adding a bookmark when some content is displayed (content with web view {@link VDARModalWebView}).

@property (nonatomic, getter=isBookmarksEnabled) BOOL enableBookmarks

Availability

Version 5.2.5

Discussion

Defines whether the application should display a button for adding a bookmark when some content is displayed (content with web view {@link VDARModalWebView}).

For content within the AR view, it is up to the application developper to implement it.

Declared In

VDARSDKController.h

enableCodesRecognition

When set to YES, code recognition is also performed while trying to recognize a VDARContext.

@property (nonatomic) BOOL enableCodesRecognition

Availability

Version 1.1.0beta r230

Discussion

When set to YES, code recognition is also performed while trying to recognize a VDARContext.

Code recognition allows you to recognize different type of codes (1-D codes such as a barcodes or 2D codes such as QR Codes). Those codes can contains any information they can support. When a code is detected, the codesDetected: method of all the VDARSDKController delegates is called with the detected codes represented as VDARCode objects. You can then use the returned objects to read the codes data and act upon it.

You can use the QR Code generator available in Vidinoti AR Manager under My Contents –> Code Generator to generate your own QR Codes.

Several different special QR Codes are understood by the system. Those special QR codes actually contain a special URL. To be understood correctly, this special URL has to be of the following format:

vdarsdk://<command>/<parameter 1>/.../<parameter n>

The following commands are supported:

  1. Context Download QR Code (command = mdl)

This special QR Code can trigger the download (a.k.a pre-fetch) of a VDARContext so that the VDARContext can be recognized afterhand. Those special QR codes should contains an URL of the following format:

vdarsdk://mdl/<your Context Remote ID>

For example, if you have a Context with the remote ID fsgdg4t3few, then you can create a QR code with this URL vdarsdk://mdl/fsgdg4t3few to autmatically trigger the download of the corresponding context.

  1. Tag synchrnoization request (command = tsc)

This special QR Code can trigger the synchronization request (a.k.a pre-fetch) of several VDARContext corresponding to a given or multiple tags. Those special QR codes should contains an URL of the following format:

vdarsdk://tsc/<tag 1>/<tag 2>/.../<tag n>

For example, if you want to synchronize the local AR DB with all the contexts having the tags hello and bye, then you can create a QR code with this URL vdarsdk://tsc/hello/bye to autmatically trigger the download of the corresponding contexts.

Note that the code recognition is automatically disabled when a VDARContext has been recognized and when it is tracked

You can customize which codes can be recognized with the recognizableCodes property.

Declared In

VDARSDKController.h

enableDefaultARViewOpeningMechanism

When a content needing the AR view to be opened is triggered, usually due to a beacon event, the app needs to open the AR view. By default, the SDK takes care of that. It opens the AR view if not already opened, or display the content directly if the AR view is open.

@property (nonatomic) BOOL enableDefaultARViewOpeningMechanism

Availability

Version 5.1.0

Discussion

When a content needing the AR view to be opened is triggered, usually due to a beacon event, the app needs to open the AR view. By default, the SDK takes care of that. It opens the AR view if not already opened, or display the content directly if the AR view is open.

You can prevent this functionnality by setting the flag to NO and implementing your own logic by listening to the VDARNotificationARViewRequested notification. An AR should be open as soon as the notification VDARNotificationARViewRequested is triggered.

By default, it is set to YES.

Declared In

VDARSDKController.h

enableDefaultNotificationController

When a notification arrives in a state where the application is open, the SDK will handle it and display an alert with the notification. You can disable this behaviour by setting this flag to NO. By default, it is set to YES.

@property (nonatomic) BOOL enableDefaultNotificationController

Availability

Version 5.1.0

Discussion

When a notification arrives in a state where the application is open, the SDK will handle it and display an alert with the notification. You can disable this behaviour by setting this flag to NO. By default, it is set to YES.

Declared In

VDARSDKController.h

enableNotifications

Enable push notifications support in the SDK.

@property (nonatomic, getter=isNotificationsEnabled) BOOL enableNotifications

Availability

Version 3.1.0

Discussion

Enable push notifications support in the SDK.

If set to YES, the application delegate has to forward the correct calls to VDARSDKController. This can be done this way in your AppDelegate:

- (void)application:(UIApplication *)app didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)devToken {
    [[VDARSDKController sharedInstance] application:app didRegisterForRemoteNotificationsWithDeviceToken:devToken];
}

- (void)application:(UIApplication *)app didFailToRegisterForRemoteNotificationsWithError:(NSError *)err {
    [[VDARSDKController sharedInstance] application:app didFailToRegisterForRemoteNotificationsWithError:err];
}

- (void)application:(UIApplication *)app didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult result))handler {
    [[VDARSDKController sharedInstance] application:app didReceiveRemoteNotification:userInfo];
    handler(UIBackgroundFetchResultNoData);
}

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // ...Your initialization code...
    // Enables the push notifications
    [VDARSDKController sharedInstance].enableNotifications=YES;
    // Forward the push notification if the application was not running when the notification has been received
    [[VDARSDKController sharedInstance] application:application didReceiveRemoteNotification:launchOptions];
    return YES;
}

By default, the value is NO.

Declared In

VDARSDKController.h

enablePendingNotifications

When a beacon notification arrives in a state where the application is open, the SDK will handle the notification and display it in a popup window. When the notification list is presented by default the SDK will show the nearby Beacons/GPS To show the list of the pending notification instead set this flag to YES. By default, it is set to NO.

@property (nonatomic) BOOL enablePendingNotifications

Availability

Version 5.3.0

Discussion

When a beacon notification arrives in a state where the application is open, the SDK will handle the notification and display it in a popup window. When the notification list is presented by default the SDK will show the nearby Beacons/GPS To show the list of the pending notification instead set this flag to YES. By default, it is set to NO.

Declared In

VDARSDKController.h

imageSender

The image sender which will send frame to the system. This is needed starting from version 2.0.11b

@property (nonatomic, retain) NSObject<VDARImageSender> *imageSender

Availability

Version 2.0.11b

Discussion

The image sender which will send frame to the system. This is needed starting from version 2.0.11b

Declared In

VDARSDKController.h

internalBrowserClassName

Set the class to be instancied when the internal browser should be opened.

@property (nonatomic, copy) NSString *internalBrowserClassName

Availability

Version 2.1.1

Discussion

Set the class to be instancied when the internal browser should be opened.

This is set by default to nil, which corresponds to the default internal browser provided by the SDK.

Declared In

VDARSDKController.h

modelsDBDirectory

The Context DB directory where all the data is stored.

@property (nonatomic, readonly) NSString *modelsDBDirectory

Discussion

The Context DB directory where all the data is stored.

Declared In

VDARSDKController.h

pendingNotifications

The list of all notifications that are pending.

@property (nonatomic, readonly) NSArray *pendingNotifications

Availability

Version 5.1.0

Discussion

The list of all notifications that are pending.

Declared In

VDARSDKController.h

preventNotifications

Prevent spurious notifications to be displayed.

@property (nonatomic) BOOL preventNotifications

Availability

Version 5.1.0

Discussion

Prevent spurious notifications to be displayed.

When set to YES, the notification list will never appear. Instead, the notification will be buffered and will be displayed as soon as the flag goes back to NO.

Declared In

VDARSDKController.h

recognizableCodes

Select which types of codes should be recognized by the system.

@property (nonatomic) VDARCodeType recognizableCodes

Discussion

Select which types of codes should be recognized by the system.

This variable should be an OR'ed mask of the constant defined in VDARCodeType. The mask can be built with the following values:

  • VDAR_CODE_TYPE_EAN2 = GS1 2-digit add-on
  • VDAR_CODE_TYPE_EAN5 = GS1 5-digit add-on
  • VDAR_CODE_TYPE_EAN8 = EAN-8
  • VDAR_CODE_TYPE_UPCE = UPC-E
  • VDAR_CODE_TYPE_ISBN10 = ISBN-10 (from EAN-13).
  • VDAR_CODE_TYPE_UPCA = UPC-A
  • VDAR_CODE_TYPE_EAN13 = EAN-13
  • VDAR_CODE_TYPE_ISBN13 = ISBN-13 (from EAN-13).
  • VDAR_CODE_TYPE_COMPOSITE = EAN/UPC composite
  • VDAR_CODE_TYPE_I25 = Interleaved 2 of 5.
  • VDAR_CODE_TYPE_CODE39 = Code 39.
  • VDAR_CODE_TYPE_QRCODE = QR Code.

By default, the enabled codes when enableCodesRecognition is set to YES are QR Codes.

Warning: The more codes you enable, the slower the overall recognition will be.

Declared In

VDARSDKController.h

remoteAPIKey

The Remote API key generated by the AR Manager website.

@property (nonatomic, readonly) NSString *remoteAPIKey

Discussion

The Remote API key generated by the AR Manager website.

Declared In

VDARSDKController.h

sensorDelegates

Sensor detection delegates.

@property (nonatomic, readonly) NSMutableArray<NSObject<VDARSDKSensorDelegate> *> *sensorDelegates

Discussion

Sensor detection delegates.

Declared In

VDARSDKController.h

Class Methods

VDARSDKVersion

Return a string describing the VDARSDK version.

+ (NSString *)VDARSDKVersion

Return Value

A string uniquely identifying the version of this VDARSDK instance

Availability

Version 1.0.1rc1 r160

Discussion

Return a string describing the VDARSDK version.

Declared In

VDARSDKController.h

isCapableOfRunningVDARSDK

Return YES if the current device can run the Vidinoti AR SDK.

+ (BOOL)isCapableOfRunningVDARSDK

Return Value

YES if the device is supported, NO otherwise.

Availability

Version 2.0.0GM

Discussion

Return YES if the current device can run the Vidinoti AR SDK.

You should call this method before attempting to start the VDARSDKController, otherwise it might result in crashes.

Declared In

VDARSDKController.h

platformType

Return the device type on which the SDK is running.

+ (UIDevicePlatform)platformType

Return Value

The type of device represented as a UIDevicePlatform on which the SDK is running.

Availability

Version 2.1.2

Discussion

Return the device type on which the SDK is running.

Declared In

VDARSDKController.h

sharedInstance

Return the shared instance of the VDARSDKController.

+ (instancetype)sharedInstance

Return Value

the shared instance of the VDARSDKController

Availability

5.0.0

Discussion

Return the shared instance of the VDARSDKController.

Warning: The VDARSDKController should have been already started using [VDARSDKController startSDK:withLicenseKey:] method.

Declared In

VDARSDKController.h

startSDK:withLicenseKey:

Start the shared instance of the VDARSDKController. Calling it twice will return nil.

+ (instancetype)startSDK:(NSString *)modelDBDir withLicenseKey:(NSString *)licenseKey

Parameters

modelDBDir

The directory in which all the contexts and the context DB will be stored. Should be a user-writable directory (it will be created if it does not yet exists)

licenseKey

The API License key generate by Vidinoti AR Manager. Get it from https://armanager.vidinoti.com by logging in into your account.

Return Value

The VDARSDKController instance if the initilization happened correctly, nil otherwise.

Availability

Version 3.2.0

Discussion

Start the shared instance of the VDARSDKController. Calling it twice will return nil.

Declared In

VDARSDKController.h

Instance Methods

addBookmark:

Add a bookmark for the specified context

- (void)addBookmark:(NSString *)contextId

Parameters

contextId

The ID of the Context to add a bookmark for

Availability

Version 5.2.5

Discussion

Add a bookmark for the specified context

Declared In

VDARSDKController.h

application:didFailToRegisterForRemoteNotificationsWithError:

Tell the PixLive SDK that the remote notification request has failed. The app delegate has to call this method when such an event is received.

- (void)application:(UIApplication *)app didFailToRegisterForRemoteNotificationsWithError:(NSError *)err

Parameters

app

The app triggering the event

err

The error explaining the failure

Availability

Version 3.1.0

Discussion

Tell the PixLive SDK that the remote notification request has failed. The app delegate has to call this method when such an event is received.

Declared In

VDARSDKController.h

application:didReceiveRemoteNotification:

Tell the PixLive SDK that a remote notification has been received. The app delegate has to call this method when such an event is received.

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo

Parameters

application

The app triggering the event

userInfo

The notification content. It is mandatory to pass this parameter.

Availability

Version 3.1.0

Discussion

Tell the PixLive SDK that a remote notification has been received. The app delegate has to call this method when such an event is received.

Warning: If your app delegate implements the application:didReceiveRemoteNotification:fetchCompletionHandler: method, you should call [VDARSDKController application:didReceiveRemoteNotification:] within this method instead in the fetchCompletion less one.

Declared In

VDARSDKController.h

application:didRegisterForRemoteNotificationsWithDeviceToken:

Tell the PixLive SDK that the remote notification request has succeeded. The app delegate has to call this method when such an event is received.

- (void)application:(UIApplication *)app didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)devToken

Parameters

app

The app triggering the event

devToken

The token for notification registration

Availability

Version 3.1.0

Discussion

Tell the PixLive SDK that the remote notification request has succeeded. The app delegate has to call this method when such an event is received.

Declared In

VDARSDKController.h

computeDistanceBetweenGPSPointsOfLat1:lon1:lat2:lon2:

The distance bewteen to GPS points in meter

- (float)computeDistanceBetweenGPSPointsOfLat1:(float)lat1 lon1:(float)lon1 lat2:(float)lat2 lon2:(float)lon2

Parameters

lat1

latitude of point 1

lon1

longitude of point 1

lat2

latitude of point 2

lon2

longitude of point 2

Availability

Version 5.3.0

Discussion

The distance bewteen to GPS points in meter

Declared In

VDARSDKController.h

disableContext:

Disables the context. The context remains local but won’t be detected (its sensors are unregistered)

- (void)disableContext:(NSString *)contextId

Parameters

contextId

The id of context to disable.

Availability

Version 6.5.12

Discussion

Disables the context. The context remains local but won’t be detected (its sensors are unregistered)

Declared In

VDARSDKController.h

disableContexts

Disables all the contexts. The context remains on the device but their sensors are unregistered.

- (void)disableContexts

Availability

Version 6.5.12

Discussion

Disables all the contexts. The context remains on the device but their sensors are unregistered.

Declared In

VDARSDKController.h

enableContext:

Enables the context after being disabled (see disableContext).

- (void)enableContext:(NSString *)contextId

Parameters

contextId

The id of context to enable.

Availability

Version 6.5.12

Discussion

Enables the context after being disabled (see disableContext).

Declared In

VDARSDKController.h

enableContextsWithTags:

Enables all contexts belonging to specific tags. Ensure that the mapping Context <–> Tag exists otherwise no context will be enabled. The mapping Context-Tag must be retrieved using the VDARRemoteController

- (void)enableContextsWithTags:(NSArray *)tags

Parameters

tags

a list of tag names. The context to enable must have all of the given tags (logical AND)

Discussion

Enables all contexts belonging to specific tags. Ensure that the mapping Context <–> Tag exists otherwise no context will be enabled. The mapping Context-Tag must be retrieved using the VDARRemoteController

Declared In

VDARSDKController.h

forceLanguage:

Sets the language of the SDK interface. By default, the SDK uses the phone language. If this method is called, it uses the given language instead. Call this method with null, for cancelling the forced language.

- (void)forceLanguage:(NSString *)languageCode

Parameters

languageCode

the language code (2 lowercase characters, e.g. “fr”)

Discussion

Sets the language of the SDK interface. By default, the SDK uses the phone language. If this method is called, it uses the given language instead. Call this method with null, for cancelling the forced language.

Declared In

VDARSDKController.h

getContext:

Get the context of a given id

- (VDARContext *)getContext:(NSString *)remoteID

Parameters

remoteID

remote ID of the context

Return Value

VDARContext

Availability

Version 5.0.0

Discussion

Get the context of a given id

Declared In

VDARSDKController.h

getGPSPointsInBoundingBoxOfMinLat:minLon:maxLat:maxLon:

The list of GPS points in BoundingBox

- (NSArray<VDARGPSPoint*> *)getGPSPointsInBoundingBoxOfMinLat:(float)minLat minLon:(float)minLon maxLat:(float)maxLat maxLon:(float)maxLon

Parameters

minLat

latitude of the lower left corner

minLon

longitude of the lower left corner

maxLat

latitude of the uper right corner

maxLon

longitude of the uper right corner

Availability

Version 5.3.0

Discussion

The list of GPS points in BoundingBox

Declared In

VDARSDKController.h

getNearbyBeacons

Return the list of context IDs of nearby beacons.

- (NSArray<NSString*> *)getNearbyBeacons

Availability

Version 5.3.0

Discussion

Return the list of context IDs of nearby beacons.

Declared In

VDARSDKController.h

getNearbyGPSPointsfromLat:lon:

The list of nearby GPS points

- (NSArray<VDARGPSPoint*> *)getNearbyGPSPointsfromLat:(float)myLat lon:(float)myLon

Parameters

myLat

current latitude

myLon

current longitude

Availability

Version 5.3.0

Discussion

The list of nearby GPS points

Declared In

VDARSDKController.h

getNearbyStatus

Return localization authorization status and bluetooth status

- (NSDictionary *)getNearbyStatus

Return Value

NSDictinary with keys @“authorizationStatus” (@“unknow”,@“disabled”,@“enabled”,@“enabled_in_use”) and @“bluetoothStatus” (@“unknow”,@“disabled”,@“unsupported”,@“enabled”)

Availability

Version 5.3.0

Discussion

Return localization authorization status and bluetooth status

Declared In

VDARSDKController.h

isBookmarked:

Return YES if the context identified by contextId is already bookmarked, NO otherwise

- (BOOL)isBookmarked:(NSString *)contextId

Return Value

YES if already bookmarked, NO otherwise

Availability

Version 5.2.5

Discussion

Return YES if the context identified by contextId is already bookmarked, NO otherwise

Declared In

VDARSDKController.h

isContainingBeacons

Return YES if the app contain beacons, NO otherwise

- (BOOL)isContainingBeacons

Return Value

YES if the app contain beacons, NO otherwise

Availability

Version 6.0.0

Discussion

Return YES if the app contain beacons, NO otherwise

Declared In

VDARSDKController.h

isContainingGPSPoints

Return YES if the app contain GPS points, NO otherwise

- (BOOL)isContainingGPSPoints

Return Value

YES if the app contain GPS points, NO otherwise

Availability

Version 5.3.0

Discussion

Return YES if the app contain GPS points, NO otherwise

Declared In

VDARSDKController.h

loadContext:

Load the context of a given id

- (BOOL)loadContext:(NSString *)remoteID

Parameters

remoteID

remote ID of the context

Return Value

YES if the context is successfully loaded

Availability

Version 5.0.0

Discussion

Load the context of a given id

Declared In

VDARSDKController.h

openURLInInternalBrowser:

Open the given URL in the internal browser embedded in the SDK (instead of opening up the device browser and switiching applications).

- (void)openURLInInternalBrowser:(NSURL *)url

Parameters

url

The URL to open in the internal browser

Availability

Version 2.0.2

Discussion

Open the given URL in the internal browser embedded in the SDK (instead of opening up the device browser and switiching applications).

Declared In

VDARSDKController.h

presentLastNotification

Present the last notification to the user

- (void)presentLastNotification

Availability

Version 5.3.0

Discussion

Present the last notification to the user

Declared In

VDARSDKController.h

presentNearbyList

Present the in-SDK notification list to the user with nearby GPS points

- (void)presentNearbyList

Availability

Version 5.3.0

Discussion

Present the in-SDK notification list to the user with nearby GPS points

Declared In

VDARSDKController.h

presentNearbyListForLat:lon:

Present the in-SDK notification list to the user with nearby GPS points

- (void)presentNearbyListForLat:(float)myLat lon:(float)myLon

Availability

Version 5.3.0

Discussion

Present the in-SDK notification list to the user with nearby GPS points

Declared In

VDARSDKController.h

presentNotificationsList

Present the in-SDK notification list to the user

- (void)presentNotificationsList

Availability

Version 5.1.0

Discussion

Present the in-SDK notification list to the user

Declared In

VDARSDKController.h

previewContext:completionBlock:

The preview of the passed context is shown. The context image has to be loaded from the network, therefore the completion block can be used in order to know when the fetch is completed and the preview is started.

- (BOOL)previewContext:(NSString *)contextId completionBlock:(void ( ^ ) ( BOOL err ))completion

Parameters

contextId

The id of context to preview or nil to stop the currently playing preview.

completion

The block that will be called when the preview is started. Can be nil.

Return Value

YES in case of succcess, NO otherwise.

Availability

Version 5.0

Discussion

The preview of the passed context is shown. The context image has to be loaded from the network, therefore the completion block can be used in order to know when the fetch is completed and the preview is started.

Pass nil for the context argument to stop the preview.

Declared In

VDARSDKController.h

refreshNearbyListForLat:lon:

Present the in-SDK notification list to the user with nearby GPS points

- (void)refreshNearbyListForLat:(float)myLat lon:(float)myLon

Availability

Version 5.3.0

Discussion

Present the in-SDK notification list to the user with nearby GPS points

Declared In

VDARSDKController.h

releaseMemory:

Release the memory used by not-detected-but-loaded contexts. Level is for future use.

- (void)releaseMemory:(int)level

Parameters

level

Pass 2 to this parameter. Reserved for future use.

Availability

Version 1.0beta r85

Discussion

Release the memory used by not-detected-but-loaded contexts. Level is for future use.

Declared In

VDARSDKController.h

removeBookmark:

Remove the bookmark for the specified context

- (void)removeBookmark:(NSString *)contextId

Parameters

contextId

The ID of the Context to remove the bookmark for

Availability

Version 5.2.5

Discussion

Remove the bookmark for the specified context

Declared In

VDARSDKController.h

removeContext:

Unloads and removes the context.

- (void)removeContext:(NSString *)contextId

Parameters

contextId

The id of context to remove.

Availability

Version 6.1.5

Discussion

Unloads and removes the context.

Declared In

VDARSDKController.h

save

Save the contexts and DB to disk.

- (void)save

Availability

Version 1.0beta r85

Discussion

Save the contexts and DB to disk.

This method generate a VDARNotificationContextListChanged notification if changes have been made to the DB and saved to disk.

Declared In

VDARSDKController.h

setDeviceOrientation:

Set the current device orientation. This is necessery to be able to recognize images when the device is not in portrait mode.

- (void)setDeviceOrientation:(UIDeviceOrientation)d

Parameters

d

The orientation of the device.

Availability

Version 2.0.0beta r251

Discussion

Set the current device orientation. This is necessery to be able to recognize images when the device is not in portrait mode.

Declared In

VDARSDKController.h

setEnableNearbyRequirementDialog:

Enables/disables the nearby requirement dialog asking for bluetooth/localisation requirement If enabled, a dialog will ask the user to enabled the required settings for bluetooth and localisation when the SDK start to scan for beacons. By default, this is enabled.

- (void)setEnableNearbyRequirementDialog:(BOOL)nearbyRequirementDialogEnabled

Parameters

{BOOL}nearbyRequirementDialogEnabled

true for enabling the dialog, false otherwise

Availability

Version 6.0.0

Discussion

Enables/disables the nearby requirement dialog asking for bluetooth/localisation requirement If enabled, a dialog will ask the user to enabled the required settings for bluetooth and localisation when the SDK start to scan for beacons. By default, this is enabled.

Declared In

VDARSDKController.h

setEnablePendingNotifications:

enable pending notifications

- (void)setEnablePendingNotifications:(BOOL)pendingNotificationsEnabled

Parameters

{BOOL}pendingNotificationsEnabled

true to enable pending notification mode

Availability

Version 5.3.0

Discussion

enable pending notifications

Declared In

VDARSDKController.h

setLicenseKey:

Allows changing the license key when the SDK is already running. The new license key will be validated against the server.

- (void)setLicenseKey:(NSString *)licenseKey

Parameters

licenseKey

the new license key.

Discussion

Allows changing the license key when the SDK is already running. The new license key will be validated against the server.

Declared In

VDARSDKController.h

setVisionContext:ignored:

Disables or enables a vision context. If the vision context is ignored, it won’t be recognized, even if it is present locally on the device. By default, all vision contexts are enabled (i.e. not ignored)

- (void)setVisionContext:(NSString *)contextId ignored:(BOOL)ignored

Availability

Version 6.1.4

Discussion

Disables or enables a vision context. If the vision context is ignored, it won’t be recognized, even if it is present locally on the device. By default, all vision contexts are enabled (i.e. not ignored)

Declared In

VDARSDKController.h

unloadAll

This method will force the system to stop and hide anything displayed in the AR view such as context, content or annotations.

- (void)unloadAll

Availability

Version 5.2.5

Discussion

This method will force the system to stop and hide anything displayed in the AR view such as context, content or annotations.

Declared In

VDARSDKController.h

unloadAllNonRootContexts

Unload all the contexts in memory

- (BOOL)unloadAllNonRootContexts

Return Value

Yes if the contexts are successfully unloaded

Availability

Version 5.0.0

Discussion

Unload all the contexts in memory

Declared In

VDARSDKController.h