AndroidGTFAQ收集使用GT需要做哪些准备1.
手机需要Android4.
x以上系统.
2.
手机需要root.
主要需要root的功能有:FPS、MemAssistant、Logcat日志、抓包、流畅度获取.
3.
手机的root需要支持对App授权.
如不支持,可以将GT打成手机的内置应用,具体方法请自行百度或参考此文http://gt.
qq.
com/docs/a/PowerstatUserGuide.
pdf4.
Android5.
x手机需要支持grep命令,如不支持,可以安装Busybox.
如何知道手机上的root是否支持对App授权进入GT的抓包插件,点击抓包,如果弹出"rootneeded"的提示,则说明手机未root或root不支持对App授权.
如何知道手机不支持grep命令在shell命令中,执行ps|grepsys,如果提示sh:grep:notfound,则说明手机不支持grep.
华为的手机,root很困难怎么办华为较新的手机如P8/荣耀7的root需要到其官网申请解锁,但即使这样也不会给app授权.
对于华为手机这样的情况,后续考虑在另一个开源工具APT上做Eclipse插件的方案解决.
Android6.
x无法保存记录的数据到手机存储无法唤出悬浮窗在Android6.
x手机上需要明确先给GT相应的授权,以Nexus5为例,在首次启动GT时,会弹出以下4项授权提示,请全部允许:请问AUT界面中的指标和参数编辑界面中的参数有什么区别AUT界面中选中的指标,会在出参界面中展示,因为手机屏幕小,所以采用了分屏展示的方式.
AUT界面选中的指标是针对目标调试应用的,而参数界面原来那5个指标,都是针对手机的.
pss0,pss1,这里序号"0","1"是什么意思说明选的目标调试App有至少2个进程,先启动的那个进程的pss值会被加后缀0,后启动那个会被加后缀1.
所有参数前面的"p"是代表该指标是对应目标调试App的某进程的指标,只有Pnet例外,Pnet是对应目标调试App的TCP流量消耗的累积值;其他的,pcp对应目标调试App的某进程的CPU消耗百分比;pjf对应目标调试App的某进程的CPU时间片的累积值;pss对应目标调试App的某进程的内存pss值;pri对应目标调试App的某进程的内存PrivateDirty值.
CPU百分比出现负数或经常是零多核手机在Andorid4.
3之前会出现这种情况,已知是Andorid系统bug.
建议将手机升级到Andorid4.
3及以上,或者使用CPU时间片(jiffes)指标替代CPU百分比指标.
pjf(进程的CPU时间片)是什么干什么用的关于CPU时间片的概念,请自行百度一下.
简单点说,它代表了进程实际对CPU的占用.
其实就是计算CPU百分比的分子,在调试中其比CPU百分比有用的多.
首先,其值不受其他进程的影响;其次,其不受CPU动态调频的影响;最后,在Android四核手机上CPU百分比普遍出现负值或超大值的情况下,其值是稳定的.
而在调试中,CPU时间片的值是个累积增长的曲线,也更易于比较.
安卓GT的流量调试,流量是针对单个app的还是整机的pnet是针对app的,NET是针对整机的.
pnet是在AUT页选的,NET是在出参页默认在disabled区域的.
当然,还是抓包后用wireshark分析比较严谨.
pnet为啥是应用的流量,而不是进程的流量目前GT采用的算法,无法在进程级别获取到准确有用的流量,而且主要支持Android4.
x的手机.
pnet为啥只能获取TCP流量而无法获取UDP的流量Android系统号称从4.
2.
2开始不区分TCP和UDP的统计了,但.
.
直到4.
4.
4都没有好用过.
.
有兴趣的同学可以在自己手机上检查下,一个方式是查询文件/proc/uid_stat//udp_snd和/proc/uid_stat//udp_rcv,第二种方式是通过TrafficStats类提供的getUidTxBytes(intuid)方法,该方法号称是获取到指定uid发送流量的总和,但实测情况是只有tcp层的流量.
psspri是什么pss对应目标调试App的某进程的内存pss维度值;pri对应目标调试App的某进程的内存PrivateDirty维度值.
pss和PrivateDirty的具体含义请自行百度,其中PrivateDirty可以简单理解为杀掉这个进程可以为系统释放的内存.
其直接查看对应的命令是adbshelldumpsysmeminfo.
为什么那个PSS的native部分值都是0~这个是正常的吗在Android4.
4之前,大部分手机native部分不是很小就是0,和统计归类方式有关,随着Android系统更新,在Unknown部分的是越来越小了.
PSS中的3个数据,total、Dalvik、native都代表什么的请参照前图,具体含义请百度Linux内存相关知识,需要注意的,TOTAL=Dalvik+Native+其他.
用GT统计目标调试应用的流量,只能统计到TCP流量是的,UDP流量在已知的Andorid手机上还无法统计到,这是Andorid系统自API12以来的bug,如果要看UDP的流量只能抓包了.
悬浮窗平时用不着,想屏蔽掉在菜单栏的→AirConsole中有个showAirConsole的开关,置成off即可.
小米的MIUI等系统无法显示GT的悬浮窗MIUI系统会默认屏蔽各种悬浮窗,包括GT的悬浮窗,我们可以手动打开:系统->应用->点开GT->勾选"显示悬浮窗".
月光宝盒插件,在屋里录制的轨迹,回放时为啥提示是空文件因为录的是GPS坐标信息,而你在室内,手机搜不到卫星,所以录制的是个空轨迹.
文件位置在/sdcard/GT/Log/GPS目录中.
使用月光宝盒的回放功能时,需要选中目标调试应用吗不需要.
它是给系统回放的.
使用月光宝盒回放的过程中用百度接口解析经纬度,解析出来的经纬度看着没怎么变,一直在100m以内录的是GPS坐标,所以注意要开GPS,另外,录完后,录制的文件在sdcard/GT/Log/gps目录下,可以直接打开,看下其内容,位置是否是变化的.
耗电调试插件,为啥输出的电流值看着不靠谱,温度值看着也不对耗电插件,很依赖于你手机电池模块的输出,这个插件目前发现支持Nexus4,Nexus5,中兴红牛,小米2,小米4,IUNI2手机.
其他手机一部分是只有电流值输出不准确.
一部分所有值输出都不准确.
另外,华为手机和LGg3输出的电流值也比较敏感,但不够准确,是否可用请自行实验评估.
内存填充是什么意思,这个是来模拟内存不足的情况吗我刚刚设置填充200m,到应用那边看可用内存没变啊要在正在运行的程序里看,填充的内存会全部加在GT上:安卓的GT有获取应用崩溃的log吗没有,不过可以通过日志模块去抓日志.
崩溃后,立即设置GT的日志为自动保存,然后切换到Logcat日志,就会自动保存下来,查看的话活用过滤和搜索.
请问那个悬浮窗我还没点击开始,为什么悬浮窗上的数据已经在变化了那是按秒的实时数据,点G&W,才会真的开始记录.
参数界面中为什么会有已取消关注的参数这些参数不重要吗每次调试关注的重点会不一样,不关注的拖到取消关注栏,这样清静一些(也会减少点GT本身的资源消耗).
根据自己的调试需要来确定关注的重点,比如关注进程的cpu、内存时,往往手机的信号强度就不需要关注.
请问android版GT检测到应用的上行流量和下行流量为负值是什么情况应该只在app重启的情况下存在,Android系统会如此输出,如发现其他情况,请在用户群里反馈.
想调查当app处于后台到底是app的什么因素导致耗电量增加的,这个怎么用GT实现从2.
2.
4版本开始,资源使用分析(又名应用耗电分析)插件从GT中移除,转而以独立App的形式提供,可以在GT官网下载PowerStat:http://gt.
qq.
com/download.
htmlPowerStat是干嘛用的这个APP目的是尽可能详细的列出一段时间内,影响单个应用耗电的不同因素的变化情况,除了可以对单个应用进程进行耗电量的估算,更主要的用途是对同一应用不同版本间耗电细节差别进行对比,或与竞品的耗电细节差别进行对比,这种耗电详情数据,可以更有利于指导开发进行产品优化.
统计的数据都是从上次拔下充电线开始,到当前时刻的累计值.
PowerStat的各种指标的意思,我还不太明白,比如时间片啊什么的.
耗电本质上是手机各个硬件模块在耗电,反映在对外接口上,有CPU(GPU)、网络模块、GPS等,前面列出来的是大头,主要考虑这几个的权重,每款手机系统都有各个模块耗电自己的权重配比.
除了模块方面,手机特别的一点,是,wakelock等会从休眠状态唤醒手机,这会带着其他应用组团耗电,所以wakelock也是需要单独关注的.
我通过CPU,流量,传感器等数据计算出来的电量值,绝对值可以当做APP的耗电值么不能的,绝对值是硬件功耗的维度,无法区分app的,你会发现算出来的,和实际消耗差别还是挺大的.
就是说最好还是用硬件去检测不是的,两个方向都需要.
因为从开发角度,能控制的只是代码,最多也就能控制到"调用不同硬件的次数或时间",他能优化的空间也无非是调这些.
而硬件检测出来的绝对值虽然准确些,但是就是个数字,对开发优化产品却是无用的.
每次使用时候需要插拔一下USB再开始调试拔插一下数据会置0,其实不拔插也行,因为数据是累加的,两次结果之间做减法即可.
但是,调试中间千万别拔插,因为一下清零,后面数据就对应不上了.
GTlog和耗时统计里面为啥一直没有输出这两个主要是需要配合gt_sdk自己输出的,可以装GT的demo试试.
OOM场景帮忙分析下,还是没头绪啊OOM在内存优化里其实还是比较容易的,*重点是根据你的经验找到问题重现步骤*.
先粗略的观测内存曲线,找到内存一直上涨的业务操作路径.
在OOM那刻,如果是java层的OOM会有明确的logcat日志的.
注意区分,Android系统因为内存不足自动回收的情况不算OOM.
OOM的监控建议使用另一工具Bugly.
请问一下,安卓版GT出参告警中告警区内的设置的时间、告警阈值怎么保存,退出出参数据展示界面后设置的时间、告警阈值都没有了告警设置后,要点输入法的"完成"键,才会设置成功.
AndroidGT插件-耗电调试-采样间隔设置250ms电量的采样,为什么没变化是UI刷新没变化,但实际上1s是采样4次的,你记录下历史记录就能看出来.
一般耗电量调试的流程标准是什么不同类型的应用不一样的标准,共同的是:不能比老版本差太多,不能比竞品差太多.
重点在"比较".
那么一般都分几个调试场景调试时长又是怎样的呢我想到的是比如后台运行、前台运行,静止等待采样,主要业务流程连续操作采样.
.
对的,场景划分和普通的调试场景没什么区别的,应该是比较简单的延续类场景.
关于时长,一般15分钟以上,然后比较的时候用每分钟平均值.
用第一个插件调试耗电,电流输出值为什么显示是负值呢在手机支持的前提下,最一般的情况是,你是接着充电线调试的,充电状态下电流会是负数.
另一种情况,华为系手机默认电流值放电状态是负值,充电状态是正值,在GT中已做了反转修正.
不同版本的Android系统,同一个APP内存占用差别很大是什么原因内存问题说来话长,大体上有3个情况参考下,不同的Android版本,其内存计算方式不同,特别是davilk虚拟机这层,不同Android版本其API占用的大小一定是不同的.
另一个情况,C层内存大小占用排除统计方式外,应该是类似的,但例外的情况是,开发针对不同Android版本做了不同的实现.
最后,Android应用本身可以根据手机分辨率大小不同,采用不同大小的资源文件,这对内存影响也很大.
关于内存,请参考:腾讯手机管家内存实战分析请问app当中页面跳转的耗时计算是怎么做的页面跳转耗时,GT没有从外部做这个,有代码的话,关心页面跳转过程中的,代码能够控制的部分即可,系统部分的耗时不需要关注,那个再慢你也无法直接优化.
还有个建议,跳转时观察流畅度的值,会有意想不到的收获.
有进程杀不死怎么办找到该进程的pid(可以用ps命令)→用kill-9命令杀死该进程.
AndroidGT抓包的两个问题:1.
早期手机系统Root不完整,导致停止抓包无效,需要退出GT才会真正停止.
2.
红米1的2G/3G抓包发现无法解析.
PartialWakeLock和fullWakelock有什么区别fullWakelock是如果你不人为灭屏,手机不会休眠,也不会自动灭屏;PartialWakeLock是如果你不人为灭屏,手机过一会儿会灭屏,但是不会休眠.
为什么看Logcat日志需要Root由于谷歌从CM10.
0/Android4.
1(果冻豆,Jellybean)开始更改了Android内部API,设备上的应用程序将需要root权限才能访问完整的logcat(应用程序现在仅限于自己生成的日志).
音视频质量可以通过GT来调试吗不能.
音视频的质量是他的编码格式就决定了的,看格式就知道了.
30秒的视屏流量大概要用多少抓几个包,腾讯视频,爱奇艺,优酷等,比一下就知道了.
另外,注意视频清晰度和帧率还是码率什么的,都影响到流量.
我安装了GT之后,入参列表咋是空的啊正常,入参是配合gt_sdk用的.
GT保存的文件目录在哪啊手机文件夹里找了两遍没找到在手机存储的/GT目录下,有时候连PC上看不到,是因为PC上目录变化刷新的不及时,手机上的文件管理软件能看到.
我把app进程杀死,然后用GT监控内存和CPU,为什么还会有数据的有的进程,如果有远程服务并有连接的话,服务端App杀了后会原地复活,只是进程号会变化,这种,GT会继续监测的.
有的工具如APT,因为是指定进程号的,那进程号变化就不会重新关联的.
抓包过程中,由于网络断了,抓包也中断了怎么办可以在抓包前调整抓包参数为"-iany",这样网络中断,切换的情况都不会抓包中断了.
但是注意这种情况是抓所有网卡的包,包括手机内部产生的包,所以在分析时注意做好过滤.
数脉科技怎么样?数脉科技品牌创办于2019,由一家从2012年开始从事idc行业的商家创办,目前主营产品是香港服务器,线路有阿里云线路和自营CN2线路,均为中国大陆直连带宽,适合建站及运行各种负载较高的项目,同时支持人民币、台币、美元等结算,提供支付宝、微信、PayPal付款方式。本次数脉科技给发来了新的7月促销活动,CN2+BGP线路的香港服务器,带宽10m起,配置E3-16G-30M-3IP,...
妮妮云的来历妮妮云是 789 陈总 张总 三方共同投资建立的网站 本着“良心 便宜 稳定”的初衷 为小白用户避免被坑妮妮云的市场定位妮妮云主要代理市场稳定速度的云服务器产品,避免新手购买云服务器的时候众多商家不知道如何选择,妮妮云就帮你选择好了产品,无需承担购买风险,不用担心出现被跑路 被诈骗的情况。妮妮云的售后保证妮妮云退款 通过于合作商的友好协商,云服务器提供2天内全额退款,超过2天不退款 物...
提速啦的来历提速啦是 网站 本着“良心 便宜 稳定”的初衷 为小白用户避免被坑 由赣州王成璟网络科技有限公司旗下赣州提速啦网络科技有限公司运营 投资1000万人民币 在美国Cera 香港CTG 香港Cera 国内 杭州 宿迁 浙江 赣州 南昌 大连 辽宁 扬州 等地区建立数据中心 正规持有IDC ISP CDN 云牌照 公司。公司购买产品支持3天内退款 超过3天步退款政策。提速啦的市场定位提速啦主...