iOS网络诊断功能 ping traceroute

      最近工作中总是遇到需要排查移动客户端网络状况的情况,可能由于某些地区网络运营商的问题,导致客户端某些功能不正常,现在的做法也是非常麻烦的:

  1. 某用户反馈某一功能不能用
  2. 由运营联系到该用户
  3. 运营指导该用户手机上下载网络诊断软件
  4. 按情况ping某域名、traceroute某域名
  5. 让用户截图把信息发回来,转交给开发人员分析

      开发者最讨厌的是什么?重复劳动绝对算一个…方案如下:在App内集成网络诊断功能,用户只需要点击一次,应用内分析出网络情况,直接上传到开发者后台。

      OK,方案有了,实现呢?

      搜索资料后,发现已经有人做了不错的网络诊断工具库,来自网易团队的LDNetDiagnoService:
https://github.com/Lede-Inc/LDNetDiagnoService_IOS

      推荐大家有相似需求的可以使用下。该库中的service类是针对单个域名做诊断的,如果有多个域名诊断的需求,可能需要稍微对源码进行修改,另外经过本人验证,其中的 “ping开放服务器” 功能可能并非所有开发者都需要,可根据自己需要进行删减。因此我可能更建议使用源码导入,不要使用pod引入。


      最后,关于ping、traceroute这些命令的原理,这方面可以自行搜索相关资料,对于开发人员来说,如果一直停留在只会用的程度,那永远都不可能成为真正的大牛。

      共勉。

你可能感兴趣的:(iOS开发,网络)