You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React Native项目提交App Store遇ITMS-91064隐私清单错误求修复

React Native项目提交App Store遭ITMS-91064拒绝的修复方案

问题描述

提交React Native项目至App Store时收到Apple拒绝通知:

ITMS-91064: Invalid tracking information - A PrivacyInfo.xcprivacy file contains invalid tracking information at the following path: “Frameworks/SASDisplayKit.framework/PrivacyInfo.xcprivacy”.
NSPrivacyTracking must be true if NSPrivacyTrackingDomains isn‘t empty. Keys and values in your app’s privacy manifest must be valid.

已完成的操作:

  • 在项目根目录的PrivacyInfo.xcprivacy中添加了React Native官方提供的隐私清单配置:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>NSPrivacyTrackingDomains</key>
    <array/>
    <key>NSPrivacyCollectedDataTypes</key>
    <array/>
    <key>NSPrivacyAccessedAPITypes</key>
    <array>
        <dict>
            <key>NSPrivacyAccessedAPIType</key>
            <string>NSPrivacyAccessedAPICategoryFileTimestamp</string>
            <key>NSPrivacyAccessedAPITypeReasons</key>
            <array>
                <string>C617.1</string>
            </array>
        </dict>
        <dict>
            <key>NSPrivacyAccessedAPIType</key>
            <string>NSPrivacyAccessedAPICategoryUserDefaults</string>
            <key>NSPrivacyAccessedAPITypeReasons</key>
            <array>
                <string>CA92.1</string>
            </array>
        </dict>
        <dict>
            <key>NSPrivacyAccessedAPIType</key>
            <string>NSPrivacyAccessedAPICategorySystemBootTime</string>
            <key>NSPrivacyAccessedAPITypeReasons</key>
            <array>
                <string>35F9.1</string>
            </array>
        </dict>
    </array>
    <key>NSPrivacyTracking</key>
    <true/>
</dict>
</plist>
  • 已将react-native-firebase/analytics更新至最新版本19.2.2,但问题仍未解决。

修复方案

问题根源是第三方框架SASDisplayKit的隐私清单配置不符合Apple要求,而非你项目根目录的隐私文件。按以下步骤处理:

1. 更新SASDisplayKit至最新版本

优先检查SASDisplayKit是否有更新版本,多数第三方库会在后续版本中修复隐私清单合规问题。通过CocoaPods更新:

pod update SASDisplayKit

更新完成后重新打包提交,验证问题是否解决。

2. 手动修正SASDisplayKit的隐私清单

如果更新后问题依旧,手动修改框架内的隐私文件:

  • 在Xcode项目的Pods目录下找到SASDisplayKit.framework,右键选择「显示包内容」。
  • 找到并打开PrivacyInfo.xcprivacy文件。
  • 根据Apple要求调整配置:
    • 若框架需要追踪用户,确保NSPrivacyTracking设为true,且NSPrivacyTrackingDomains填写合法的追踪域名数组。
    • 若不需要追踪,将NSPrivacyTrackingDomains设为空数组,同时把NSPrivacyTracking设为false。
  • 保存修改后,清理项目缓存(Cmd+Shift+K),重新打包提交。

3. 用Pod脚本自动修正(推荐)

为避免后续重新安装依赖时覆盖修改,可在项目的Podfile中添加post_install钩子,自动修正SASDisplayKit的隐私清单:

post_install do |installer|
  installer.pods_project.targets.each do |target|
    next unless target.name == 'SASDisplayKit'
    
    privacy_file_path = target.product_reference.dirname + 'PrivacyInfo.xcprivacy'
    next unless File.exist?(privacy_file_path)
    
    # 解析隐私清单文件
    plist_content = Plist.parse_xml(privacy_file_path)
    
    # 方案1:如果框架需要追踪,确保NSPrivacyTracking为true
    plist_content['NSPrivacyTracking'] = true
    
    # 方案2:如果不需要追踪,清空追踪域名并设为false
    # plist_content['NSPrivacyTrackingDomains'] = []
    # plist_content['NSPrivacyTracking'] = false
    
    # 保存修改后的文件
    File.write(privacy_file_path, Plist::Emit.dump(plist_content))
  end
end

添加完成后,运行pod install重新安装依赖,再打包提交即可。


内容的提问来源于stack exchange,提问作者Mohamed Ahmed

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 21:50:55