iOS

The following is a list of commonly asked questions and their answers.

Does the Bazaarvoice Mobile SDK use IDFA?

Yes, the SDK uses IDFA for Product Recommendations and BV Pixel modules. The SDK checks whether the user has "Limit Ad Tracking" enabled, and respects the option if enabled.

If you use the Product Recommendations or the BV Pixel modules, you must submit applications via iTunes Connect, letting Apple know that the app uses the IDFA.

Is Swift 2.3 supported by the SDK?

The SDK is written entirely in Objective-C, so there should not be any issue with any version of Swift you are writing against, or will write against. As long as you are using the minimum support version of XCode, happy Swifting!

Upgrading to BVSDK 7.0 (Deprecations)

Setting your API keys in code is now deprecated. You will need to generate your configuration files using your own API keys, include the configuration files in your app target, and initialize the BVSDK. Visit the Installation and Configuration for more information.

Your in-code configuration. (The old way)

BVSDKManager.shared().clientId = "YOUR_CLIENT_ID"  
BVSDKManager.shared().staging = true;  
BVSDKManager.shared().apiKeyCurations = "YOUR_CURATIONS_KEY"  
BVSDKManager.shared().apiKeyConversations = "YOUR_CONVERSATIONS_KEY"

Configuration using the generator. (The new way)

Once you've entered a valid configuration you will be given the option to download your configuration files. This will download bvsdk_config_prod.json and/or bvsdk_config_staging .json depending on API keys entered. These files will need to be added to your app target.

Finally in your AppDelegate, call the BVSDK configuration method with your desired environment: (production/staging).

BVSDKManager.configure(.prod) //Configure with Prod API keys
//BVSDKManager.configure(.staging) //Configure with Staging API keys

Your in-code configuration. (The old way)

[[BVSDKManager sharedManager] setClientId:@"YOUR_CLIENT_ID"];  
[[BVSDKManager sharedManager] setApiKeyCurations:@"YOUR_CURATIONS_KEY"];  
[[BVSDKManager sharedManager] setApiKeyConversations:@"YOUR_CONVERSATIONS_KEY"];  
[[BVSDKManager sharedManager] setStaging:YES];  // Set to NO for production!

Configuration using the generator. (The new way)

Once you've entered a valid configuration you will be given the option to download your configuration files. This will download bvsdk_config_prod.json and/or bvsdk_config_staging .json depending on API keys entered. These files will need to be added to your app target.

Finally in your app delegate call BVSDK configuration method with your desired environment (production/staging).

[BVSDKManager configure:BVConfigurationTypeProd]; //Configure with Prod API keys
//[BVSDKManager configure:BVConfigurationTypeStaging]; //Configure with Staging API keys

Does the Bazaarvoice Mobile SDK use any 3rd-Party Source Code?

No, the SDK is entirely based on the Cocoa Frameworks for iOS.

Are the terms and conditions available through the SDK?

No, currently it is not available through the SDK, however you should be able to access the content by logging into your configuration console, then selecting Edit for the configuration you want terms & conditions for. Then you can access them from here.

My question wasn't answered. How can I get help?

Please contact us following the instructions at the Getting Help page.