iOS开发实用技巧IOS理论知识app开发

iOS 适配iPV6的修改(AF及其他第三方库)

2016-05-14  本文已影响18831人  NBeanN

由于6月1日起苹果将开始强制app适配iPV6,就对现有工程做了一个排查,发现一点更新一次吧,现将发现的AF中的修改先列出来,有其他的再后续补上。

只需要修改2个文件

修改的文件

.h文件修改的地方有一处

修改前:

修改前

修改后:

修改后

修改代码:

+ (instancetype)managerForAddress:(conststructsockaddr_in*)address;【前】

+ (instancetype)managerForAddress:(conststructsockaddr_in6*)address;【后】

.m文件中修改两处

第一处修改前:

.m中修改

第一处修改后:

.m中修改

修改代码:

+ (instancetype)managerForAddress:(conststructsockaddr_in*)address 【前】

+ (instancetype)managerForAddress:(conststructsockaddr_in6*)address 【后】

第二处修改前:

.m中修改

第二处修改后:

.m中修改

修改代码:

+ (instancetype)sharedManager {

staticAFNetworkReachabilityManager*_sharedManager =nil;

staticdispatch_once_tonceToken;

dispatch_once(&onceToken, ^{

structsockaddr_inaddress;

bzero(&address,sizeof(address));

address.sin_len=sizeof(address);

address.sin_family=AF_INET;

_sharedManager = [selfmanagerForAddress:&address];

});

return_sharedManager;

}【前】

+ (instancetype)sharedManager {

staticAFNetworkReachabilityManager*_sharedManager =nil;

staticdispatch_once_tonceToken;

dispatch_once(&onceToken, ^{

structsockaddr_in6address;

bzero(&address,sizeof(address));

address.sin6_len=sizeof(address);

address.sin6_family=AF_INET6;

_sharedManager = [selfmanagerForAddress:&address];

});

return_sharedManager;

}【后】


如果想了解iPV6相关原理和其他修改,可以参考下面文章。

http://www.jianshu.com/p/54b989098537

注:微信登录已经更新了支持iPV6的sdk,有原生微信登录的小伙伴需要注意一下哈。

菜鸟走向大牛,大家共同前进,如果觉得不错,请给个start,给个赞吧。

每天做些贡献,交流学习,有问题随时欢迎联系,邮箱:383708669@qq.com

上一篇 下一篇

猜你喜欢

热点阅读