我在我的免费应用程序中使用 Flutter 和 google_mobile_ads 包。作为使用 Admob 的应用程序发布者,我需要实施 UMP SDK 以符合使用 Google 认证的同意管理平台 (CMP) 的要求。
我需要更新我的应用程序代码才能遵守。
谷歌表示征求用户同意:
如果出现以下情况,则需要征得同意:
实施步骤:
如果用户不在欧盟或英国,则无需在应用程序启动时填写同意书
如果用户位于欧盟或英国,请出示同意书(用于 Cookie 和分析以及使用个性化广告与非个性化广告)。在这种情况下,用户在不接受同意书的情况下无法继续。
如果用户位于欧盟或英国且未满 18 岁,则需出示同意书(Cookie 和分析以及使用个性化广告与非个性化广告)。在这种情况下,用户在不接受同意书的情况下无法继续。
有4个问题:
谷歌广告都使用cookies进行分析。此问题的答案应始终为“是”,否则同意将被拒绝,并且应用程序不应启动。你同意?
我们如何使用代码确定用户位置?
我们如何确定用户年龄?
用户无法控制他们是否使用个性化广告或非个性化广告,因为这取决于应用程序的 admob 帐户设置。我认为没有办法使用代码检查 admob 设置。
有说明如何在 Java/Kotlin 中实现 UMP SDK
有软件包:user_messaging_platform(16个月大)
我们可以创建插件(在 Flutter 中使用 Kotlin) - 请参阅此处的问题:stackoverflow.com/questions/76815370/using-kotlin-code-in-flutter-via-methodchannel
创建这样的插件太复杂了。
另一种选择是专门创建 Flutter 包(仅限 Dart 代码)来解决这个我觉得太复杂的合规性问题。
我们也可以在 Admob 帐户中选择一个选项,但我们仍然需要执行上述步骤:
请提供您的想法。
谢谢
我这样测试
ConsentDebugSettings debugSettings = ConsentDebugSettings(
debugGeography: DebugGeography.debugGeographyEea,
testIdentifiers: ['my id']);
void loadForm() {
ConsentForm.loadConsentForm(
(ConsentForm consentForm) async {
// Present the form
},
(FormError formError) {
},
);
}
final params = ConsentRequestParameters(
consentDebugSettings: debugSettings);
ConsentInformation.instance.requestConsentInfoUpdate(
params,
() async {
if (await ConsentInformation.instance.isConsentFormAvailable()) {
loadForm();
}
},
(FormError error) {
// Handle the error
},
);
Run Code Online (Sandbox Code Playgroud)
但不显示弹出同意。我已经在 admob 上创建了 grpd 同意书
| 归档时间: |
|
| 查看次数: |
1711 次 |
| 最近记录: |