Files
ft/Client/LocalPackages/TapjoySDK/Runtime/TJPrivacyPolicy.cs
2026-06-29 21:18:33 +08:00

117 lines
4.9 KiB
C#
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
using UnityEngine;
using TapjoyUnity.Internal;
using System;
namespace TapjoyUnity {
public sealed class TJPrivacyPolicy {
private TJPrivacyPolicy() {
ApiBinding.Instance.GetPrivacyPolicy();
}
/**
* @brief Returns the TJPrivacyPolicy instance for calling methods to set GDPR, User's consent, below consent age ,and US Privacy policy flags
*/
public static TJPrivacyPolicy GetPrivacyPolicy() {
return new TJPrivacyPolicy();
}
/**
* @brief This can be used by the integrating App to indicate if the user falls in any of the GDPR applicable countries
* (European Economic Area). The value should be set to YES when User (Subject) is applicable to GDPR regulations
* and NO when User is not applicable to GDPR regulations. In the absence of this call, Tapjoy server makes the
* determination of GDPR applicability.
*
* @param gdprApplicable
* YES if GDPR applies to this user, NO otherwise
*/
public void SetSubjectToGDPR(TJStatus gdprApplicable) {
ApiBinding.Instance.SetSubjectToGDPR(gdprApplicable);
}
/**
* @brief Returns configured GDPR value.
* The value should be returned to YES when User (Subject) is applicable to GDPR regulations
* and NO when User is not applicable to GDPR regulations.
*
* @return YES if GDPR applies to this user, NO otherwise
*/
public TJStatus GetSubjectToGDPR() {
return (TJStatus)ApiBinding.Instance.GetSubjectToGDPR();
}
/**
* @brief This is used for sending User's consent to behavioral advertising such as in the context of GDPR
* The consent value can be YES (User has not provided consent), NO (User has provided consent) or a daisybit string as suggested in IAB's Transparency and Consent Framework
* @param consent
* The user consent value
*/
public void SetUserConsent(TJStatus consent) {
ApiBinding.Instance.SetUserConsent(consent);
}
/**
* @brief Returns user's consent to behavioral advertising such as in the context of GDPR
* The consent value can be NO (User has not provided consent), YES (User has provided consent) or a daisybit string as suggested in IAB's Transparency and Consent Framework
* @return The user consent value
*/
public TJStatus GetUserConsent()
{
return (TJStatus)ApiBinding.Instance.GetUserConsent();
}
/**
* @brief In the US, the Childrens Online Privacy Protection Act (COPPA) imposes certain requirements on operators of online services that (a) have actual knowledge that the connected
* user is a child under 13 years of age, or (b) operate services (including apps) that are directed to children under 13.
*
* Similarly, the GDPR imposes certain requirements in connection with data subjects who are below the applicable local minimum age for online consent (ranging from 13 to 16,
* as established by each member state).
*
* For applications that are not directed towards children under 13 years of age, but still have a minority share of users known to be under the applicable minimum age,
* utilize this method to access Tapjoys monetization capability. This method will set ad_tracking_enabled to false for Tapjoy which only shows the user contextual ads. No ad tracking will be done on this user.
*
* @param belowConsentAge YES if below consent age (COPPA) applies to this user, NO otherwise
*/
public void SetBelowConsentAge (TJStatus belowConsentAge)
{
ApiBinding.Instance.SetBelowConsentAge(belowConsentAge);
}
/**
* @brief Returns the consent age (COPPA) flag applied to the user.
*
* @return YES if below consent age (COPPA) applies to this user, NO otherwise
*/
public TJStatus GetBelowConsentAge ()
{
return (TJStatus)ApiBinding.Instance.GetBelowConsentAge();
}
/**
* @brief This is used for sending US Privacy value to behavioral advertising such as in the context of GDPR
* The value can be in IAB's US Privacy String Format consists of specification version to encode the string in number, explicit notice or opportunity to opt out in enum, opt-out sale in enum, LSPA covered transaction in enum .
* eg. "1YNN" where 1 is char in string for the version, Y = YES, N = No, - = Not Applicable
* See: IAB suggested US Privacy String Format : https://github.com/InteractiveAdvertisingBureau/USPrivacy/blob/master/CCPA/Version%201.0/US%20Privacy%20String.md#us-privacy-string-format
*
* @param privacyPolicy
* The us privacy value string
*/
public void SetUSPrivacy (string privacyPolicy)
{
ApiBinding.Instance.SetUSPrivacy (privacyPolicy);
}
/**
* @brief Returns US Privacy value to behavioral advertising such as in the context of GDPR
*
* @return The us privacy value string
*/
public string GetUSPrivacy ()
{
return ApiBinding.Instance.GetUSPrivacy ();
}
}
}