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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1. IPV6简单介绍 网络是IPV6还是IPV4是由运营商和企业逐渐部署的。 客户端向服务器端请求域名解析,首先...
    晓飞90阅读 3,471评论 0 0
  • 研究IPv6 socket编程原因: Supporting IPv6 in iOS 9 WWDC2015苹果宣布在...
    li大鹏阅读 7,617评论 7 15
  • 博客地址已迁移到:https://devthinking.com 在App中适配 在传nodename的时候不要用...
    ShawnDu阅读 1,969评论 1 6
  • 如果你的项目的网络请求是用的域名的话~可以跳过这个文章了。 如果你处于ipv6的网络下,发现你的app用不了那么你...
    MMMo1阅读 3,767评论 1 2
  • 由于6月1日起苹果将开始强制app适配iPV6,就对现有工程做了一个排查,发现一点更新一次吧,现将发现的AF中的修...
    NBeanN阅读 21,741评论 24 33

友情链接更多精彩内容