ANR----以及如何定位是前端问题还是后台问题?
答:
ANR全称:Application Not Responding,也就是应用程序无响应
以及如何定位是前端问题还是后台问题
答:
- 进入完成的功能页面摁F12或点击鼠标右键检查进入控制台看Console信息是否有红色报错
- 在Network查看状态码
100 (继续)
101 (转换协议)
101状态码是指服务器将按照其上的头信息变为一个不同的协议
200 (OK/正常)
200意思是一切正常。一般用于相应GET和POST请求
201 (已创建)
201表示服务器在请求的响应中建立了新文档;应在定位头信息中给出它的URL。
202 接受
202告诉客户端请求正在被执行,但还没有处理完。
203表示文档被正常的返回,但是由于正在使用的是文档副本所以某些响应头信息可能不正确。
204 (SC_NO_CONTENT)确保浏览器继续显示先前的文档。
205 (Reset Content/重置内容)
重置内容205 (SC_RESET_CONTENT)的意思是虽然没有新文档但浏览器要重置文档显示。这个状态码用于强迫浏览器清除表单域。这是 HTTP 1.1中新加入的。
206 局部内容
206是在服务器完成了一个包含Range头信息的局部请求时被发送的。
300 表示被请求的文档可以在多个地方找到,并将在返回的文档中列出来。
301状态是指所请求的文档在别的地方;文档新的URL会在定位响应头信息中给出。
302 状态码302是非常有用的因为浏览器自动连接在定为响应头信息中给出的新URL。
303这个状态码和 301、302 相似,只是如果最初的请求是 POST,那么新文档(在定位头信息中给出)药用 GET 找回。这个状态码是新加入 HTTP 1.1中的。
304 为修正
305表示所请求的文档要通过定位头信息中的代理服务器获得。
307临时重定向浏览器处理307状态的规则与302相同。
400指出客户端请求中的语法错误。
401 (Unauthorized/未授权)
403意思是除非拥有授权否则服务器拒绝提供所请求的资源。
404 (Not Found/未找到)
404状态每个网络程序员可能都遇到过,他告诉客户端所给的地址无法找到任何资源。
405指出请求方法(GET, POST, HEAD, PUT, DELETE, 等)对某些特定的资源不允许使用。
406表示请求资源的MIME类型与客户端中Accept头信息中指定的类型不一致。
407与401状态有些相似,只是这个状态用于代理服务器。
408是指服务端等待客户端发送请求的时间过长。
409状态常被用于试图上传版本不正确的文件。
410是在指导文档已被移走的情况下使用,而404则用于未知原因的无法访问。
411表示服务器不能处理请求除非客户端发送Content-Length头信息指出发送给服务器的数据的大小。
412状态指出请求头信息中的某些先决条件是错误的。
413告诉客户端现在所请求的文档比服务器现在想要处理的要大。
414状态用于在URI过长的情况时。
415意味着请求所带的附件的格式类型服务器不知道如何处理。
416表示客户端包含了一个服务器无法满足的Range头信息的请求。
500是常用的“服务器错误”状态。
501状态告诉客户端服务器不支持请求中要求的功能
502该状态指出接收服务器接收到远端服务器的错误响应。
503 (Service Unavailable/服务无法获得)
状态码503 (SC_SERVICE_UNAVAILABLE)表示服务器由于在维护或已经超载而无法响应。例如,如果某些线程或数据库连接池已经没有空闲则servlet会返回这个头信息。服务器可提供一个Retry-After头信息告诉客户端什么时候可以在试一次。
504
该状态也用于充当代理或网关的服务器;它指出接收服务器没有从远端服务器得到及时的响应。
505状态码是说服务器并不支持在请求中所标明 HTTP 版本。
根据状态码进行判断是前端或是后端
- 查看文档日志
- 但是日志容易在更新后会被覆盖
4前端错误 js css JavaScript 静态资源的错误
5Activity的onCreate和onResume回调中尽量避免耗时的代码,应该尽可能的做比较少的事情,其实,任何执行在UI线程中的方法都应该尽可能简短快速。类似网络或者DB操作等可能长时间执行的操作,或者是类似调整bitmap大小等需要长时间计算的操作,都应该执行在工作线程中。
6.前端错误主要在页面UI上如页面布局和页面展示信息、信息无法获取等错误
7.后端对接口进行测试可以使用Postman测接口