PJSIP集成到Android项目的历程

             刚进公司时,接手了一个项目。项目中有一个模块就是PJSIP,遇到的问题就是稳定性差,莫名的Crash。

             大家可能都会有这种经验,当点击某一个按钮,导致程序崩溃,遇到这种问题通常容易解决。解决方式就是查看这个点击事件具体的操作,然后对操作进行调试就能很快的发现并解决问题。但是遇到这种稳定性的问题,并且设计到JNI,就需要大量的测试,来定位问题,再考虑解决办法。

             导致稳定性差可能有以下两种原因:

             1.项目代码导致的

             2.PJSIP代码导致的

             对于第一个情况,自定义了CrashHandler,引用第三方日志管理工具,用于手机Crash的日志,对日志进行分析,以便于确定问题的来源。

            对于第二种情况,由于涉及到JNI以及so库的原因,无法收集到有意义的日志。因此需要先把手机root,然后在data/tombstones目录下会记录每次底层Crash的日志,该日志会给出那个.so库出问题,以及简单的异常信息描述。

           概括而言,经过N次的测试、调试,最终发现是资源释放的问题,包括把还在使用的资源释放或者没有回收未使用的资源。

          

           

             

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值