预期的上线是三天, 最多不超过一周, 最晚不能10天了吧? 然而, 一个月的漫长...
2017年,苹果并没有因为新年的气氛而对CP们“网开一面”。频繁锁榜、调整排名规则以及关键词覆盖算法……不断抛出的大动作,让CP们叫苦不迭。且从1月初开始,苹果还进一步加强了对应用的审核力度,导致跳坑CP以及被拒应用暴增。
近日,CP们针对应用审核问题进行了一番交流。通过调查结果统计发现,被拒原因中,标题、ipv6、测试账户、应用内购、彩票等纷纷榜上有名。
对于2017年的审核, 被拒十几次的都太常见了. 其中有个ipv6, 大家去自己搭建ipv6网络测试(ipv6搭建百度搜索有很多文章,这里就不细说了,很简单). 如果你的后端服务器已经配置了ipv6网络, 你也已经把项目中的网络库更新到最新,去看每个三方库的官方文档介绍是否已经支持ipv6 (特别是socket长连接的GCDAsyncSocket); 如果这些都检查完毕, 项目在自己搭建的ipv6环境下测试没有问题,完全可以正常访问, 那就不要被这个ipv6的问题迷惑了, 苹果测试你的应用程序,可能在其他的方面有问题他也会频繁的提到ipv6这个问题.但是根本原因其实不在这儿
给大家个ipv6的方法:
1.之前的文章我有写过关于socket连接的, 总之我用的GCDAsyncSocket是最新的,但是官方文档并没有说有没有支持ipv6,就用了下面这个方法,在建立长连接之前,先把获取到的服务器地址和端口号判断一下, 亲测有效
#pragma mark -socket的代理
#pragma mark 建立Socket连接
- (void)StartLiveBtnWithHost:(NSString *)host AndPort:(int )port{
NSLog(@"建立长连接");
//下面的方法
NSString * ipaddr = [self getProperIPWithAddress:host port:port];
//创建一个socket对象
GCDAsyncSocket * socket = [[GCDAsyncSocket alloc] initWithDelegate:self delegateQueue:dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)];
//连接
NSError *error = nil;
[socket connectToHost:ipaddr onPort:port error:&error];
self.socket = socket;
if (error) {
NSLog(@"%@",error);
}
}
//针对ipv6网络环境下适配,ipv4环境直接使用原来的地址
- (NSString *)getProperIPWithAddress:(NSString *)ipAddr port:(UInt32)port
{
NSError *addresseError = nil;
NSArray *addresseArray = [GCDAsyncSocket lookupHost:ipAddr
port:port
error:&addresseError];
if (addresseError) {
NSLog(@"");
}
NSString *ipv6Addr = [[NSString alloc]init];
for (NSData *addrData in addresseArray) {
if ([GCDAsyncSocket isIPv6Address:addrData]) {
ipv6Addr = [GCDAsyncSocket hostFromAddress:addrData];
}
}
if (ipv6Addr.length == 0) {
ipv6Addr = ipAddr;
}
return ipv6Addr;
}
世界这么大, 你应该出去看看 https://91tianlu.win/aff.php?aff=467
网友评论