User Privacy

The Tapdaq SDK will forward these settings to each network which is initialised each they are set (either at initialisation or mid session).

These values should be set when they are known, whether they are Yes or No, if left in their default Unknown state then each network will handle the user in their own way, therefore it is best to provide as much data as possible.

GDPR

For users within the EU.

Set values on initialisation

Objective-C
Swift
TDProperties *properties = [[TDProperties alloc] init];
properties.userSubjectToGDPR = TDSubjectToGDPRYes; //GDPR declare if user is in EU
properties.isConsentGiven = YES; //GDPR consent must be obtained from the user
˜
[[Tapdaq sharedSession] setApplicationId:@"YOUR_APP_ID"
                               clientKey:@"YOUR_CLIENT_KEY"
                              properties:properties];

Updating Values

Consent can be updated mid session as well as at initialisation, it can be set and unset.

Objective-C
Swift
[Tapdaq sharedSession].userSubjectToGDPR = TDSubjectToGDPRYes;
[Tapdaq sharedSession].isConsentGiven = YES;

Mintegral

If you are using Mintegral you must carefully set these values or you will not receive ads.

For users outside the EU userSubjectToGDPR must be set to TDSubjectToGDPRNo.

For users inside the EU userSubjectToGDPR must be TDSubjectToGDPRYes with isConsentGiven also YES to receive ads.

Please do not leave isConsentGiven in an TDSubjectToGDPRUnknown state or you will not receive ads.

Age Restriction

We will pass the AgeRestrictedUser flag to the following networks:

  • AdMob:
    • Passed when user is not subject to GDPR
  • AppLovin:
    • Always passed
  • Facebook Audience Network:
    • Always passed
  • Tapjoy:
    • Always passed
  • YouAppi:
    • Always passed

The AgeRestrictedUser flag can be used to help you comply with COPPA and other applicable age restrictions.

Set values on initialisation

Objective-C
Swift
TDProperties *properties = [[TDProperties alloc] init];
properties.isAgeRestrictedUser = YES;

[[Tapdaq sharedSession] setApplicationId:@"YOUR_APP_ID"
                               clientKey:@"YOUR_CLIENT_KEY"
                              properties:properties];

Updating Values

Objective-C
Swift
[Tapdaq sharedSession].isAgeRestrictedUser = YES;

AdMob Targeting

As of Tapdaq SDK 7.0.0, an AdMob content rating will be forwarded for every ad request to AdMob, to do this, set the value in the config either before Tapdaq has initialised or after like so:

Objective-C
Swift
// Before Tapdaq initialises
TDProperties *properties = [[TDProperties alloc] init];

properties.adMobContentRating = @"MA"// G, PG, T, MA
properties.isAgeRestrictedUser = YES; // GDPR/COPPA

[[Tapdaq sharedSession] setApplicationId:@"YOUR_APP_ID"
                               clientKey:@"YOUR_CLIENT_KEY"
                              properties:properties];

// After Tapdaq initialises
Tapdaq.sharedSession.adMobContentRating = @"MA"; // G, PG, T, MA
Tapdaq.sharedSession.isAgeRestrictedUser = YES; // GDPR/COPPA

The tag_for_under_age_of_consent flag will be sent to AdMob if the user is subject to GDPR and AgeRestrictedUser is set. The ChildDirectedTreatment COPPA flag will be sent if user is not known to be subject to GDPR and AgeRestrictedUser is set. Read more about AdMob Targeting here.

UserId

Developers may set a UserId within Tapdaq, this will be used for Server-side Rewards and can optionally be forwarded to other networks. It should be set on initialisation and can be changed at any point during a session.

Objective-C
Swift
// Before Tapdaq initialises
TDProperties *properties = [[TDProperties alloc] init];

properties.forwardUserId = YES;
properties.userId = @"USER_ID";

[[Tapdaq sharedSession] setApplicationId:@"YOUR_APP_ID"
                               clientKey:@"YOUR_CLIENT_KEY"
                              properties:properties];
Objective-C
Swift
// After Tapdaq initialised
[Tapdaq sharedSession].forwardUserId = YES;
[Tapdaq sharedSession].userId = @"USER_ID";

ForwardUserId must be set to true before setting the UserId during a session in order to pass the UserId to networks

Need help?

If you are having any problems integrating, feel free to contact us on [email protected] and we will be more than happy to help.