当我在Test Flight中添加为内部测试构建时,缺少状态合规性。如何解决?

时间:2016-03-07 10:19:21

标签: xcode itunesconnect testflight

当我使用UICollectionView添加我的内部测试的最新版本时,我发现它有一个"缺少合规性"状态。

这是一个主要问题吗?为什么会这样?我该如何解决这个问题?

enter image description here

10 个答案:

答案 0 :(得分:415)

除非您的应用使用某种特殊加密功能,否则您只需在Info.plist上添加名称为ITSAppUsesNonExemptEncryption且值为NO的布尔值。

如果您的应用使用自定义加密,则需要提供额外的法律文档,并在选择版本之前仔细检查加密。

如果您继续选择该版本进行测试,它将手动询问合规信息。选择"否"向您介绍上面的plist推荐。

iTunes Connect encryption export compliance alert for testing

这是在2015年WWDC上宣布的变化,但我想它最近才被执行。请参阅thisthis以获取与出口合规性相关的WWDC会话的记录,只需查看" export"的文本搜索。

关于SO还有其他类似的问题,请参阅:

答案 1 :(得分:93)

如果您不想,我们不再需要提交新版本或修改Info.plist

您只需转到TestFlight左上角的 iOS 标签,然后点击警告旁边的黄色三角形即可在iTunes Connect中提供此信息:

enter image description here

然后点击"提供出口合规信息"弹出窗口中的链接(请注意,仅适用于管理员帐户):

Export Compliance Information

但是,如果您确实选择修改Info.plist,则您永远不需要再次处理此弹出窗口。

答案 2 :(得分:27)

在您的Info.plist中,只需添加名称为App Uses Non-Exempt Encryption且值为NO的布尔值。

enter image description here

答案 3 :(得分:14)

在您的Info.plist底部添加以下内容

<key>ITSAppUsesNonExemptEncryption</key>
<false/>

答案 4 :(得分:5)

如果您的info.plist显示为属性列表(而不是xml),则需要输入密钥的文本为:
应用程序使用非豁免加密

答案 5 :(得分:4)

如果您未在API调用中使用https,请在info.plist中添加“应用程序使用非豁免加密”密钥,并将其设置为“否”

答案 6 :(得分:1)

  1. 如果您已经发布到Apple TestFlight进行测试

    您每次都必须单击链接,然后选择,只有这样,您的测试人员才能看到构建。如果您想尽快交付构建,这会很烦人。

    enter image description here

  2. 为下一个版本执行此操作(如果在生成之前执行此操作,则不会发生此错误)

?解决方案是将以下设置添加到您的iOS Info.plist

    <key>ITSAppUsesNonExemptEncryption</key>
    <false/>

enter image description here

无法添加“缺少合规性”,请参见此Missing Compliance

答案 7 :(得分:0)

此外,如果看不到“提供出口合规信息”按钮,请确保您在App Store Connect中拥有the right role或与合适的人(帐户持有人,管理员或App Manager)交谈。

答案 8 :(得分:0)

右击 info.plist ,然后选择打开为,然后单击源代码 在文件末尾之前添加此行 </dict>标记

<key>ITSAppUsesNonExemptEncryption</key>
    <false/>

并保存文件。

答案 9 :(得分:0)

我只是资助另一种方法来执行相同的解决方法。因为我没有可能单击黄色三角形(即使我有管理员角色),所以当您进入testflight时,则是iOS(在“ Build”下)而不是黄色三角形上单击版本号,将打开另一个页面并且您会在右上找到类似添加合规性信息的信息(很抱歉,如果我不太准确,但是我有意大利语版本,但是真的很容易找到)。这样,即使您像我一样,也无法单击黄色三角形,您也可以这样做。