IOS关于ipv6审核不经过问题解决

上个星期提交审核的应用被拒绝了,提示缘由是在ipv6环境下崩溃。这个缘由也让我崩溃了,由于百度谷歌了很久都没有找到一份像样的答案,我陷入了绝望,试过了tunnelbroker的方法,搭建了nat64环境调试,都没法解决。最后才想到解析苹果提供的crash log文件。windows

解析方法:app

首先将 ​Xcode.app/Contents/SharedFrameworks/DTDeviceKitBase.framework/Versions/A/Resources/symbolicatecrash​拷贝出来,我是放在了桌面,方便操做。工具

而后:Window -> Organizer打开Archives工具,找到上传审核的那一个版本,右键点击,show in Finder,打开之后有一个扩展名为xcarchive的文件,右键显示包内容,而后就能发现有一个dSYMs的文件夹,进去把一个扩展名为dSYM的文件也拷贝到桌面。调试

最后把appstore拒绝时提供的crash log文件也下载到桌面。code

接下来打开终端,进入到桌面目录,执行命令:接口

一、export DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developerip

二、symbolicatecrash crash.log(这里只是例子,个人log文件被删掉了,具体的名字扩展名我没有注意) > mycrash.log(这个名字随便起就行,生成的其实就是一个文本文件)支付宝

接下来我又遇到了点小麻烦,在macbook上面打开生成的这个文件提示错误,我只好拷贝到windows环境下,用notepad++打开了。macbook

看到这个崩溃文件,我瞬间明白,其实个人应用并非在ipv6下崩溃的,在ipv4下也同样会崩溃,缘由是咱们只提供了中国大陆的服务,审核的时候定位到的地址在咱们这里不提供服务,返回的是空值,这才是崩溃的真正缘由。it

这里告诉你们,若是只是单纯的访问http接口的话,AFNetwork 3.0是彻底没有问题的,从2.x时代升级的话改动也不是很大,我曾经升级过这个类库的。而后把百度地图、sharesdk、支付宝等等这些接口更新到最新版,就不会有问题了。

在这里提醒你们一下,必定要注意是否是真的由于ipv6才审核不经过的,不要只由于苹果的错误提示里有ipv6,咱们就把本身局限在ipv6的问题上。但愿你们的审核都可以顺利经过。

相关文章
相关标签/搜索