ANR:
应用程序无响应(ANR:Application Not Responding)对话框。用户可以选择让程序继续运行,但是,他们在使用你的应用程序时,并不希望每次都要处理这个对话框。因此,在程序里对响应性能的设计很重要,这样,系统不会显示 ANR 给用户。
Activity 5 秒 broadcast10 秒耗时的操作 worker thread 里面完成, handler message…AsynTask , intentservice.等…
ANR:Application Not Responding,即应用无响应
ANR一般分为三种类型:
①KeyDispatchTimeout(5 seconds) 主要类型:按键或触摸事件在特定时间内无响应
②BroadcastTimeout(10 seconds)BroadcastReceiver: 在特定时间内无法处理完成
③ServiceTimeout(20 seconds) 小概率类型:Service 在特定的时间内无法处理完成
如何定位ANR是前端问题还是后端问题?
1.首先确定是界面问题还是功能性问题
如果是界面问题,如文字错误,样式错误,等,则需要截图
如果时功能问题,控制台的问题至少定位到www的问题还是数据库问题,如果是www问题至少要定位到是前端还是后端问题;如果是数据库问题至少要定位到 是服务端接口问题还是中间件问题。
2.前端bug主要分为3个类别:HTML、CSS、Javascript三类问题
最大的区别方法:
出现样式的问题基本都是CSS的bug
出现文本的问题基本都是html的bug
出现交互类的问题基本都是Javascript的bug
3.我们可以从接口url是否正确,传参是否正确,如果是接口URL,传参不正确,解释前端问题;
后端问题:响应是否正确,如果不正确,就是后台不正确,具体判断是不是后端的问题。我们可以查看报错日志,通过日志分析问题,可以查看数据库确认数据的正确性,也可以查看缓存是否正确
ANR是什么以及如何定位是前端问题还是后台问题?
最新推荐文章于 2023-09-03 10:18:44 发布