ADB介绍
ADB全称Android Debug Bridge, 是android sdk里的一个工具, 用这个工具可以直接操作管理android模拟器或者真实的andriod设备(如G1手机)
它的主要功能有:
运行设备的shell(命令行)
管理模拟器或设备的端口映射
计算机和设备之间上传/下载文件
将本地apk软件安装至模拟器或android设备
配置ADB环境变量
打开:adt-bundle-windows-x86_64_20140101文件
找到adb.exe所在路径
配置ADB_HOME环境变量
参考java环境变量配置
显示成功:
ADB常用指令
查看设备:adb devices
这个命令是查看当前连接的设备, 连接到计算机的android设备或者模拟器将会列出显示
安装软件:adb install -r (APK路径)
-r 代表如果apk已安装,重新安装apk并保留数据和缓存文件。apk路径则可以直接将apk文件拖进cmd窗口,记得加空格。
卸载软件
adb uninstall <软件名>
adb uninstall -k <软件名>
如果加 -k 参数,为卸载软件但是保留配置和缓存文件
问程序员--com.example.test
登录设备shell
adb shell
adb shell
这个命令将登录设备的shell.
后面加将是直接运行设备命令, 相当于执行远程命令
查看手机内存情况
adb shell dumpsys cpuinfo
查看内存情况
adb shell getprop | findstr dalvik 本机内存的使用情况
查看应用内存使用情况
adb shell dumpsys meminfo +包名:应用的内存使用情况
列出手机装的所有app的包名:
adb shell pm list packages
列出系统应用的所有包名:
adb shell pm list packages -s
列出除了系统应用的第三方应用包名:
adb shell pm list packages -3
adb logcat 查看手机日志
adb logcat 命令格式 : adb logcat [选项] [过滤项], 其中 选项 和 过滤项 在 中括号 [] 中, 说明这是可选的;
在命令行中输入 adb logcat --help 命令, 就可以显示该命令的帮助信息;
">"输出 : ">" 后面跟着要输出的日志文件, 可以将 logcat 日志输出到文件中, 使用adb logcat > log 命令
指定 logcat 的日志输出格式 :
-- "-v"选项 : 使用adb logcat -v time 命令, 可以查看日志的输出时间;
"process"格式 : " 优先级 (进程ID) : 日志信息 ", 使用adb logcat -v process 命令;
将手机日志输出到本地文件中
adb logcat -v time process > C:/log/aa.txt
有多台设备是adb选择设备
adb -s 设备名称 logcat -v time process >C:/log/aa.txt
Android 的日志分为如下几个级别:
V —— Verbose(最低,输出得最多)
D —— Debug
I —— Info
W —— Warning
E —— Error
F —— Fatal
S —— Silent(最高,啥也不输出)
按某级别过滤日志则会将该级别及以上的日志输出。
比如,命令:adb logcat *:W 将 Warning、Error、Fatal 和 Silent 日志输出
显示所有优先级大于等于“warning”的日志
APK牢固性(加密)
应用加固
防篡改:通过完整性保护和签名校验保护,能有效避免应用被二次打包,杜绝盗版应用的产生;
防逆向:通过对代码进行隐藏以及加密处理,使攻击者无法对二进制代码进行反编译,获得源代码或代码运行逻辑;
防调试:通过反调试技术,使攻击者无法调试原生代码或Java代码,阻止攻击者获取代码里的敏感数据。
网上有很多Apk加固的第三方平台,最有名的应当属于:爱加密和梆梆加固了。其实加固说的简单点就是对源Apk进行加密,然后在套上一层壳即可