ios - iOS 拒绝 AFNetworking 和 IPV6

标签 ios afnetworking ipv6

通过应用程序审核流程发送我们的应用程序,但由于 ipv6 完整性问题而被拒绝。我们的应用程序使用 AFNetworking 3.1.0,所以没有问题。我们的 API 不兼容 IPV6。评论回来时出现了我们也无法重现的崩溃。

我想我的第一个问题是: 1.) 周末我们需要一些快速+肮脏的东西。我们是否可以只创建一个构建,而不必通过 AFNetworking 在后端实际支持 ipv6?

2.) 除了拥有最新版本之外,我们还需要使用 AFNetworking 做其他事情吗?是否需要更改代码以确保我们支持 ipv6?

最佳答案

尝试在 AFNetworking 中查找代码:

struct sockaddr_in address;
    bzero(&address, sizeof(address));
    address.sin_len = sizeof(address);
    address.sin_family = AF_INET;

将代码更新为:

#if (defined(__IPHONE_OS_VERSION_MIN_REQUIRED) && IPHONE_OS_VERSION_MIN_REQUIRED >= 90000) || (defined(__MAC_OS_X_VERSION_MIN_REQUIRED) && MAC_OS_X_VERSION_MIN_REQUIRED >= 101100)
    struct sockaddr_in6 address;
    bzero(&address, sizeof(address));
    address.sin6_len = sizeof(address);
    address.sin6_family = AF_INET6;
#else
    struct sockaddr_in address;
    bzero(&address, sizeof(address));
    address.sin_len = sizeof(address);
    address.sin_family = AF_INET;
#endif

更新所有库(如果使用):

address.sin_family = AF_INET;

关于ios - iOS 拒绝 AFNetworking 和 IPV6,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40144643/

相关文章:

iphone - 如何以编程方式获取 Iphone ViewController 大小

ios - 以前使用文档浏览器运行的应用程序的文档文件夹消失了

ios - 如何引用类的方法

c - getaddrinfo 未获取 ipv6 地址

ios - 对包含 Å、Ä 和 Ö 的字符串数组进行排序 - Swift

ios - 无法从 Xcode 项目中删除主界面

objective-c - 使用 block 完成回调将 AFNetworking AFXMLRequestOperation 集成到我自己的方法中

ios - NSURLCache 缓存不应缓存的随机响应

ios - 从 iOS 应用程序获取网络类型

python - urllib2 和 asyncore 之间的性能差异