【问题标题】:Setting NSAllowsArbitraryLoads in iOS 9 - Will Apple reject the app? [duplicate]在 iOS 9 中设置 NSAllowsArbitraryLoads - Apple 会拒绝该应用程序吗? [复制]
【发布时间】:2015-12-22 21:01:41
【问题描述】:

我突然在iOS 9 上收到一条消息:

无法加载资源,因为应用传输安全 政策要求使用安全连接

Searched 有点,发现将 NSAllowsArbitraryLoads 设置为 YES 可以解决这个问题。
但是,我也为此找到了Apple may reject the App。 虽然在App Transport Security Technote 中声明了

NSAllowsArbitraryLoads

一个布尔值,用于禁用 NSExceptionDomains 字典中未列出的任何域的应用程序传输安全性。上市 域使用为该域指定的设置。

但由于这是目前唯一有效的解决方案,Apple可能会或可能不会拒绝该应用程序,只是想在发布前确认。

更新:Apple 通过了审核,我的应用现在可以使用此设置 :)

【问题讨论】:

  • 苹果已经为此提供了解决方案。我不认为苹果会拒绝该应用程序。因为如果我们想在同一个应用程序中同时使用 HTTP 和 HTTPS,那么这只是一个解决方案。 stackoverflow.com/questions/32774138/…
  • 我在一周前使用此密钥NSAllowsArbitraryLoadsYES 提交了我的新版本应用程序,并已通过应用程序审核流程
  • @Nitish 欢迎兄弟。
  • @AshishKakkad 发布成功
  • 没错。这将是我迄今为止看到的第一次提到这个问题:)

标签: ios ios9 info.plist


【解决方案1】:

更新:

Apple 宣布 iOS 应用必须在 2017 年 1 月 1 日之前启用应用传输安全性

所以,如果您计划在 2017 年之后将应用提交到应用商店,请开启 ATS。

另外,请参阅link

====== 旧答案=====

我的经验:

我在 2015 年 9 月 17 日提交了我的应用,并通过了应用商店的审核流程并成功发布了应用。

这是我的应用程序的 info.plist 屏幕截图。

所以,我认为苹果目前不会因为这个原因拒绝该应用程序

更新:

我的新应用在 2015 年 10 月 30 日通过了苹果审核流程,此键设置为 YES。

【讨论】:

  • Apple 引入了这个安全功能似乎很奇怪,但让它变得微不足道??
  • 以下是解决问题的方法
  • 也许不是现在,但在即将到来的 iOS 迭代中,苹果可能会开始拒绝此类应用。
  • 具有此设置的我的应用已上线 :)
  • 据我了解,这是关于允许应用选择加入重要的域/子域,因此如果发现安全层较弱,iOS 可以阻止连接。这将允许应用程序开发人员说“真的不允许对 foo.com 进行 MITM 攻击”
【解决方案2】:

因此浪费了大量时间(⏱ == ?)。测试新的 NSURL... 代码在某些用户中失败,与其他用户一起使用。不知道为什么。然后偶然发现了我通常不看的日志输出(谁真正看到了 iPhone 上的日志,说真的……)并且出现了这个警告。

那是苹果的一个相当讨厌的把戏……浪费时间在调试上,浪费时间让用户感到沮丧,失去了让软件“工作”的可信度。由于苹果的棍子被推到那里,辐条断裂。将不得不在公共汽车下折腾苹果?和我的测试人员在这个上。

参考: NSAppTransportSecurity : NSAllowsArbitraryLoads NSAppTransportSecurity : NSExceptionDomains

【讨论】:

  • 哦,是的,整个错误文本是:App Transport Security 已阻止明文 HTTP (http://) 资源加载,因为它不安全。可以通过应用的 Info.plist 文件配置临时例外。
猜你喜欢
  • 1970-01-01
  • 2015-10-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-03-02
  • 2016-06-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多