热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

AppStore1.0.24版本被拒原因分析

苹果的规定:2016年6月1日提交到AppStore必须支持IPv6-only网络。官方文档:https:developer.apple.comlibrarymacdocumentati

苹果的规定:2016年6月1日提交到App Store必须支持IPv6-only网络。

 官方文档:https://developer.apple.com/library/mac/documentation/NetworkingInternetWeb/Conceptual/NetworkingOverview/UnderstandingandPreparingfortheIPv6Transition/UnderstandingandPreparingfortheIPv6Transition.html#//apple_ref/doc/uid/TP40010220-CH213-SW1



解决方法:

升级AFNetworking2.X到最新版本 AFNetworking3.0

1、将  AFHTTPRequestOperationManager 替换为:  AFHTTPSessionManager

2、将  AFHTTPRequestOperation  替换为:NSURLSessionTask

3、如果通过IP访问,或者允许https证书之外的域名访问,需要设置 validatesDomainName 为false。


测试方法:

用连接网线的Mac在共享中发送热点,长按option键创建ipv6 的 wifi 。

其他据说可行的方法:一、回邮件AppStore审核申诉;二、域名改成IP;







#import


typedef void (^requestBlock)(id message);

@interface HTTPRequestTool : NSObject


/**

 *  封装AFNetworking工具方法

 */

+(void)sendGetAFRequest:(NSString *)url withParameters:(NSDictionary *)parDic withSuccess:(requestBlock)successMessage andWithFail:(requestBlock)failMessage;


+(void)sendPostAFRequest:(NSString *)url withParameters:(NSDictionary *)parDic withSuccess:(requestBlock)successMessage andWithFail:(requestBlock)failMessage;


@end




#import "HTTPRequestTool.h"


@implementation HTTPRequestTool


+(void)sendGetAFRequest:(NSString *)url withParameters:(NSDictionary *)parDic withSuccess:(requestBlock)successMessage andWithFail:(requestBlock)failMessage

{

    AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManagermanager];

    //设置AF框架响应的返回数据为2进制

    manager.requestSerializer = [AFJSONRequestSerializerserializer];

    manager.responseSerializer = [AFHTTPResponseSerializerserializer];

    [manager GET:urlparameters:parDic success:^(AFHTTPRequestOperation *operation,id responseObject)

     {

         //调用成功的block回调

         if (successMessage)

         {

             successMessage(responseObject);

         }

     } failure:^(AFHTTPRequestOperation *operation,NSError *error) {

         //调用失败的block回调

         if (failMessage)

         {

             failMessage(error);

         }

     }];

}


+ (void)sendPostAFRequest:(NSString *)url withParameters:(NSDictionary *)parDic withSuccess:(requestBlock)successMessage andWithFail:(requestBlock)failMessage {

    AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManagermanager];

    //设置AF框架响应的返回数据为2进制

    manager.requestSerializer = [AFJSONRequestSerializerserializer];

    manager.responseSerializer = [AFHTTPResponseSerializerserializer];

    [manager POST:urlparameters:parDic success:^(AFHTTPRequestOperation *operation,id responseObject) {

        if (successMessage) {

            successMessage(responseObject);

        }

    } failure:^(AFHTTPRequestOperation *operation,NSError *error) {

        if (failMessage) {

            failMessage(error);

        }

    }];

}


@end














//////////////////////////////////////////////////////////////////////        附上AppStore审核回复的邮件        //////////////////////////////////////////////////////////////////////////




2. - 1 PERFORMANCE: APP COMPLETENESSPerformance - 2.1

We discovered one or more bugs in your app when reviewed on iPad and iPhone running iOS 9.3.3 on Wi-Fi connected to an IPv6 network.

We were unable to log in. The app stayed on the same page after loading. We've attached screenshot(s) for your reference.
Next Steps
Please run your app on a device while connected to an IPv6 network (all apps must support IPv6) to identify the issue(s), then revise and resubmit your app for review.
If we misunderstood the intended behavior of your app, please reply to this message in Resolution Center to provide information on how these features were intended to work.
For new apps, uninstall all previous versions of your app from a device, then install and follow the steps to reproduce the issue(s). For updates, install the new version as an update to the previous version, then follow the steps to reproduce the issue(s).
Resources
For information about supporting IPv6 Networks, please refer to Supporting IPv6 DNS64/NAT64 Networks and About Networking
If you have difficulty reproducing a reported issue, please try testing the workflow described in Technical Q&A QA1764: How to reproduce bugs reported against App Store submissions.
If you have code-level questions after utilizing the above resources, you may wish to consult with Apple Developer Technical Support. When the DTS engineer follows up with you, please be ready to provide:- complete details of your rejection issue(s)- screenshots- steps to reproduce the issue(s)- symbolicated crash logs - if your issue results in a crash log


推荐阅读
  • 【shell】网络处理:判断IP是否在网段、两个ip是否同网段、IP地址范围、网段包含关系
    本文介绍了使用shell脚本判断IP是否在同一网段、判断IP地址是否在某个范围内、计算IP地址范围、判断网段之间的包含关系的方法和原理。通过对IP和掩码进行与计算,可以判断两个IP是否在同一网段。同时,还提供了一段用于验证IP地址的正则表达式和判断特殊IP地址的方法。 ... [详细]
  • 在Android开发中,使用Picasso库可以实现对网络图片的等比例缩放。本文介绍了使用Picasso库进行图片缩放的方法,并提供了具体的代码实现。通过获取图片的宽高,计算目标宽度和高度,并创建新图实现等比例缩放。 ... [详细]
  • VScode格式化文档换行或不换行的设置方法
    本文介绍了在VScode中设置格式化文档换行或不换行的方法,包括使用插件和修改settings.json文件的内容。详细步骤为:找到settings.json文件,将其中的代码替换为指定的代码。 ... [详细]
  • Linux重启网络命令实例及关机和重启示例教程
    本文介绍了Linux系统中重启网络命令的实例,以及使用不同方式关机和重启系统的示例教程。包括使用图形界面和控制台访问系统的方法,以及使用shutdown命令进行系统关机和重启的句法和用法。 ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • [大整数乘法] java代码实现
    本文介绍了使用java代码实现大整数乘法的过程,同时也涉及到大整数加法和大整数减法的计算方法。通过分治算法来提高计算效率,并对算法的时间复杂度进行了研究。详细代码实现请参考文章链接。 ... [详细]
  • 本文讨论了在openwrt-17.01版本中,mt7628设备上初始化启动时eth0的mac地址总是随机生成的问题。每次随机生成的eth0的mac地址都会写到/sys/class/net/eth0/address目录下,而openwrt-17.01原版的SDK会根据随机生成的eth0的mac地址再生成eth0.1、eth0.2等,生成后的mac地址会保存在/etc/config/network下。 ... [详细]
  • 本文介绍了机器学习手册中关于日期和时区操作的重要性以及其在实际应用中的作用。文章以一个故事为背景,描述了学童们面对老先生的教导时的反应,以及上官如在这个过程中的表现。同时,文章也提到了顾慎为对上官如的恨意以及他们之间的矛盾源于早年的结局。最后,文章强调了日期和时区操作在机器学习中的重要性,并指出了其在实际应用中的作用和意义。 ... [详细]
  • WhenIusepythontoapplythepymysqlmoduletoaddafieldtoatableinthemysqldatabase,itdo ... [详细]
  • Python爬虫中使用正则表达式的方法和注意事项
    本文介绍了在Python爬虫中使用正则表达式的方法和注意事项。首先解释了爬虫的四个主要步骤,并强调了正则表达式在数据处理中的重要性。然后详细介绍了正则表达式的概念和用法,包括检索、替换和过滤文本的功能。同时提到了re模块是Python内置的用于处理正则表达式的模块,并给出了使用正则表达式时需要注意的特殊字符转义和原始字符串的用法。通过本文的学习,读者可以掌握在Python爬虫中使用正则表达式的技巧和方法。 ... [详细]
  • IOS开发之短信发送与拨打电话的方法详解
    本文详细介绍了在IOS开发中实现短信发送和拨打电话的两种方式,一种是使用系统底层发送,虽然无法自定义短信内容和返回原应用,但是简单方便;另一种是使用第三方框架发送,需要导入MessageUI头文件,并遵守MFMessageComposeViewControllerDelegate协议,可以实现自定义短信内容和返回原应用的功能。 ... [详细]
  • 本文介绍了OC学习笔记中的@property和@synthesize,包括属性的定义和合成的使用方法。通过示例代码详细讲解了@property和@synthesize的作用和用法。 ... [详细]
  • baresip android编译、运行教程1语音通话
    本文介绍了如何在安卓平台上编译和运行baresip android,包括下载相关的sdk和ndk,修改ndk路径和输出目录,以及创建一个c++的安卓工程并将目录考到cpp下。详细步骤可参考给出的链接和文档。 ... [详细]
  • 如何查询zone下的表的信息
    本文介绍了如何通过TcaplusDB知识库查询zone下的表的信息。包括请求地址、GET请求参数说明、返回参数说明等内容。通过curl方法发起请求,并提供了请求示例。 ... [详细]
author-avatar
铁狼爷们儿
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有