第三方的一些坑

说起第三方,确实是个好东西,有专业的人造的轮子,使用起来很方便,也不需要怎么维护,唯一需要的也就是跟着他们不断升级。但是,虽然他们开发比较专业,测试也比较完善,但是总免不了 bug。尤其像那些不能够看源码的 SDK ,遇到问题根本没有办法自己调试,只能找他们反馈问题。而且遇到好的服务商,还比较顺畅,一旦遇到差的,只能通过邮件,沟通效率也比较低。所以,面对第三方,我们还是要慎重,慎重,再慎重。

开发这几年,也用了不少 SDK ,当然也遇到了一些问题:

  1. 友盟 SDK 缓存问题。一旦 app 将友盟的缓存删除,等到下次进入的时候就会崩溃,猜测是缓存没有校验导致的崩溃。
  2. 个推 SDK 适配平台问题。在 iOS 10 的时候,个推更新时需要添加一个新的静态库,但是这个库只能在 iOS 10 上使用,所以会在低系统设备上崩溃。只需将这个静态库的参数从 required 改为 optional 就可以了。
  3. 百度统计 SDK ,会 hook 住系统组件的一些方法,比如 UITableView 的 scrollViewDidEndDragging:willDecelerate: 方法,这个方法会在部分最新的 iPhone XS、iPhone XR 上崩溃。

当然还有一些坑可能跟自己对第三方不够了解有关系,或者第三方隐藏特性有关系。

不管怎样,面对第三方库,我们最好就是慎用,尤其是用户量到达了一定的量。

  1. 如果老 SDK 不稳定,会导致部分崩溃。如果崩溃量大,果断升;如果崩溃量很小,等到更新一段时间后看看有没有继续更新,根据更新的频率再选择升级。
  2. 如果老 SDK 稳定,要看需求;如果需要新版 SDK 的功能,果断升级;如果不需要,果断不升。

猜你喜欢

转载自blog.csdn.net/jianghui12138/article/details/83898089