阅读本文大约需要5分钟
背景:
《充电三小时偷跑23G流量》,《女子手机一夜跑50G流量》……
定义:
分为上传流量(发送)和下载流量(接收)。下载,就是浏览网页和上网会走信息流量,上传流量是将系统和软件的信息发给服务器。
功能:
纵向:
版本信息、本次流量、流量查询(通过菜单选择切换)
横向:
系统、第三方、全部(通过底部Tab选择切换)
关键类解析:
•apk信息相关类:
PackageManager->PackageInfo->ApplicationInfo
•安装,卸载应用
•查询permission相关信息
•查询Application相关信息(application,activity,receiver,service,provider及相应属性等)
•查询已安装应用
•增加,删除permission
•清除用户数据、缓存,代码段等
ApplicationInfo是从一个特定的应用得到的信息。这些信息是从相对应的Androdimanifest.xml的< application>标签中收集到的。
pm命令介绍:
PackageManager的缩写,命令功能与该类相近
获取流量类:
TrafficStats,可获取手机从开机至当前时间的上传、下载流量情况,可只获取Mobile流量,也可以获取Mobile与Wifi的总量
记录数据类:
SQLiteDatabase,增删改查
广播:
关机、重启、日期改变
上下文:
Context
。有Application、Activity和Service三种类型。弹出Toast、启动Activity、启动Service、发送广播、操作数据库等等都需要用到Context。
特殊场景:比启动Activity,还有弹出Dialog。参考传送门