Skip to main content

Google UMP 使用指南

一、集成 UMP#

通过CocoPods集成#
pod 'GoogleUserMessagingPlatform'
根据UMP接入指南进行集成#

示例代码

#import <TradPlusAds/TradPlusAds.h>
#import <UserMessagingPlatform/UserMessagingPlatform.h>
//通过UMP授权
__weak typeof(self) weakSelf = self;
[UMPConsentInformation.sharedInstance
requestConsentInfoUpdateWithParameters:nil
completionHandler:^(NSError *_Nullable requestConsentError) {
if (requestConsentError == nil) {
NSLog(@"Error: %@", requestConsentError.localizedDescription);
[UMPConsentForm loadAndPresentIfRequiredFromViewController:nil
completionHandler:^(NSError * _Nullable error) {
[weakSelf startTradPlusSDK];
}];
}
else
{
[weakSelf startTradPlusSDK];
}
}];
if(UMPConsentInformation.sharedInstance.canRequestAds)
{
[self startTradPlusSDK];
}
- (void)startTradPlusSDK {
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
//初始化
[TradPlus initSDK:@"TradPlus后台的应用对应appid" completionBlock:^(NSError *error){}];
//加载广告
});
}

二、在Admob后台开启UMP#

1.访问Admob后台登录Admob账号,在 AdMob 中添加你的应用(如果您尚未添加应用)

2.点击“隐私权和消息”

3.点击“欧洲法规-管理”

4.点击“创建消息”,等待GDPR消息页面打开

5.在GDPR消息页面中点击右上角“选择应用”,选择您想要显示GDPR信息的应用

6.选择您想要显示消息的语言

7.在“定位”栏目中选择“须遵守 GDPR 的国家/地区(EEA 和 UK)”选项

Tips:推荐以下样式配置可以提高用户同意GDPR概率:#

三、指定的广告合作伙伴#

默认情况下,Google 可能不会在您的 GDPR 消息中显示您项目中集成的所有广告平台。如果您未能包含这些广告平台,可能会对您的广告收入产生不利影响。请按照本部分中的步骤操作,确保您项目中集成的所有广告平台都出现在 GDPR 消息中。

1. 在Admob后台“隐私权和消息”中点击“GDPR设置”,打开GDPR设置#

2. 点击“检查您的广告合作伙伴”部分下的编辑图标#

3. 选择 自行指定的广告合作伙伴 按钮#

4. 参考下方表格,勾选您项目中集成的所有广告平台#
TradPlus Network Google Name
MetaFacebook
AppLovinAppLovin Corp
IronSourceironSource Mobile
ChartboostChartboost
UnityAdsUnity Ads
OguryOgury Ltd
AdColonyAdColony
Start.ioStartAppStart.io Inc
VerveVerve Group
LiftoffLiftoff
FyberFyber
MintegralMobvista/Mintegral
AmazonAmazon
InMobiInMobi Choice
SmaatoSmaato
YandexYandex
BigoBIGOAds
5. 点击“确认”#
6. 点击GDPR设置页面最底部的“保存”按钮#

注意:如果有弹出“重新向所有符合条件的用户征求意见?”弹窗时需要选择“重新提示”

四、TradPlus 相关设置#

1. v10.6.0之前版本#

开发者需要在UMP授权完成后调用GDRP设置API

iOS相关代码如下

//集成UMP并进行授权调用
//授权完成后,开发者需根据授权结果,向TradPlusSDK设置GDPR状态
//参考代码如下
NSInteger gdprApplies = [[NSUserDefaults standardUserDefaults] integerForKey:@"IABTCF_gdprApplies"];
if(gdprApplies == 1)//当前地区适用GDPR
{
NSString *purposeConsents = [[NSUserDefaults standardUserDefaults] stringForKey:@"IABTCF_PurposeConsents"];
if(purposeConsents != nil)
{
BOOL consent = [purposeConsents containsString:@"1"];
[TradPlus setGDPRDataCollection:consent];
}
}

2. v10.6.0及之后版本#

大部份支持TCF2.0的三方广告源 TradPlus SDK 会根据平台情况自动进行适配处理

1.三方广告源自行获取的,则不进行任何设置操作 ( Amazon, AdColony, Admob, GoogleAdManger, GoogleIMA, Applovin, InMobi, Mintegral, Smaato, Verve, Yandex, Helium )

2.通过三方SDK API 传入 TCF v2 consent strings ( Fyber, Ogury )

3.根据 Global Vendor List (GVL),TCF v2 string 授权情况后向三方SDK设置授权状态 ( Liftoff, Start.io )

4.通过UMP Additional Consent (AC) Mode 来判断授权情况后向三方SDK设置授权状态 ( IronSource, UnityAds, Chartboost, startapp )

5.根据三方规则判断后向三方SDK设置授权状态 ( Pangle, Bigo )

6.根据Meta的用户协议相关功能需要开发自行判断后设置

在授权流程结束后,开发者需要根据授权情况来决定是否开启Meta的受限数据使用 (LDU) 模式。 Meta的受限数据使用 (LDU) 模式 相关文档: Meta for Developers documentation

如使用UMP可参考如下代码:

//授权完成后
NSInteger gdprApplies = [[NSUserDefaults standardUserDefaults] integerForKey:@"IABTCF_gdprApplies"];
if(gdprApplies == 1)//当前地区适用GDPR
{
NSString *addtlConsent = [[NSUserDefaults standardUserDefaults] stringForKey:@"IABTCF_AddtlConsent"];
BOOL consent = ([addtlConsent rangeOfString:@"89"].location != NSNotFound);
//根据授权状态,依照Meta文档进行设置
}
else
{
//根据Meta文档进行设置
}