欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Windows Phone真机抓包并分析应用程序的网络通讯(Android、iPhone也适用)

程序员文章站 2022-03-02 14:53:37
  学习WindowsPhone开发已经有一段时间了,喜欢装各种软件并思考他们是如何实现的,最近用了一个软件 “吾得地图生活服务助手&r...

 

学习WindowsPhone开发已经有一段时间了,喜欢装各种软件并思考他们是如何实现的,最近用了一个软件 “吾得地图生活服务助手”,功能挺多的,它用到了一些Google和MapABC的API,我想看看它到底用到了哪些API,于是想到了下面这个方法。

首先电脑要有无线网卡,手机支持WiFi,然后用Windows 7 系统的netsh命令创建一个虚拟WiFi,手机连接这个WiFi上网,在电脑用WireShark抓取虚拟WiFi的数据包。

详细步骤:

在Windows 7系统下,到C:\Windows\System32目录下找到cmd.exe,在cmd.exe右击“以管理员身份运行”(直接运行没有管理员权限,命令执行会失败)。

输入 netsh wlan create hostednetwork mode=allow ssid=cmd key=12345678 回车,创建一个虚拟WiFi,ssid为WiFi的名字,key为密码

继续输入 netsh wlan start hostednetwork 启动虚拟WiFi。

到网络连接里查看,已经创建成功。

Windows Phone真机抓包并分析应用程序的网络通讯(Android、iPhone也适用)

然后在能上网的网络连接上右击,选择属性->共享,给虚拟WiFi启用共享。

Windows Phone真机抓包并分析应用程序的网络通讯(Android、iPhone也适用)

 

如果是WindowsXP系统,没有netsh wlan命令,可以用另一个软件Connectify来创建虚拟WiFi,其他步骤都是一样的。

WP手机搜索WiFi并连接这个虚拟WiFi热点,手机就可以通过电脑的虚拟WiFi上网了。

电脑上启动WireShark抓包软件,选择 "Capture"->"Options",注意选择虚拟的WiFi网络连接,

ip地址是192.168.2.1的是虚拟WiFi网络连接,取消勾选"Capture packets in promiscuous mode",按下图设置

Windows Phone真机抓包并分析应用程序的网络通讯(Android、iPhone也适用)

点击"Start"按钮开始抓包,手机上并运行”吾得地图生活服务助手“,查看WireShark,有HTTP/1.1 200 OK是http请求成功的数据包。

Windows Phone真机抓包并分析应用程序的网络通讯(Android、iPhone也适用)

右击这条数据选择”Follow TCP Stream“查看数据包详细信息,如下图

Windows Phone真机抓包并分析应用程序的网络通讯(Android、iPhone也适用)

这条数据是Google天气预报的api

http://www.google.com/ig/api?hl=zh-cn&weather=nanjing

其他功能是如何实现的都可以抓出来,下面是我抓取的其它功能的api

地点提示:

http://search1.mapabc.com/sisserver?highLight=false&resType=json&enc=utf-8&config=TIP&ver=2.0&searchName=%E7%BF%A0%E5%B1%8F%E6%B8%85&cityCode=025&a_k=4e2c1f98aec0d8df790a8b327f5dff277cfbadf3655c47d121a1bd9ad2935911b5ed9c578e938650

字段说明

%E7%BF%A0%E5%B1%8F%E6%B8%85 翠屏清的url编码
searchName 搜索关键字
cityCode 城市区号, 搜全国为total
number 返回数量
batch 第几页
a_k MapABC的地图API Key

地名转换为经纬度

http://search1.mapabc.com/sisserver?highLight=false&srctype=DIBIAO:10000%2BPOI&config=BESN&searchName=%E5%8F%8B%E8%B0%8A%E5%AE%BE%E9%A6%86&cityCode=total&searchType=&number=10&batch=1&a_k=fd9451c6128710ffbc37d9481b002ff36665d039ee0febfd85df0ad471ebcf9204192849326faba3&resType=JSON&enc=utf-8&sr=0

地图图片取图

http://emap2.is.autonavi.com/appmaptile?x=847&y=416&z=10

实时路况取图

http://tm.mapabc.com/trafficengine/mapabc/traffictile?x=1699&y=831&zoom=6

公交换乘

http://search1.mapabc.com/sisserver?highLight=false&srctype=BUS:20%2BDIBIAO%2BPOI&config=BESN&cityCode=025&searchType=&number=20&batch=1&resType=JSON&enc=utf-8&sr=0&searchName=%E7%BF%A0%E5%B1%8F%E6%B8%85%E5%8D%8E%E5%9B%AD&a_k=fd9451c6128710ffbc37d9481b002ff36665d039ee0febfd85df0ad471ebcf9204192849326faba3

http://search1.mapabc.com/sisserver?highLight=false&config=SPAS&ver=2.0&resType=json&enc=utf-8&spatialXml=%3Cspatial_request%20method=%22searchPoint%22%3E%3Cx%3E118.7757325%3C/x%3E%3Cy%3E32.012667654105%3C/y%3E%3Cxs%3E%3C/xs%3E%3Cys%3E%3C/ys%3E%3CpoiNumber%3E1%3C/poiNumber%3E%3Crange%3E1%3C/range%3E%3Cpattern%3E1%3C/pattern%3E%3CroadLevel%3E0%3C/roadLevel%3E%3Cexkey%3E%3C/exkey%3E%3C/spatial_request%3E&a_k=fd9451c6128710ffbc37d9481b002ff36665d039ee0febfd85df0ad471ebcf9204192849326faba3

 

http://search1.mapabc.com/sisserver?highLight=false&config=BR&ver=2.0&x1=118.78394&y1=31.944741&x2=118.767525&y2=32.080544&cityCode=025&per=150&routeType=0&resType=json&enc=utf-8&a_k=fd9451c6128710ffbc37d9481b002ff36665d039ee0febfd85df0ad471ebcf9204192849326faba3

0 最快捷
1 最经济
2 最少换乘
3 最少步行
4 最舒适

下面这个是搜搜地图的换乘api

http://map.soso.com/?qt=bus&cond=0&&start=1$$$$118.78394%2C31.944741$$$$$$&dest=1$$$$118.767525%2C32.080544$$$$$$&nosub=0&mid=0&output=json

驾车路线查询

http://search1.mapabc.com/sisserver?highLight=false&resType=json&enc=utf-8&&config=R&ver=2.0&x1=118.7835921&y1=31.9449493&x2=118.7754104&y2=31.9925792&cityCode=025&per=150&avoidanceType=0&routeType=0&a_k=4e2c1f98aec0d8df790a8b327f5dff277cfbadf3655c47d121a1bd9ad2935911b5ed9c578e938650

公交线路名称

http://search1.mapabc.com/sisserver?highLight=false&resType=json&enc=utf-8&&config=R&ver=2.0&x1=118.7835921&y1=31.9449493&x2=118.7754104&y2=31.9925792&cityCode=025&per=150&avoidanceType=0&routeType=0&a_k=4e2c1f98aec0d8df790a8b327f5dff277cfbadf3655c47d121a1bd9ad2935911b5ed9c578e938650

公交站点查询

http://search1.mapabc.com/sisserver?highLight=false&resType=json&enc=utf-8&&srctype=BUS:20&config=BESN&ver=2.0&searchName=%E7%BF%A0%E5%B1%8F%E6%B8%85%E5%8D%8E&cityCode=025&number=5&resData=1&a_k=4e2c1f98aec0d8df790a8b327f5dff277cfbadf3655c47d121a1bd9ad2935911b5ed9c578e938650

公交线路查询

http://search1.mapabc.com/sisserver?highLight=false&resType=xml&enc=utf-8&&config=BusLine&ver=2.0&ids=320100019006&cityCode=025&number=1&resData=1&batch=1&a_k=4e2c1f98aec0d8df790a8b327f5dff277cfbadf3655c47d121a1bd9ad2935911b5ed9c578e938650

在某个地点附近周边查询

http://search1.mapabc.com/sisserver?highLight=false&resType=json&enc=utf-8&srctype=POI&config=BELSBXY&sr=0&range=3000&searchName=%E7%BF%A0%E5%B1%8F%E6%B8%85%E5%8D%8E&cityCode=025&cenX=118.7593684&cenY=32.0926858&searchType=&number=10&batch=1&a_k=4e2c1f98aec0d8df790a8b327f5dff277cfbadf3655c47d121a1bd9ad2935911b5ed9c578e938650

哈哈,软件的功能都知道是如何实现的了,你也可以做一个类似的软件了。

 

作者 YinKaiSheng

<script></script>