当我用TestFlight添加我的最新构建进行内部测试时,我看到它有一个“Missing compliance”;的地位。
这是个大问题吗?为什么会出现这种情况?我该如何解决这个问题?
.
除非你的应用程序使用一些特殊的加密,你可以简单地为你的Info.plist添加一个布尔密钥,名称ITSAppUsesNonExemptEncryption,值false。
Info.plist
ITSAppUsesNonExemptEncryption
false
在代码:
<key>ITSAppUsesNonExemptEncryption</key> <false/>
如果你想使用Xcode UI,请转到Project >目标比;信息面板,添加一个新的“应用程序使用非豁免加密”;值为NO的布尔键:
NO
< / >
如果你的应用使用自定义加密,那么你需要提供额外的法律文件,并在选择构建之前审查你的加密。
如果您继续选择该版本进行测试,它将手动要求遵从性信息。选择“No"为您提供上面的plist推荐。
这是在2015年全球开发者大会上宣布的改变,但我猜这是最近才实施的。请参阅这和这,以获得与导出遵从性相关的WWDC会议的记录,只是文本搜索&;export&;。
关于SO还有其他类似的问题,请参见:
不再需要提交新的构建或修改Info.plist;相反,请遵循以下步骤:
不过,如果你确实选择修改Info.plist,你将永远不需要再次处理这个弹出窗口。
如果你的信息。Plist显示为属性列表(而不是xml),您需要为键输入的文本是: 应用程序使用非豁免加密
在你的Info.plist中,右键单击属性表,单击Add Row,添加键名App Uses Non-Exempt Encryption类型Boolean并设置值NO。
Add Row
App Uses Non-Exempt Encryption
Boolean
另一种处理方法
右键单击info.plist并选择打开为,然后单击Source Code将这一行添加到</dict>标记之前的最后一个文件中
info.plist
Source Code
</dict>
在Info.plist的底部添加以下语句
如果你没有在api调用中使用https,请在你的信息中添加这个密钥“应用程序使用非豁免加密”。plist并将其设置为NO
此外,如果你看不到“提供导出合规信息”按钮,请确保你的App Store Connect中有合适的角色或与正确的人(帐户持有人,管理员或应用程序经理)交谈。
右键单击info.plist并选择打开,然后单击源代码 将这一行添加到文件的最后 </dict>标记< / p >
并保存文件。
我只是资助了另一种方法来做同样的工作。因为我没有点击黄色三角的可能性(即使我有管理角色),当你进入试飞,然后iOS(在“建造”下),而不是点击黄色三角的版本号,另一个页面将打开,你会发现在右上角添加合规信息(抱歉,如果我不完全准确,但我有意大利版本,但它真的很容易找到)。然后你可以做同样的事情,即使你像我一样,不能点击黄色三角形。
对于SwiftUI
通常没有info.plist文件。所以用这种方式添加非豁免加密密钥和值。如下所示,单击+按钮,输入ITSAppUsesNonExemptEncryption作为键,NO作为值
它只是表明你不使用加密,当你是一个新手时,这可能是令人生畏的,但如果你确定你不使用加密,这不是一个问题