iOS 適配IPv6

最近一直看到有人說app因為沒有適配IPv6而被拒的,可是我的app卻什么都沒做也沒有被拒,閑來無事看了看原因。

一、簡單測試

首先,你先搭建一個IPv6的本地熱點環境,如果通過這個熱點環境你的app可以正常訪問,那問題應該不大,如果出現bug那審核肯定是過不了的。

和平時創建熱點的方法基本一樣,只有這里要按住option鍵,然后點擊sharing,這樣在接下來的頁面會出現Create NAT64 NETWORK 然后選中它 ?這樣創建出來的熱點就是帶有IPv6的熱點。

我測試了下,我的app是可以正常訪問的,因為我的app用的是AFN網絡請求,雖然還是2.0版本,但是對于審核來說是夠了,因為蘋果的審核團隊暫時還不會檢測你的app是否包含只支持IPv4的API,但是為了安全起見,還是需要你做適配。

二、如何適配IPv6

1.使用高版本的網絡框架,因為高版本的網絡框架適配IPv6已經幫我們實現了,底層的框架適配起來容易產生bug,但是如果確實需要底層的API,那就只能自己研究如何適配啦(我暫時不知道,哈哈)。

2.不要用IP地址,用域名

3.使用足夠大的存儲容器,以至于可以放得下IPv6地址

4.檢查源碼是否兼容IPv4和IPv6

inet_addr()

inet_aton()

inet_lnaof()

inet_makeaddr()

inet_netof()

inet_network()

inet_ntoa()

inet_ntoa_r()

bindresvport()

getipv4sourcefilter()

setipv4sourcefilter()


參考網址:

官網適配IPv6

App Rejected with iOS IPv6 network

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

推薦閱讀更多精彩內容

  • 1. IPV6簡單介紹 網絡是IPV6還是IPV4是由運營商和企業逐漸部署的。 客戶端向服務器端請求域名解析,首先...
    曉飛90閱讀 3,262評論 0 0
  • 研究IPv6 socket編程原因: Supporting IPv6 in iOS 9 WWDC2015蘋果宣布在...
    li大鵬閱讀 7,383評論 7 15
  • 博客地址已遷移到:https://devthinking.com 在App中適配 在傳nodename的時候不要用...
    ShawnDu閱讀 1,924評論 1 6
  • 如果你的項目的網絡請求是用的域名的話~可以跳過這個文章了。 如果你處于ipv6的網絡下,發現你的app用不了那么你...
    MMMo1閱讀 3,704評論 1 2
  • 由于6月1日起蘋果將開始強制app適配iPV6,就對現有工程做了一個排查,發現一點更新一次吧,現將發現的AF中的修...
    NBeanN閱讀 21,657評論 24 33