Android Api的那些事
in AndroidToolsResources with 3 comments
Read: 252

Android Api的那些事

in AndroidToolsResources with 3 comments

前言

Android的开发是一个服务端与客户端协作的过程,但是在客户端开发中或多或少的会遇到关于Api请求的相关问题,比如为什么请求失败了,哪里请求失败了,以及这个请求的相关属性问题,在这篇文章,我们将介绍android api请求的相关技巧

Step 1

或多或少的,大家都知道Postman这个工具,这个工具的作用主要是用作测试接口,确定接口的可用性,以及在请求的相关结果的查看等功能,然后通过工具,我们可以在不编译运行android程序去获取api的返回结果,然后我们得到json后,在通过相关在线json工具进行格式化,然后我们就可以进行分析json的返回数据啦

Step 2

Charles是一个非常不错的抓包工具,在这个抓包工具中,我们可以抓取每一个请求,包括本地的pc web请求,同时也包含moblile的相关http请求

通过这种方式,我们就可以抓取到app中具有哪些的请求,然后我们就可以进行相关的分析与设计操作

但是Charles和模拟器绑定,需要几个操作:

注意:8888为charles的代理端口,这个地方需要注意,然后我们打开Charles就会检测到mobile的请求了,这个时候allow请求即可

Step3

最近在开发app的时候,遇到这样的需求,H5--> Native app ,再加上服务端的一些问题,所以,我们只好自力更生了,我的操作是:首先通过charles去抓取到相关的接口,然后得到json,然后去编写实体类,然后在去进行相关的native app的请求

在这里,我们需要打开:

在这里,我们可以这么去理解:

分析:我们的ide去发出run的命令,然后发出到模拟器,模拟器在进行http请求后,charles进行拦截,拦截后进行request请求,请求后得到的response后返回到charles,然后,得到数据后返回到模拟器中,然后,我们的模拟器的logcat日志就会被ide去捕捉到(以上分析是自己的分析)

在这里,我们查看下charles给我们捕捉到的信息:

通过这些数据,我们可以充分的分析这次请求的所有的参数设置

对于Post的请求,charles也可以帮我们捕捉到:

通过这些参数,那么,我们就可以更加合理的去分析和完善我们的这次api请求

Step4

对于抓包,我们可以扩展下,比如,我们可以去抓取某些app的api请求,在这里我们要排除下https的请求,以及对相关api对特殊处理的请求,这些请求我们的抓包工具是无法抓到的

在开发中,通过相关的工具的协作,可以提高我们的开发效率


Step End

Charles 4.1.1版本注册码

Registered Name:     https://zhile.io
License Key:         48891cf209c6d32bf4
Responses
  1. 博主是搞Android开发的吗?

    Reply
    1. @知道91博客

      额,目前是个学生,未来打算从事android开发

      Reply
  2. 一脸楞逼(/糊脸)

    Reply