iOS 阿里雲OSS Start resolved network to see if in IPv6-Only env. 報錯

ZY_FlyWay發表於2018-09-05

報錯內容


2018-09-05 14:09:07.341486+0800 NVRCloudIOS[10396:289984] [Debug]: Start resolved network to see if in IPv6-Only env.
2018-09-05 14:09:07.358383+0800 NVRCloudIOS[10396:289976] [Debug]: [-[OSSIPv6Adapter isIPv6OnlyNetwork]]: Not IPv6-Only network now.
2018-09-05 14:09:07.358681+0800 NVRCloudIOS[10396:289976] [Debug]: [AlicloudReachabilityManager]: Network changed, Pre network status is not IPv6-Only.
2018-09-05 14:09:07.358892+0800 NVRCloudIOS[10396:289976] [Debug]: Start resolved network to see if in IPv6-Only env.
2018-09-05 14:09:07.359135+0800 NVRCloudIOS[10396:289976] [Debug]: [-[OSSIPv6Adapter isIPv6OnlyNetwork]]: Not IPv6-Only network now.
2018-09-05 14:09:07.373581+0800 NVRCloudIOS[10396:289998] [Debug]: [AlicloudReachabilityManager]: Network changed, Pre network status is not IPv6-Only.
2018-09-05 14:09:07.374194+0800 NVRCloudIOS[10396:289998] [Debug]: Start resolved network to see if in IPv6-Only env.
2018-09-05 14:09:07.374681+0800 NVRCloudIOS[10396:289998] [Debug]: [-[OSSIPv6Adapter isIPv6OnlyNetwork]]: Not IPv6-Only network now.

探索


根據可知應該是你的網路不支援ipv6-only,但是為什麼網路沒有ipv6-only地址AliOSS會報錯呢,
然後你可以看看AliOSS IPV6相關內容了,因為蘋果稽核必須支援ipv6-only。之前的alioss版本
並沒有支援。

文件是這麼說的:

相容IPv6-Only網路OSS移動端SDK為了解決無線網路下域名解析容易遭到劫持的問題,已經引入了HTTPDNS進行域名解析,直接使用IP請求OSS服務端。在IPv6-Only的網路下,可能會遇到相容性問題。而APP官方近期釋出了關於IPv6-only網路環境相容的APP稽核要求,為此,SDK從2.5.0版本開始已經做了相容性處理。

在新版本中,除了-ObjC的設定,還需要引入兩個系統庫:

libresolv.tbd
CoreTelephony.framework
SystemConfiguration.framework

當然如果是pod 安裝的,這些庫設定pod都已經弄好了。

解決

其實AliOSS只是提示你當前的網路環境,並不影響你以後的操作。

解決辦法:

  • 模擬ipv6環境(MAC 分享網路,不會可以百度下,提示MAC 不是連的WIFI。Windows可以自己分配ipv6地址)
  • 備註調檢測程式碼(下圖看的很清楚,LOG就是這行程式碼輸出的)
  • 這裡寫圖片描述

相關文章