尽管将 info.plist 更改为 NSAppTransport Security 为 NO Xcode 7.2 iOS 9.2,但应用程序传输安全错误
Posted
技术标签:
【中文标题】尽管将 info.plist 更改为 NSAppTransport Security 为 NO Xcode 7.2 iOS 9.2,但应用程序传输安全错误【英文标题】:App Transport Security error despite changing info.plist to NSAppTransport Security to NO Xcode 7.2 iOS 9.2 【发布时间】:2015-12-10 13:41:24 【问题描述】:我使用的是 Xcode 7.2,但在 ios 9.2 中遇到了问题。 正如以前版本所建议的那样,为了解决。
App Transport Security 已阻止明文 HTTP (http://) 资源 加载,因为它不安全。可以通过以下方式配置临时异常 您应用的 Info.plist 文件。
问题我在 info.plist 文件中插入了以下几行:
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<false/>
<key>NSExceptionDomains</key>
<dict>
<key>www.mydomain.gr</key>
<dict>
<key>NSIncludesSubdomains</key>
<true/>
<key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>
<true/>
<key>NSTemporaryExceptionMinimumTLSVersion</key>
<string>TLSv1.1</string>
</dict>
</dict>
</dict>
自从 9.2 iOS 版本再次出现相同的消息以来,它运行良好。
我尝试将 NSAllowsArbitraryLoads
设置为 YES 并且它有效,但我确信这不是解决问题的正确方法,因为 Apple 可能会以这种方式拒绝我的申请。
我正在考虑将我的 URL 从 http 更改为 https。这可能是解决方案吗?有没有人遇到同样的问题?
【问题讨论】:
我还添加了 BOOL 键NSExceptionRequiresForwardSecrecy
设置为 YES。
该域是否需要 www?
据我所知没有!
【参考方案1】:
感谢GlennRay我终于找到了解决办法。 首先,我在我的域中插入了一个证书以确保连接安全,并将我的所有 url 替换为 https。所以不再需要在 plist 文件中使用任何提到的变量,所以我删除了它们。 一个重要的想法是我应该从我的域中删除 www,因为它不是必需的!
【讨论】:
嗯,我应该把 www 的想法作为答案吗? 它是 www 以及插入证书以确保连接!我不知道!以上是关于尽管将 info.plist 更改为 NSAppTransport Security 为 NO Xcode 7.2 iOS 9.2,但应用程序传输安全错误的主要内容,如果未能解决你的问题,请参考以下文章
Visual Studio 2017 Info.plist 在选项卡更改后丢失分发目标
尽管我的 info.plist 中有“NSCameraUsageDescription”属性,但 iTunes 连接显示“无效二进制”
将 UIStatusBarStyle 更改为 LightContent(白色)在 Swift 中不起作用
iOS 应用程序无法查询方案“comgooglemaps”,尽管我在 info plist 的 LSApplicationQuery 中添加了“comgooglemaps”