日常搬砖 百度地图 一个log 引发的血案

说多了都是泪。当发现问题之后,一切都索然无味了。

话说昨天,我还是开开心心都摸鱼,测试拿着android包 开开心心的边摸鱼边测试。
然后,测试一台又一台,我摸鱼摸鱼又摸鱼,当她拿着那个垃圾手机过来当时候,我就知道我无法继续摸鱼了,定位导致 app 崩溃了?啊哈?昨天都是好好的啊。

StackOverflowError 这个bug 有点熟悉啊,定位也会?

好吧,定位是不会出现的这个问题的。

那就是 代码写得有问题。emmmm?
我记得我就打印了一个log 啊。把百度定位返回的对象转json 打印出来。机智的我并没有发现 我的log 工具是为了 打印出所有内容 自己搞了一下的那种。于是轻易的放过了这个罪魁祸首。

但是呢,有一个直接写到activity 里面的定位 是没有问题的(因为我没有打log),于是我就把activity里面的代码 用CV大法让崩溃不崩溃了。

emmmmm?这个知识点盲区 需要扫一下。

前景一下,测试呆萌呆萌的开了一个http监听 然后去定位百度,然后,定位不了,她让我看一下,我就打印了一个log.
好了。因为我们是两个Android,之前定位是另外一个大佬写在activity里面的,而我的定位需要在fragment 里面,然后 我就通过OnLifecycleEvent 监听 生命周期,在一个独立的class里面 处理定位的相关事情,而且百度返回的对象挺大的,我就本地搞了一个简化版的。通过OnLifecycleEvent 这样就不用重写 生命周期了,我真是一个天才。 因为这种写法我是第2次写,也没有遇到这种问题,我就觉得是我的写法有问题,然后我通过
getApplicationContext 搞了一个 app 生命周期一样长的LocationClient,然后还是有问题,然后就是漫长的思考人生了。

然后我猛然想起,之前都是好好的,我就加了一个log ,是不是 log 有问题哦,然后 我把log 注释掉了,然后bug 就没有了。

再说说 为啥 我log 在打包的时候没有关掉,因为 我还没有在 buildConfigField 中配置是否要显示 log 。嘻嘻。

算了,我去改我的log 工具去了,告辞。

你可能感兴趣的:(日常搬砖 百度地图 一个log 引发的血案)