ios - iOS 14 requestTrackingAuthorization 状态总是被拒绝
问题描述
我正在尝试为 Admob ios 14 准备我的应用程序,我阅读了这篇文章:
https://developers.google.com/admob/ios/ios14
我做了他们写下的一切,但是当我运行这个命令时:
func requestIDFA() {
if #available(iOS 14, *) {
ATTrackingManager.requestTrackingAuthorization(completionHandler: { [self] status in
loadAdMob()
})
} else {
loadAdMob()
}
}
status 总是被拒绝,并且没有弹出消息显示。
我同意:
- 允许应用请求跟踪
- 个性化广告
设置应用程序中的标志。
我也尝试删除应用程序,但仍然是同样的问题,知道是什么问题吗?
编辑:跟踪设置屏幕:
解决方案
最终对我有用的是“常规->重置->重置所有内容和设置”。
然后当我安装我的应用程序时出现提示,我可以选择允许跟踪。之后我的应用程序出现在设置中,这是以前没有的,点击它有一个禁用/启用跟踪的选项。该应用程序现在也出现在隐私/跟踪中,这是以前没有的。
我通过删除应用程序并重新安装进一步测试,它再次显示允许跟踪的消息。
我认为 ATT 无法按预期工作的唯一原因是所有在 iOS 14.4 / ATT 之前安装的应用程序都被假定设置为“不允许跟踪”,但操作系统错过了将应用程序添加到设置页面,所以没有改变它的方式。虽然,这并不能解释为什么应用程序的卸载/重新安装仍然不起作用。
总之,创建一个新的应用程序可能有效(未经测试),但恢复出厂设置确实有效。
推荐阅读
- xml - XSLT获取多个属性中单个属性的值到相同的字段值
- graphql - 与 micronaut-function-aws-api-proxy 一起使用时,来自 micronaut-graphql 的无效转义 json 响应
- python - 如何通过一些三元组数据创建 RDF 文件?
- c++ - C ++:传递数组for循环时没有打印值?
- javascript - 如何解决碰撞响应问题?
- laravel - 如何在子文件夹域中配置 Laravel 6?
- ios - 在我的 Xcode 框架中调试我的代码的问题
- html - 在 Material-UI 中调暗/禁用 div 的最佳方法?
- react-native - React Native 与 @react-native-community/google-signin :程序类型已经存在:co.apptailor.googlesignin.PendingAuthRecovery
- mysql - 如何创建一个在 MySQL 中始终具有默认值的自动生成列?