升級iOS9以后碰到的問題01

蘋果在 iOS 9 中引入了應用傳輸安全功能,它默認需要所有的應用使用 HTTPS 協議。由于不是所有的服務都由 HTTPS 提供,因此蘋果還提供了一個禁用 ATS 的方式,既可選擇性的使用也可全局應用。

如果您的應用需要能夠加載所有的 URL(比如說在 UIWebview中),那么您可能需要通過設置NSAllowsArbitraryLoads鍵值為YES來全局禁用 ATS。這完全是可以的,但是一旦您全局禁用了 ATS 功能,那么您需要在重要區域啟用ATS 服務。您需要使用NSExceptionDomains鍵來完成此項功能。比如說,這是xcode工程 的 Info.plist 文件的一部分內容:

您可以看到,我們支持用戶通過 HTTP 下載文件,但是我們同樣也支持通過 HTTPS 來連接jianshu.com。

還需要注意的是,每一個包都需要應用 ATS 功能。這意味著您不僅需要給您主應用的 Info.plist 文件添加 ATS 字典,而且還要同時給擴展的 Info.plist 文件添加。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,992評論 19 139
  • 因為要結局swift3.0中引用snapKit的問題,看到一篇介紹Xcode8,swift3變化的文章,覺得很詳細...
    uniapp閱讀 4,537評論 0 12
  • 很可能你的應用是與一個支持HTTPS傳輸數據的服務器交互,但是并沒有使用TLS 1.2或更高。在這種情況下,你定義...
    Www劉閱讀 3,142評論 0 5
  • 我才15歲,但是我覺得我遇到的這些事不算少。 我有一個朋友,上一次大晚上的他給我發信息說她好委屈。 她有個朋友的爸...
    宇宙最酷丁慧玲閱讀 216評論 0 0
  • 隨著生活節奏的加快,人們對慢生活充滿了向往,忙碌一天,回到家中,希望遠離都市的喧囂,感受家的溫馨舒適,清新自然,近...
    交換空間裝飾閱讀 316評論 0 1