Device Fingerprinting
This documentation explains how to create and submit a device fingerprint for a users mobile device.
Introduction
Per the Bazaarvoice Authenticity Policy, you must send a device fingerprint attached to each submission. If you fail to send a device fingerprint with your submission, Bazaarvoice may take any action deemed necessary in Bazaarvoice’s sole discretion to protect the integrity of the network. Such actions may include but are not limited to: rejection of your content, halting syndication of your content on the Bazaarvoice network, revocation of your API key, or revocation of your API license.
Bazaarvoice has partnered with iovation, an industry leader in device reputation technology, to ensure authenticity in consumer-generated content. Bazaarvoice Mobile SDKs for Android and iOS support the ability to include the iovation fingerprint along with Conversations API Submission requests, using the fingerPrint parameter. Contact your Bazaarvoice support representative to request an evaluation of the iovation integration.
Refer to the Device Fingerprinting page of the Bazaarvoice Developer Portal for technical details about creating and submitting device fingerprinting information from iovation with consumer-generated content. Refer to the Mobile Device Fingerprinting page of the Developer Portal for mobile-specific details about integrating with iovation.
Downloading the iovation SDK
- Download iovation-android-sdk-5.2.1.zip from here: iovation Mobile SDK for Android.
- Unzip iovation-android-sdk-5.2.1.zip.
- Depending on your IDE, do one of the following:
- In Maven, deploy the AAR file to your local Maven repository, using maven-deploy. For more information, see Guide to installing 3rd party JARs.
- If you are using Gradle, add the fraudforce-lib-release-5.2.1.aar file to your application module's libs directory. - Then, edit the build.gradle file in order to add the libs directory as a flat-file repository to the buildscript and repository sections. This makes the fraudforce-lib-release-5.2.1.aar file accessible to Gradle.
buildscript {
repositories {
flatDir {
dirs 'libs'
}
}
}
repositories {
flatDir {
dirs 'libs'
}
}
- Also in the application module's build.gradle file, make sure that fraudforce-lib-release-5.2.1 is included as a dependency:
dependencies {
...
implementation(name:'fraudforce-lib-release-5.2.1', ext:'aar')
}
- Alternatively, you can include the dependency without exposing your libs folder as a repository by declaring it in the module's build.gradle file as follows:
dependencies {
...
implementation files('libs/fraudforce-lib-release-5.2.1.aar')
}
- Save the build.gradle file.
- If you are not already using Java 8 in your project, please include the following code into your application's 'build.gradle' file.
android {
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
- Add disclaimer for version 8.16.0 and below use version 4.3.2 or below or else you can call the fingerprint directly without using bvauthiovation module.
Android integration
After you integrate the iovation aar
, register an instance of the IovationFingerprint
class with the BVConversationsClient.Builder
. All requests will automatically have a fingerprint applied to them.
IovationFingerprint fpProvider = new IovationFingerprint(BVSDK.getInstance());
BVConversationsClient client = new BVConversationsClient.Builder(BVSDK.getInstance())
.fingerprintProvider(fpProvider)
.build(); // Use one instance
ReviewSubmission submission = new ReviewSubmission.Builder(Action.Submit, productId)
// other submission params here
.build();
client.prepareCall(submission).loadAsync(new ConversationsCallback<ReviewSubmissionResponse>() {
@Override
public void onSuccess(ReviewSubmissionResponse response) {
// Handle repsonse
}
@Override
public void onFailure(BazaarException exception) {
// Failure, handle error appropriately
}
});
Updated about 2 months ago