uni-app NSUserTrackingUsageDescription 配置方法

发布于 1周前 作者 caililin 来自 Uni-App

uni-app NSUserTrackingUsageDescription 配置方法
The app uses the AppTrackingTransparency framework, but we are unable to locate the App Tracking Transparency permission request when reviewed on iOS 18.2.1.
iOS 审核提示 18.2.1 追踪权限没有弹出,配置了 IFDA 广告标识,低版本都可以弹出。

Image


1 回复

在uni-app中配置NSUserTrackingUsageDescription主要是为了满足iOS 14及以上版本对应用跟踪用户隐私的新要求。当应用尝试访问用户的设备广告标识符(IDFA)时,必须在应用的Info.plist文件中添加NSUserTrackingUsageDescription键,并提供一个向用户解释为何需要访问该信息的字符串。

由于uni-app是基于Vue.js的多端开发框架,原生iOS的配置需要通过修改原生项目文件来实现。以下是如何在uni-app项目中配置NSUserTrackingUsageDescription的步骤和示例代码:

步骤 1: 修改iOS原生项目配置

  1. 找到原生iOS项目

    • 在HBuilderX中打开你的uni-app项目。
    • 点击顶部菜单的“发行” -> “原生App-云打包” -> “查看/修改App云端打包配置”。
    • 下载或打开已有的iOS原生项目(Xcode工程)。
  2. 编辑Info.plist文件

    • 打开Xcode工程,找到Info.plist文件。
    • 右键点击Info.plist文件,选择“Open As” -> “Source Code”以文本模式打开。
  3. 添加NSUserTrackingUsageDescription

    • <dict>标签内添加以下代码:
<key>NSUserTrackingUsageDescription</key>
<string>我们需要访问您的广告标识符来改善我们的广告体验</string>

这里的<string>标签内的内容是向用户展示的提示信息,你可以根据实际需求进行修改。

步骤 2: 编译并运行应用

  1. 保存并关闭Info.plist文件
  2. 在Xcode中编译并运行应用
  3. 测试IDFA访问请求
    • 当应用尝试访问IDFA时,iOS系统会弹出一个对话框询问用户是否允许跟踪。
    • 确保对话框显示的是你之前在Info.plist中配置的提示信息。

注意事项

  • 确保你的应用已经正确引入了必要的广告框架(如AdSupport.framework),因为访问IDFA通常需要这个框架。
  • 在提交应用到App Store之前,务必测试隐私权限请求流程,确保符合Apple的隐私政策要求。
  • 如果你使用的是uni-app的自动化打包工具(如HBuilderX的云打包服务),可能需要在打包配置中指定某些原生配置,具体请参考uni-app官方文档或云打包服务的相关指南。

通过上述步骤,你可以在uni-app项目中成功配置NSUserTrackingUsageDescription,以满足iOS 14及以上版本的隐私政策要求。

回到顶部