当我用TestFlight为内部测试添加我的最新构建时,我看到它有一个“Missing Compliance”状态。
这是个大问题吗?为什么会出现这种情况?我该如何解决这个问题?
当我用TestFlight为内部测试添加我的最新构建时,我看到它有一个“Missing Compliance”状态。
这是个大问题吗?为什么会出现这种情况?我该如何解决这个问题?
当前回答
除非你的应用程序使用一些特殊的加密,你可以简单地添加布尔密钥到你的信息。plist名称为ITSAppUsesNonExemptEncryption,值为false。
在代码:
<key>ITSAppUsesNonExemptEncryption</key>
<false/>
如果你想使用Xcode UI,转到项目>目标>信息面板,添加一个新的“应用程序使用非豁免加密”布尔密钥,值为NO:
如果你的应用使用自定义加密,那么你需要提供额外的法律文件,并在选择构建之前审查你的加密。
如果您继续选择该版本进行测试,它将手动要求遵从性信息。选择“No”会显示上面的plist推荐。
这是在2015年全球开发者大会上宣布的改变,但我猜这是最近才实施的。在WWDC会议上,只需要文本搜索“export”,就可以看到与导出遵从性相关的文字记录。
关于SO还有其他类似的问题,请参见:
内部测试时ITSAppUsesNonExemptEncryption导出合规性? 无法选择要添加到测试飞行的最新上传版本 ITSAppUsesNonExemptEncryption Cordova Build
其他回答
如果你的信息。Plist显示为一个属性列表(而不是xml),你需要为键输入的文本是: 应用程序使用非豁免加密
右键单击信息。plist,选择open as,然后点击Source Code 将这一行添加到文件的最后 < / dict >标记
<key>ITSAppUsesNonExemptEncryption</key>
<false/>
并保存文件。
不再需要提交新的构建或修改Info.plist;相反,请遵循以下步骤:
确保你是App Store Connect中的管理员或应用程序管理员角色。 转到TestFlight左上角的iOS选项卡,点击警告旁边的黄色三角形,在iTunes Connect中提供以下信息:
点击弹出窗口中的“提供出口合规信息”链接:
不过,如果您选择修改信息。Plist,你再也不需要处理这个弹出窗口了。
此外,如果你看不到“提供导出合规信息”按钮,请确保你在App Store Connect中拥有正确的角色或与正确的人(帐户持有人,管理员或应用程序经理)交谈。
如果你没有在api调用中使用https,请在你的信息中添加这个密钥“应用程序使用非豁免加密”。plist并将其设置为NO