ADB工具常用指令和使用情形分析
一、ADB常用命令:(不需要进到设备,也就是:不需要执行adb shell)
adb devices 列出所有的已连接的设备
adb kill-server 关闭adb
adb start-server 打开adb
adb devices 列出识别的设备
adb shell 连接android终端,可在其中进行一系列的操作(基于Linux的各种操作)
adb reboot 手机重启(前提是:设备已经进入调试模式)
adb remount 授权(一般是针对root版本,对于debug版本是不能授权的)
adb logcat 打印所有的log日志
adb push 将PC端文件推送到android设备端
adb pull 将android设备端文件“拉回”到PC端;[设备端文件路径,路径分隔用:/] [PC端路径,路径分隔用:\]
adb install -r xxx.apk (reinstall) 软件重装;如果软件之前在系统中已安装过,则使用重新安装指令
adb install -s xxx.apk 将软件安装在SD卡上,而不是内部存储
adb uninstall -k xxx.apk (keep) 卸载软件,但保留用户数据
adb root 获取root权限
adb shell am 命令是在cmd命令行中,通过显式指令来启动Activity/Broadcast/Service等
二、adb shell后可执行的指令
adb shell screencap –p ... 截取当前屏幕内容并保存
adb shell --> getevent|grep event0 连接ADB后,查看按键响应
adb shell pm ... 列出设备中的权限、应用程序信息
adb shell dumpsys activity (ActivityManager 系统服务的相关信息,包括android系统四大组件信息)
adb shell dumpsys meminfo 内存使用情况
adb shell dumpsys procstats -hour 3 查看过去的3小时内的进程使用
三、 Android设备安装应用程序apk时,adb install和adb push的比较
在使用YunOS时,遇到不兼容的问题;需要首先保证apk为指定签名文件签名后的apk文件;其次再去找其他问题。
使用YunOS时,push APK的做法:
1. 保证是root版本,需要烧录进root版本的boot文件(对应为userdebug版本)
2. adb shell 进入文件系统,/system/app,进入指定的apk文件目录,执行:rm -rf arm/(为啥要删除?)
3. 执行:adb push ... 将指定文件拷贝到指定目录并换名字
4. adb reboot
为什么要是root版本?在push文件时,其前提就是文件目录可读可写。
对于YunOS系统中的应用:在第一次安装到设备中,使用:adb push 方式安装apk;再一次安装时,可以选择 adb install 即可实现成功安装。
其他安装应用程序的方式:
adb install -r ...(指定地址的apk文件)
比较:
使用push的方式安装应用程序,会将系统原先存在的apk覆盖。
adb push 能够指定安装目录。比如执行"adb push xxx.apk system/app" 后,xxx.apk被安装到了system/app目录下,此目录下的软件为system application。
adb install 用此命令安装的软件位于 data/app 目录,则为user application。
四、Android设备在WIFI环境下的调试步骤
有些时候不能使用USB端口调试逻辑,转换思路:使用WIFI调试方式进行Logcat输出。
1. 使用数据线,打开调试模式;
2. PC端获取设备后,执行:adb tcpip 5555 (打开5555端口,并占用)
3. Android设备端连接与PC同一局域网的热点,并查看IP地址(举例:10.0.0.81);
4. PC端执行:ping 10.0.0.81,查看是否返回数据;
5. 执行:adb connect 10.0.0.81
经过上述5个步骤,就可以是用WIFI进行调试。
五、系统中斜杠“/”和反斜杠“\”的含义和区别
Unix使用斜杠作为路径分隔符,而Web应用中最先使用Unix系统,所以目前所有的网络地址都采用斜杠作为分隔符。
Windows由于使用斜杠作为DOS命令提示符的参数标识;为了避免混淆,采用反斜杠作为路径分隔符。目前Windows系统上的文件浏览器都是采用反斜杠作为路径分隔符。
结论:
1. 浏览器地址栏网址使用斜杠;
2. Windows文件浏览器上使用反斜杠;
3. 出现在HTML url()属性中的路径,指定的路径是网络路径时,必须使用斜杠;
4. 出现在普通字符串中的路径,如果代表的是Windows文件路径,则斜杠或者反斜杠都是一样的;如果代表的是网络文件路径,则必须使用斜杠;
ADB工具常用指令和使用情形分析的更多相关文章
- Adb工具常用操作-转(二)
一. PC与模拟器或真机交换文件(adb pull和adb push) 在开发阶段或其他原因,经常需要将PC上的文件复制到模拟器或真机上,或将模拟机和真机上的文件复制到PC上.使用adb pull和a ...
- Adb工具常用操作(一)
一.启动或关闭server 1.3 Android SDK中的常用命令行工具 在<Android SDK安装目录>\tools目录中带了很多命令行工具.虽然一般的开发人员并不需要完全掌握 ...
- shell分析日志常用指令合集
数据分析对于网站运营人员是个非常重要的技能,日志分析是其中的一个.日志分析可以用专门的工具进行分析,也可以用原生的shell脚本执行,下面就随ytkah看看shell分析日志常用指令有哪些吧.(log ...
- ADB常用指令
adb 命令是adb程序自带的一些命令:adb shell则是调用Android系统的命令,Android系统特有的命令都放在Android设备的/system/bin目录中 MonkeyRunner ...
- 从虚拟机指令执行的角度分析JAVA中多态的实现原理
从虚拟机指令执行的角度分析JAVA中多态的实现原理 前几天突然被一个"家伙"问了几个问题,其中一个是:JAVA中的多态的实现原理是什么? 我一想,这肯定不是从语法的角度来阐释多态吧 ...
- Linux 任务管理 && 常用指令
A.linux死机 转自:https://www.deleak.com/blog/2010/10/20/sysrq/ linux死机了怎么办? 曾经啊,对着键盘上 Print Screen/SysRq ...
- redis基础:redis下载安装与配置,redis数据类型使用,redis常用指令,jedis使用,RDB和AOF持久化
知识点梳理 课堂讲义 课程计划 1. REDIS 入 门 (了解) (操作) 2. 数据类型 (重点) (操作) (理解) 3. 常用指令 (操作) 4. Jedis (重点) (操作) ...
- 2.SDK目录结构和adb工具及命令介绍
安卓开发学习笔记 1.安卓开发之环境搭建 2.SDK目录结构和adb工具及命令介绍 1.SDK目录介绍: ******************************** add-ons:Androi ...
- ImageMagick常用指令详解
Imagemagick常用指令 (ImageMagick--蓝天白云) (ImageMagick官网) (其他比较有价值的IM参考) (图片自动旋转的前端实现方案) convert 转换图像格式和大小 ...
随机推荐
- springmvc跳转和重定向
如果springmvc返回的视图中带有redirect:或者forward:,springmvc会进行特殊处理, redirect:会执行重定向,forward:会执行转发操作! @RequestMa ...
- Jmeter学习一:Jmeter性能测试环境搭建(Windows下)
最近刚开始接触Jmeter性能测试,现总结环境搭建如下: 一.windows安装JDK步骤与环境变量配置: 1.先将下载的JDK安装到其默认目录:C:\Program Files\Java\jdk1. ...
- 全局修改Lable/Button字体
本次版本需求要把原来的字体全改掉,由于项目中有的是代码创建的,有的是XIB中直接改的,一个一个改工作量太大,使用运行时可以很轻松的实现 首先,项目中大多数设置字体的控件有 Lable, ...
- angularjs实现 checkbox全选、反选的思考
之前做了一周的打酱油测试,其实感觉其实测试也是上辈子折翼的天使. 好长时间没写代码,感觉好多都不会了. 感谢这周没有单休,我能看熬夜看奥运了.我能有时间出去看个电影,我能有时间出去逛个商城,我能有时间 ...
- lua 面向对象
对象的特点是: 对象拥有自己的数据,两个对象即使数据完全相同,他们也是相互独立的: 对象之间可以共享对象的行为,也就是他们的方法是一致的: lua中的table就非常适合作为一个对象,可以在table ...
- CodeBlocks配置pthread环境
参考资料:MinGW配置pthread环境 按[参考资料]里说的[下载资源]后,将libpthreadGC2.a放到codeBlocks安装目录下的MinGW\lib目录下,然后将pthread.h ...
- python基础07 函数
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 函数最重要的目的是方便我们重复使用相同的一段程序. 将一些操作隶属于一个函数,以后 ...
- [js]识别浏览器及版本
var userAgent = navigator.userAgent.toLowerCase();window.jQuery.browser = { version: (userAgent.m ...
- Analyze network packet files very carefully
As a professional forensic guy, you can not be too careful to anlyze the evidence. Especially when t ...
- iOS 解析json串
NSString *json = @"[{\"name\":\"a1\",\"items\":[{\"x1\" ...