SDK changelog

View the changes to the Oracle CX Advertising SDKs (formally know as the Oracle Data Cloud) including:

  • New features

  • Significant recent changes

  • Platform notices

The changelog applies to both the Android SDK and iOS SDK. Samples are provided in Swift and Objective-C.

Oracle CX Advertising SDK version 4.0.0

Oracle CX Advertising SDK rewritten in Swift

The Oracle CX Advertising iOS SDK (formally know as the Oracle Data Cloud iOS SDK) was rewritten in Swift.

New onDataPosted() callback method

  • Added a new onDataPosted() callback method which provides information data then previous method which only use to return success or failure status.

  • Server response is returned as JSON object in new onDataPosted() method.

New API methods for profile creation on hashed email

The changes apply to both the Android SDK and iOS SDK. Samples are provided in Swift and Objective-C.

Swift

put(email:String?, key:String?, value:String?)

Objective-C

(void)putWithEmail:(NSString * _Nullable)email key:(NSString * _Nullable)key value:(NSString * _Nullable)value

Swift

putAll(email:String?, map:[String:[String]]?)

Objective-C

(void)putAllWithEmail:(NSString * _Nullable)email map:(NSDictionary<NSString *, NSArray<NSString *> *> * _Nullable)map

New API methods for profile creation on unique customer IDs

Swift

put(customerIdKey:String?, customerIdValue:String?, key:String?, value:String?)

Objective-C

(void)putWithCustomerIdKey:(NSString * _Nullable)customerIdKey customerIdValue:(NSString * _Nullable)customerIdValue key:(NSString * _Nullable)key value:(NSString * _Nullable)value

Swift

putAll(customerIdKey:String?, customerIdValue:String?, map:[String:[String]]?)

Objective-C

(void)putAllWithCustomerIdKey:(NSString * _Nullable)customerIdKey customerIdValue:(NSString * _Nullable)customerIdValue map:(NSDictionary<NSString *, NSArray<NSString *> *> * _Nullable)map

Changes to setting properties

Approach for setting the properties has changed. You can still set it in the previous way, but that's been deprecated. What is encouraged now is to set it via ORAAdvDataContainer class and oracle.json. For more information, see the iOS version 4.0.0 instructions or the Android version 4.0.0 instructions.

Deprecated features

Deprecate methods

The following methods have been deprecated. The changes apply to both the Android SDK and iOS SDK. Samples are provided in Swift and Objective-C.

Swift

init(siteId:String, appVersion: String, idfa: String, devMode: Bool)

Objective-C

initDirectWithSiteId:(NSString * _Nonnull)siteId withAppVersion:(NSString * _Nonnull)appVersion withIdfa:(NSString * _Nonnull)idfa withDevMode:(BOOL)devMode

Swift

init(siteId:String, appVersion: String, devMode: Bool)

Objective-C

initDirectAutoIdfaEnabledWithSiteId:(NSString * _Nonnull)siteId withAppVersion:(NSString * _Nonnull)appVersion withDevMode:(BOOL)devMode

Swift

setViewController(view:UIViewControler)

Objective-C

setViewControler:(UIViewController *)View

Swift

update(withKey key: String, addValue value: String)

Objective-C

updateWithKey:(NSString * _Nonnull)key andValue:(NSString * _Nonnull)value

Swift

update(withDictionary dictionary: [String:String])

Objective-C

updateWithDictionary:(NSDictionary<NSString *, NSArray<NSString *> *> * _Nonnull)dictionary

Swift

optInPreference: Bool

Objective-C

setOptInPreference:(BOOL)optIn

Deprecate property setters

The following property setters have been deprecated. The changes apply to both the Android SDK and iOS SDK. Samples are provided in Swift and Objective-C.

  • Set developer mode (YES or NO)

    Swift

    devMode: Bool

    Objective-C

    @property (nonatomic) BOOL devMode;

  • Enable SDK request logging (YES or NO)

    Swift

    isLoggingEnabled: Bool

    Objective-C

    @property (nonatomic) BOOL isLoggingEnabled;

  • Set the calling application version number

    Swift

    appVersion: Bool

    Objective-C

    @property (nonatomic) NSString *appVersion;

  • Initialization via WebView - the SDK does not have initialization via WebView. In a future release, these properties will be removed.

    Swift

    viewController: UIViewController

    Objective-C

    @property (nonatomic) NSString *viewController;

  • Use HTTPS - the SDK will always use HTTPS, regardless of the value passed in this property. In a future release, these properties will be removed.

    Swift

    useHttps: UIViewController

    Objective-C

    @property (nonatomic) NSString useHttps;

Learn more

Oracle CX Advertising iOS SDK

Oracle CX Advertising Android SDK