安卓如何实时获取网页字节数据大小

安卓如何实时获取网页字节数据大小,第1张

[Android]安卓在代码中实时获取控件尺寸的几种方法

本篇博客已收录到我的安卓开发小结中——点击安卓开发小结

1、已知控件大小,想知道他在不同设备上的px值。

使用TypedValueapplyDimension方法。

如果这个控件你知道了大小,但不知道在各个设备上的大小,可以使用TypedValueapplyDimension方法来获取实际大小。getResources()getDisplayMetrics()方法Activity类和View中都有提供,因此可以在Activity和自定义View中都可以使用这个方法。

int ballRadius = (int) TypedValueapplyDimension(TypedValueCOMPLEX_UNIT_DIP, BALL_RADIUS, getResources()getDisplayMetrics());

1

2

1

2

applyDimension是androidutilTypedValue类下的一个静态方法,可以看到这个方法的作用就是将value的值换算为dp、sp等对应的px值,因为在实时运行过程中很多方法接受的是px值,而不是xml中的dp值。

public static float applyDimension(int unit, float value,DisplayMetrics metrics)

{

switch (unit) {

case COMPLEX_UNIT_PX://获得value作为px值对应的px值

return value;

case COMPLEX_UNIT_DIP:

return value metricsdensity;//获得value作为dp值对应的px值

case COMPLEX_UNIT_SP:

return value metricsscaledDensity;//获得value作为sp值对应的px值

case COMPLEX_UNIT_PT:

return value metricsxdpi (10f/72);

使用fiddler

关于android 获取请求地址的详细例子请参考android学习手册,android学习手册包含9个章节,108个例子,源码文档随便看,例子都是可交互,可运行,  源码采用android studio目录结构,高亮显示代码,文档都采用文档结构图显示,可以快速定位。360手机助手中下载,图标上有贝壳

Fiddler是类似代理服务器的形式工作,它能够记录所有你的电脑和互联网之间的>

2、方法优劣

[优点]:

1)Fiddler *** 作简单、方便、功能强大

2)能实时抓包,可模拟修改请求

2)只需要手机支持代理即可

3)适用广,安卓、Iphone、Ipad、WinPhone等支持代理手机均适用

[缺点]:

1)电脑需要安装Fiddler

2)测试手机需要支持Wifi

3)测试手机与电脑需要同一网络

4)所测APP需支持代理

3、准备工作

1)检查电脑网络连接

a使用同网络内的另一台电脑)ing本机,检查是否连通正常。

原因:我之前测HTML5项目就发现Fiddler代理抓不到包,手机设置均正确,后发现是网络内找不到本机,本机防火墙设置问题。

另外需要关注是否同一网络,如果手机GPRS等上网,你在局域网内抓包哥觉得你可以改行了

(约定:后文所述Fiddler所在电脑均称为本机)

2)Fiddler安装

a下载地址: >

b安装:省略(下一步下一步即可)

3)Fiddler配置

a允许远程计算机连接Fiddler

菜单:Tools-> Fiddler Options->Connections,勾选"Allow remote computers to connect"

注:8888为默认端口号,可修改,但需注意两点,一是本机空闲端口,二是手机代理设置时端口要一致。

b配置可捕获>

菜单:Tools-> Fiddler Options->Connections,勾选"Capture >

再勾选"Decrypt >

注1:勾选项英文不认识,请Google,不另做解释

4)手机安装>

a首先确定Fiddler所在电脑的IP地址:例:19216888

b打开被测手机浏览器,访问>

注:Iphone、Ipad安装则很简单,点击安装即可。Android安装稍微麻烦点,则需要先设置手机锁屏密码、PIN码,安装证书时会提示,按步骤走即可。

4、实例

ThinkDrive抓包实例

一期测试时,涉汲到APP安全测试,因此需要查看传输数据是否存在明文密码等。

1)开启Fiddler,确定本机IP、Fiddler端口号

本机IP:19216888

Fiddler端口号:8888

2)手机连接本机所在同网络Wifi,设置代理

a代理主机名:Fiddler所在电脑IP

b代理服务器端口: Fiddler使用的端口

3)APP *** 作,生成请求数据

a例:登录

b例:退出登录

4)分析Fiddler抓包数据

a例:登录请求分析

1)双击查看登录请求,选择WebForms或JSON等其他类标签,查看请求参数值,对照接口文档及你想要测试的点分析,请求是否正确,查看返回数据是否正确。

2)同帐号,不同密码;不同帐号,同密码等测试用例,测试多次登录后发现,密码仅为MD5加密,没有对密码进行很好的加密传输

3)分析存在以下问题:

问题1:帐号密码采用>

问题2:密码虽采用MD5加密,但传输未加密,简单密码可以在线解密(图中密码在线解密不到1秒:123qwe);

问题3:密码不解密也一样可以登录,通过A帐号在app登录,再用sniffer得到的B 帐号与密码(MD5值),使用Fiddler修改A帐号的请求完成B帐号在APP登录。

注1:Fiddler功能使用,请Google或百度,此处不详说

注2:以上实例仅为参考,具体测试,以所相关业务及测试目标为导向进行测试分析。

5、其他

本文虽主要对Android手机抓包举例,但其目的是说明,不管是电脑,还是手机,还是其他上网终端,都可以通过代理的方式来抓包(HTTS、>

以上就是关于安卓如何实时获取网页字节数据大小全部的内容,包括:安卓如何实时获取网页字节数据大小、如何抓取Android内嵌网页地址、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/10071622.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存