Closed HoneyLuka closed 8 years ago
目前会的,这个后边会优化处理,但一般50ms内会返回的
今天我们提交的app被苹果拒了,理由是启动崩溃。苹果还给发了崩溃日志。
原因是我在app启动的时候使用happydns去解析了一下我们的网站,也怪我没注意这块,直接在主线程里调用解析了,我们自己测试的时候这个解析确实很快,并没有出什么问题。但似乎在苹果那边解析的不是很顺利,到20秒的时候被系统干掉了。
QNResolver添加了119.29.29.29、180.76.76.76和systemResolver
下边是崩溃日志的截图
苹果那边给出的建议是app需要支持IPv6,所以猜测他们肯定是在IPv6环境下测试的。 但是我自己对网络这块也不太懂,所以不知道这个问题具体发生在了哪,所以把这个问题反馈上来,希望能给happydns带来一点帮助。
我这边在ipv6 情况下跑过单元测试的,能方便把你们的app 发给我测试么? 我qq 7427578,另外具体的dns 配置给下
另外 网络请求不能放在主线程
被系统杀掉的log?
app由于是公司的,所以没办法提供,这个log就是苹果给发过来的日志
QNDnsmanager 配置的dns 服务器地址给下
QNResolver添加了119.29.29.29、180.76.76.76和systemResolver 都是按照说明添加的
不知道resolver顺序有没有影响,我当时是最后添加的systemResolver
119.29.29.29 这个国外会慢一些,建议根据时区 调整dns server 顺序
好的,目前已经把系统的放在首位了happy dns是一个resolver解析成功后就不会继续使用后边的解析了吗?
是的,失败才使用后面的
明白了,多谢解答
但还是建议 使用dispatch 到非主线程来执行请求域名解析到ip, 接着进行http 请求,然后回调回来
嗯,现在已经这么做了,当时做的太随意😓
比如说在SDWebImage里配置了happydns,然后加载图片时触发了dns查询, 当然图片很多请求次数也很频繁,会不会出现一种情况:第一次dns查询还未完成,后边又多次调用了query方法,导致发出了N个指向同一个Host的dns查询请求?