android 各种偶现问题记录

1.activity设置singleTop,但是还是启动两次

根本原因:启动这个activity两次,并且启动他们的那个activity被finish了,所以看出的现象是activity设置了singleTop但是启动两次并且栈最上面两个都是此activity。

举例:有activity a,activity b,activity c。其中activity c设置的是singleTop启动模式。

描述:a有点击事件可以到b,b经过一些数据初始化等等操作然后启动c,并且finish b。

过程:此时连续多次点击a中的点击按钮,就可能出现启动多个b界面,b的界面会启动c。如果第一个b界面启动了c,此时栈中有a c,然后又响应了点击事件,此时栈中就是a c b c,然后由于b启动c然后又调用了finish,所以栈中就是a c c,所以会出现即使c设置了singleTop启动模式也会启动两个c并且都在最上面的情况。

解决方案:在a的点击事件中加入防抖即可。

2.弱网环境下的一系列偶现问题排查

弱网大概率出现问题的现象排查流程

弱网可以影响的是什么?就是和服务端的交互哈,那就排查和服务端交互相关的即可

怎么排查?根据出现的现象来排查出现此现象中流程所有的与云侧交互的过程,一般是请求服务端接口,然后将请求服务端接口的地方直接加上耗时操作测试是否会出现和偶现的现象一致。

3.界面关闭重新启动然后出现问题,但是界面关闭杀掉进程就没有问题的现象?

此现象排查流程是杀掉进程和不杀掉进程的区别。杀掉进程会将缓存的数据清除掉,不杀掉进程就不会,所以一般都是前一次的数据影响了后一次的数据,一般就是在界面关闭的时候释放资源。根据不同的api进行不同的调用释放资源。

4.当第三方包升级后可以下载下来,不能打包问题?

此时可以怀疑第三方包兼容问题,可以还有其他地方用了相同的第三方包,当此处升级了包,其他地方没有升级包就会造成此问题,可以查看依赖树是否有其他地方依赖了此个第三方包,修改版本一致即可。

查看依赖项参考:Android Studio查看第三方库依赖树_大鱼Ss的博客-CSDN博客_android studio 查看依赖树

猜你喜欢

转载自blog.csdn.net/gongjdde/article/details/126661931