提问人:Chandan Jee 提问时间:3/7/2016 最后编辑:mokagioChandan Jee 更新时间:3/14/2023 访问量:269533
TestFlight 中缺少合规性状态
Missing Compliance status in TestFlight
问:
当我使用 TestFlight 添加最新版本进行内部测试时,我看到它处于“缺少合规性”状态。
这是一个主要问题吗?为什么会出现这种情况?如何解决此问题?
答:
除非您的应用程序使用某些特殊加密,否则您只需将 Boolean 键添加到您的 name 和 value 中。Info.plist
ITSAppUsesNonExemptEncryption
false
在代码中:
<key>ITSAppUsesNonExemptEncryption</key>
<false/>
如果要改用 Xcode UI,请转到“项目>目标>信息”面板,添加一个新的“应用使用非豁免加密”布尔键,其值为:NO
如果您的应用使用自定义加密,则需要提供额外的法律文件并审核您的加密,然后才能选择构建版本。
如果继续选择该版本进行测试,它将手动要求提供合规性信息。选择“否”会显示上面的 plist 建议。
这是在2015年WWDC中宣布的更改,但我想它只是最近才执行的。有关与出口合规性相关的 WWDC 会议的成绩单,请参阅此和此,仅对“导出”进行文本搜索。
关于 SO 还有其他类似的问题,请参阅:
- ITSAppUsesNonExemptEncryption 在内部测试时导出合规性?
- 无法选择要添加到 testflight 的最新上传版本
- ITSAppUsesNonExemptEncryption Cordova 内部版本
评论
不再需要提交新的构建或修改;相反,请按照下列步骤操作:Info.plist
确保您是 App Store Connect 中的管理员或 App 管理员角色。
前往 TestFlight 左上角的 iOS 标签页,点按警告旁边的黄色三角形,以在 iTunes Connect 中提供以下信息:
- 单击弹出窗口中的“提供出口合规信息”链接:
但是,如果您确实选择修改,则永远不需要再次处理此弹出窗口。Info.plist
评论
如果 info.plist 显示为属性列表(而不是 xml),则需要为密钥输入的文本为:
应用使用非豁免加密
在您的属性表中,右键单击,单击,添加具有类型和设置值的键名。Info.plist
Add Row
App Uses Non-Exempt Encryption
Boolean
NO
处理此问题的另一种方法
Righ 单击并选择“打开为”,然后单击“在标记之前的文件末尾添加此行”info.plist
Source Code
</dict>
<key>ITSAppUsesNonExemptEncryption</key>
<false/>
评论
在底部添加以下内容Info.plist
<key>ITSAppUsesNonExemptEncryption</key>
<false/>
如果您在 api 调用中未使用 https,请在您的 info.plist 中添加此密钥“App Uses Non-Exempt Encryption”并将其设置为“NO”
评论
此外,如果您看不到“提供出口合规信息”按钮,请确保您在 App Store Connect 中拥有正确的角色,或者与正确的人员(帐户持有人、管理员或 App 管理员)交谈。
单击 info.plist 并选择 open as,然后单击 Source Code 将此行添加到文件末尾的标记之前</dict>
<key>ITSAppUsesNonExemptEncryption</key>
<false/>
并保存文件。
我只是资助另一种方法来做同样的解决方法。由于我无法单击黄色三角形(即使我有管理员角色),因此当您进入testflight时,iOS(在“构建”下)而不是黄色三角形单击版本号,将打开另一个页面,您会在右上角找到添加合规性信息之类的内容(对不起,如果我不完全准确,但我有意大利语版本,但它真的很容易找到)。然后,即使您像我一样无法单击黄色三角形,您也可以这样做。
对于 SwiftUI
通常没有文件。因此,请使用这种方式添加非豁免加密密钥和值。单击如下所示的 + 按钮,然后键入键和值info.plist
ITSAppUsesNonExemptEncryption
NO
它只是表示您不使用加密,当您是新手时可能会令人生畏,但如果您确定不使用加密,则不是问题
评论