Skip to main content

Privacy Regulations

In order to protect the interests and privacy of our developers and your users, and conduct business in compliance with relevant laws, regulations, policies and standards。


Step 1 、Check the current region#

  • Android V8.4.0.1 began to support
  • Call this method before initializing the SDK
TradPlusSdk.checkCurrentArea(this,new TPPrivacyManager.OnPrivacyRegionListener() {
@Override
public void onSuccess(boolean isEu, boolean isCn, boolean isCalifornia) {
// After obtaining the relevant regional configuration, set the relevant privacy API, and then initialize the SDK
if(isEu) {
// Indicates that it is the European region, set GDPR
}
if(isCalifornia){
// Indicates that it is the California region of the United States, set CCPA
}
}
@Override
public void onFailed() {
// Generally, the query fails due to network problems. Developers need to judge the region by themselves, and then set the privacy
}
});

Step 2、CCPA#

It mainly introduces how to set CCPA in the Android project: :

The California Consumer Privacy Act (CCPA) is the first comprehensive privacy law in the United States. Signed into law in late June 2018, it provides California consumers with a variety of privacy rights. Businesses subject to the CCPA will have several obligations to these consumers, including disclosure of information, consumer rights similar to the European Union's General Data Protection Regulation (GDPR), the right to "opt out" of certain data transfers, and the right to "opt-in" not The Rights of Adults.


When to set#

  • Developers below V8.4.0.1 have to judge the region by themselves,If they are in the California region of the United States, they need to set CCPA and then initialize the SDK.
  • V8.4.0.1 and above, you can call the `checkCurrentArea()` method to determine the region(see above to view the current area introduction), set CCPA when the monitor callback isCalifornia returns true, and then initialize the SDK.

TP API#

PlatformMethodNote
AndroidTradPlusSdk.setCCPADoNotSell(context, boolean);false California users do not report data ;true accept reported data
Unity3dAndroidTradPlus.setCCPADoNotSell(boolean); false California users do not report data ;true accept reported data

Meta Settings CCPA#

  • Starting from V6.9.4 API, according to the requirements of Meta (Facebook), developers need to set CCPA by themselves.

  • If you need to integrate Meta, make sure to comply with Meta CCPA regulations
  • Please refer to data-processing-options

  • Please note that you need to set Facebook's Limited Data Use flag before initializing the TradPlus SDK.

Sample code :

import com.facebook.ads.AdSettings;
...
// If you do not want to enable Limited Data Use (LDU) mode, pass SetDataProcessingOptions() an empty string array:
AdSettings.setDataProcessingOptions( new String[] {} );
// To enable LDU for users and specify user geography, call SetDataProcessingOptions() in a form like this:
AdSettings.setDataProcessingOptions( new String[] {"LDU"}, 0, 0 );

Step 3、COPPA#

It mainly introduces how to set COPPA in the Android project:

The Children's Online Privacy Protection Act mainly targets the online collection of personal information of children under the age of 13.

The protection law stipulates that website administrators should abide by privacy rules, must explain when to ask for consent from children's parents and provide verifiable methods, and website administrators must protect children's online privacy and safety, including restricting sales to children under the age of 13.


  • Must be called before initializing TradPlus SDK
  • If the application is for adults, you can upload it directly false

API#

PlatformMethodNote
AndroidTradPlusSdk.setCOPPAIsAgeRestrictedUser(context, boolean);false show that it is not a child ;true show that it is a child
Unity3dAndroid TradPlus.setCOPPAIsAgeRestrictedUser(boolean);false show that it is not a child ;true show that it is a child

Start.io#

  • TPV9.3.0.1 and above versions support Start.io to configure Coppa in the AndroidManifest.xml file

  • The app is aimed at a mixed audience (that is, for everyone, including children and families), is a mixed user profile true, is not a mixed user profile false

<meta-data
android:name="com.startapp.sdk.MIXED_AUDIENCE"
android:value="true"/>
  • Indicates whether a particular end user is a child, is a child user pass true, is not a child user pass false
<meta-data
android:name="com.startapp.sdk.CHILD_DIRECTED"
android:value="true"/>

Step 4、GDPR#

It mainly introduces how to set GDPR in the Android project:

The General Data Protection Regulation (GDPR) is a regulation of data protection and privacy law for all citizens of the European Union (EU) and European Economic Area (EEA). We have added a privacy permission setting in the SDK. Please check the configuration below and complete the SDK integration.

On May 25, 2018, after the GDPR came into effect, Twitter, WhatsApp and other social apps updated their user terms, saying that they would prohibit teenagers under the age of 16 from using these apps. This is because there are strict regulations on the protection of children's personal information in the GDPR.

Android platform settings GDPR#

1、Use the TradPlus authorization page to set up GDPR#

  • Called before initializing the TradPlus SDK
  • Below V8.4.0.1, you need to call the TradPlusSdk.isEUTraffic(context) method to determine whether you are in the EU region, and only call showUploadDataNotifyDialog to set GDPR if you are in the EU region.
  • For V8.4.0.1 and above, you can call the checkCurrentArea() method to determine the area(see above to view the current area introduction), and set GDPR when the monitoring callback isEu returns true.

Sample code (V6.X ~ V8.4.0.1)

// Determine whether the user has already selected, return true to indicate that the selection has been made, and there is no need to pop up the window again
if(!TradPlusSdk.isFirstShowGDPR(this)) {
// Set GDPR listener
TradPlusSdk.setGDPRListener(new TradPlusSdk.TPGDPRListener() {
@Override
public void success(String msg) {
// get the country successfully
// Determine whether it is an EU country, if it is not an EU country, ignore it directly
if(TradPlusSdk.isEUTraffic(context)) {
// It is an EU country, call the TradPlus authorization page, pop up a pop-up window, let the user set the GDPR level by himself
TradPlusSdk.showUploadDataNotifyDialog(this, new TradPlusSdk.TPGDPRAuthListener() {
@Override
public void onAuthResult(int level) {
// Get the setting result and make a record, true indicates that the user has made a selection
TradPlusSdk.setIsFirstShowGDPR(context,true);
}
}, Const.URL.GDPR_URL); // Const.URL.GDPR_URL is the authorization page defined by TradPlus
}
}
@Override
public void failed(String errormsg) {
// Unknown country, call the TradPlus authorization page, pop up a pop-up window, let the user set the GDPR level by himself
TradPlusSdk.showUploadDataNotifyDialog(this, new TradPlusSdk.TPGDPRAuthListener() {
@Override
public void onAuthResult(int level) {
// Get the setting result and make a record, true indicates that the user has made a selection
TradPlusSdk.setIsFirstShowGDPR(context,true);
}
}, Const.URL.GDPR_URL);
}
});
}

2、Customize the pop-up window to set GDPR#

In addition to using the TradPlus authorization page to set the GDPR level, developers can also set the GDPR through a custom pop-up window. You need to refer to the above API settings. The steps are as follows:

  • 1、Before initializing TradPlus SDK, call to set GDPR monitoring;
  • 2、 Set the GDPR monitoring success callback to determine whether you are in the EU region; if you are in the EU region, call your customized pop-up window and record the user's choice;;
  • 3、Set the GDPR monitoring failed callback to call your custom pop-up window and record the user's choice;

3、API Introduction#

(1)Set up GDPR Listener#
TradPlusSdk.setGDPRListener(new TradPlusSdk.TPGDPRListener() {
@Override
public void success(String msg) {
//Successfully get the country
}
@Override
public void failed(String errormsg) {
//unknown country
}
});
(3)Other APIs#
NotemethodRemark
Are you in the EUTradPlusSdk.isEUTraffic(context);Need to be called in setting GDPR Listener success callback
Set GDPR levelTradPlusSdk.setGDPRDataCollection(context,level);Parameter two: PERSONALIZED device data is allowed to be reported; NONPERSONALIZED device data is not allowed to be reported
Get the GDPR ratingTradPlusSdk.getGDPRDataCollection(context);Return value 0 means agree, 1 means disagree
Is it the first time the user selectsTradPlusSdk.isFirstShowGDPR(context);By default, false no selection has been made; true indicates that the user has selected
Record the user's choiceTradPlusSdk.setIsFirstShowGDPR(context,true);true Indicates that the user has made a choice and needs to onAuthResult be called in the callback for setting the GDPR level on the authorization page
Set up GDPR childrenTradPlusSdk.setGDPRChild(context,boolean);true Indicates that the user is a child

Unity3DAndroid platform settings GDPR#

1、Use the TradPlus authorization page to set up GDPR#

  • Called before initializing the TradPlus SDK
  • Below V8.4.0.1, you need to call the TradPlusSdk.isEUTraffic(context) method to determine whether you are in the EU region, and only call showUploadDataNotifyDialog to set GDPR if you are in the EU region.
  • For V8.4.0.1 and above, you can call the checkCurrentArea() method to determine the area(see above to view the current area introduction), and set GDPR when the monitoring callback isEu returns true.

Sample code (V6.X ~ V8.4.0.1)

//Set up GDPR Listener
TradPlus.setGDPRListener();
public void GDPRSuccess(string appId) {
// get the country successfully
bool isEUTraffic = TradPlus.isEUTraffic();
bool isFirstShow = TradPlus.isFirstShow();
// Determine if you are in the EU and the user has not selected
if (isEUTraffic && !isFirstShow) {
// It is an EU country, call the TradPlus authorization page, pop up a pop-up window, let the user set the GDPR level by himself
// The method has helped the developer to record the user's choice
TradPlus.showUploadDataNotifyDialog();
}
}
public void GDPRFailed(string appId) {
// Unknown country, call the TradPlus authorization page, pop up a pop-up window, let the user set the GDPR level by himself
// The method has helped the developer to record the user's choice
TradPlus.showUploadDataNotifyDialog();
}

2、Customize the pop-up window to set GDPR#

In addition to using the TradPlus authorization page to set the GDPR level, developers can also set the GDPR through a custom pop-up window. You need to refer to the above API settings. The steps are as follows:

  • 1、Before initializing TradPlus SDK, call to set GDPR listener;;
  • 2、Set the GDPR monitoring success callback to determine whether you are in the EU region; if you are in the EU region, call your customized pop-up window and record the user's choice;
  • 3、Set the GDPR monitoring failed callback to call your custom pop-up window and record the user's choice;;

3、API Introduction#

(1) Set up GDPR Listener#
/*
* Called before initializing TradPlus SDK
* In OnGDPRSuccessEvent, determine whether it is an EU country
*/
TradPlus.setGDPRListener();
TradPlusManager.OnGDPRSuccessEvent += OnGDPRSuccessEvent; //Get the country successfully
TradPlusManager.OnGDPRFailedEvent += OnGDPRFailedEvent; //unknown country
(2)Call the authorization page to set GDPR#
TradPlus.showUploadDataNotifyDialog();//Use the URL provided by TradPlus
(3)Other APIs#
  • Other version API
NoteMethodRemark
Are you in the EU`TradPlus.isEUTraffic();Need to be called in setting GDPR Listener success callback
Set GDPR levelTradPlus.setGDPRDataCollection(int);0 The device data is allowed to be reported; 1 The device data is not allowed to be reported
Get the GDPR ratingTradPlus.getGDPRDataCollection();Return value 0 means agree, 1 means disagree
Is it the first time the user selectsTradPlus.isFirstShow();By default, false no selection has been made; true indicates that the user has selected
Record the user's choiceTradPlus.setFirstShow(true);true Indicates that the user has made a choice, and the method provided by TradPlus TradPlus.showUploadDataNotifyDialog() has been called by the developer
Set up GDPR childrenTradPlus.setGDPRChild(boolean);true Indicates that the user is a child, only supported by Admob's Support

Step 5、How to set up DFF#

  • If the application needs to comply with the Google Play family policy requirements, the following code needs to be set. For more information, please refer to the Google Designed For Families (DFF)policy
  • Set the location where the earliest ad request is initiated, or both can be set (for example: access to IronSource incentives and interstitial screens, the type of loadAd request that is initiated first is set first)
TradPlus versionadvertising platform
V8.7.0.1Inmobi、ChartBoost、AdColony、IronSource、TapJoy
Map<String, Object> mLocalExtras = new HashMap<>();
mLocalExtras.put("families_policy", true);
rewardAd.setCustomParams(mLocalExtras);
rewardAd.loadAd();

Step 6、How to set LGPD#

Lei Geral de Proteção de Dados (LGPD)  is a comprehensive Brazilian data protection law, effective September 18, 2020, that provides individuals with broader data rights and increases compliance responsibilities for organizations. At its core, the LGPD is about giving Brazilian residents greater control over their personal data and giving national regulators new powers to impose hefty fines on organizations that violate the law, with rights and protections similar to those afforded to European residents by the GDPR.

  • Must be called before initializing TradPlus SDK
  • Only need to call in Brazil, do not set in non-Brazilian regions
NoteMethodRemark
Set LGPD levelTradPlusSdk.setLGPDConsent(Context context, int consent)Parameter 2: 0, device data is allowed to be reported; 1, device data is not allowed to be reported
Get LGPD ratingTradPlusSdk.getLGPDConsent(Context context)Return value 0 means agree, 1 means disagree

Step 7、Google Content Rating#

  • V9.4.0.1 began to support
  • Called before requesting an ad, taking a rewarded video as an example:
//digital content tags all audiences
private String mAdContentRating = RequestConfiguration.MAX_AD_CONTENT_RATING_G;
...
Map<String, Object> mLocalExtras = new HashMap<>();
mLocalExtras.put("max_ad_content_rating", mAdContentRating);
rewardAd.setCustomParams(mLocalExtras);
// Called before requesting an ad
rewardAd.loadAd();
  • digital content label
digital content labelillustrate
RequestConfiguration.MAX_AD_CONTENT_RATING_Gall audiences
RequestConfiguration.MAX_AD_CONTENT_RATING_Tteenager
RequestConfiguration.MAX_AD_CONTENT_RATING_MAaldult
RequestConfiguration.MAX_AD_CONTENT_RATING_PGNeed to be accompanied by parents to watch