我在我的免费应用程序中使用 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 帐户中选择一个选项,但我们仍然需要执行上述步骤:
请提供您的想法。
谢谢
获取运行时代码错误:在“+”中:没有将 Integer 隐式转换为 String TypeError
num = 5;
puts ("this is number: " + num);
Run Code Online (Sandbox Code Playgroud)
实际结果:
运行时代码错误:在“+”中:没有隐式转换
Integer为StringTypeError
预期结果 - 我应该看到打印的声明 -
这是数字:5