Android:使用命令行工具adb、mksdcard等
有一些Android的工具需要在命令行的环境中运行,只是可以选择Windows的开始->运行,键入cmd并确定,进入命令行的界面中运行。主要的命令行工具包括adb和mksdcard等。命令行的工具在Android SDK的tools目录中,使用命令行的窗口如图所示:
adb(Android Debug Bridge,Android调试桥)是Android的主要调试工具,它可以通过网络或者USB连接真实的设备,也可以连接仿真器。使用adb进行调试,通常在命令行的界面中。
将出现shell提示符,这就是Android所运行的Linux系统中的shell终端,可以在这个shell提示符后执行Android系统提供的Linux命令。
1.使用ls命令查看Android系统根目录:
root@android:/ # ls -l
ls -l
drwxr-xr-x root root 2014-03-15 12:56 acct
drwxr-xr-x root system 2014-03-15 12:56 app-cache
drwxrwx--- system cache 2014-03-13 22:43 cache
dr-x------ root root 2014-03-15 12:56 config
-rw-r--r-- root root 1395 1970-01-01 08:00 cwkeys
lrwxrwxrwx root root 2014-03-15 12:56 d -> /sys/kernel/debug
drwxrwx--x system system 2014-03-15 16:20 data
-rw-r--r-- root root 238 1970-01-01 08:00 default.prop
drwxr-xr-x root root 2014-03-15 12:56 dev
drwx------ root root 2014-03-13 21:56 devlog
lrwxrwxrwx root root 2014-03-15 12:56 etc -> /system/etc
-rwxr-x--- root root 111468 1970-01-01 08:00 init
-rwxr-x--- root root 9770 1970-01-01 08:00 init.pyramid.rc
-rwxr-x--- root root 11297 1970-01-01 08:00 init.qcom.sh
-rwxr-x--- root root 21570 1970-01-01 08:00 init.rc
-rwxr-x--- root root 4545 1970-01-01 08:00 init.usb.rc
drwxrwxr-x root system 2014-03-15 12:56 mnt
dr-xr-xr-x root root 1970-01-01 08:00 proc
drwx------ root root 2012-08-07 08:38 root
drwxr-x--- root root 1970-01-01 08:00 sbin
lrwxrwxrwx root root 2014-03-15 12:56 sdcard -> /mnt/sdcard
drwxr-xr-x root root 2014-03-15 12:56 sys
drwxr-xr-x root root 2014-03-13 22:40 system
-rw-r--r-- root root 1058 1970-01-01 08:00 ueventd.pyramid.rc
-rw-r--r-- root root 7877 1970-01-01 08:00 ueventd.rc
drwxrwx--x system system 2014-03-15 12:56 vendor
Android根目录中的主要文件夹与目标系统的out/target/product/generic/root内容相对应,此外etc、proc等目录是在Android启动后自动建立的,system映像被挂接到根文件系统的system目录中,data映像被挂接到根文件系统的data目录中。
2.使用ps命令可以查看Android系统的进程:
root@android:/ # ps
ps
USER PID PPID VSIZE RSS WCHAN PC NAME
root 1 0 416 276 c013bf84 00008728 S /init
root 2 0 0 0 c00d3eb0 00000000 S kthreadd
root 3 2 0 0 c00c0c50 00000000 S ksoftirqd/0
root 5 2 0 0 c005eb48 00000000 D kworker/u:0
root 6 2 0 0 c00f4188 00000000 S migration/0
root 10 2 0 0 c00cfd50 00000000 S khelper
root 11 2 0 0 c00cfd50 00000000 S suspend_sys_syn
root 12 2 0 0 c00cfd50 00000000 S suspend
root 13 2 0 0 c00cfd50 00000000 S perflock_wq
root 14 2 0 0 c00f53e8 00000000 S irq/347-pm8901-
root 15 2 0 0 c010f794 00000000 S sync_supers
root 16 2 0 0 c011047c 00000000 S bdi-default
root 17 2 0 0 c00cfd50 00000000 S kblockd
root 18 2 0 0 c0308d34 00000000 S khubd
root 19 2 0 0 c00cfd50 00000000 S l2cap
root 20 2 0 0 c00cfd50 00000000 S a2mp
root 22 2 0 0 c00cfd50 00000000 S cfg80211
root 23 2 0 0 c00cfd50 00000000 S tty_smd0
root 24 2 0 0 c00f53e8 00000000 S irq/505-pm8058_
root 25 2 0 0 c00cfd50 00000000 S tps65200
root 26 2 0 0 c00cfd50 00000000 S iewq
.
.
.
从系统的进程中可以看到,系统1号和2号进程以0号进程为父进程。init是系统运行的第1个进程,即Android根目下的init可执行程序,这是一个用户空间的进程。kthreadd是系统的2号进程,这是一个内核进程,其他内核进程都直接或间接以它为父进程。
Zygote、/system/bin/sh、/system/bin/mediaserver等进程是被init运行起来的,因此它们以init为父进程。其中android.process.acore(Home)、com.android.mms等进程代表的是应用程序进程,它们的父进程都是zygote。
3.使用adb连接目标系统终端的方式如下所示:
> adb shell
4.使用adb安装应用程序的方法为:
> adb install XXX.apk
5.卸载已经安装的应用
(1)方法1:
adb uninstall [-k] <package>。
其中package表示需要卸载的应用的包的名字,k表示是否保留应用的配置信息和cache数据。
(2)手动删除。
adb shell
cd /data/app
rm app.apk
6 .使用adb在主机和目标机之间传送文件的方法为:
可以使用adb pull ,push 命令将文件复制到一个模拟器/设备实例的数据文件或是从数据文件中复制。install 命令只将一个apk文件复制到一个特定的位置,与其不同的是,pull 和 push 命令可让用户复制任意的目录和文件到一个模拟器/设备实例的任何位置。
> adb push {host_path} {target_path}
> adb pull {target_path} {host_path}
7.mksdcard是用来建立SD卡映像的工具,用来建立一个Fat32格式的磁盘映像,其使用方法如下所示:
mksdcard [-l label] <size> <file>
mksdcard的参数-l用于指定磁盘映像的标签,size用于指定磁盘映像的大小,其后面可以跟K、M、G等参数,file是磁盘映像的文件名称,这个文件也就是在仿真器运行过程中指定的文件。
mksdcard的一个使用的示例如下所示:
> mksdcard 128M sdcard.img
这表示建立了一个大小为128M,名称为sdcard.img的Fat32磁盘映像文件。
8.查看版本信息
>adb version
Android Debug Bridge version 1.0.20
9.转发端口
可以使用 forward 命令进行任意端口的转发—一个模拟器/设备实例的某一特定主机端口向另一不同端口的转发请求。下面演示了如何建立从主机端口7100到模拟器/设备端口8100的转发。
adb forward tcp:7100 tcp:8100
同样地,可以使用ADB来建立命名为抽象的UNIX域套接口,上述过程如下所示:
adb forward tcp:7100 local:logd
Android:使用命令行工具adb、mksdcard等的更多相关文章
- 7.0、Android Studio命令行工具
命令行工具分成SDK工具和平台工具. SDK工具 SDK工具跟随SDK安装包安装并随时更新. Virtual Device 工具 1. Android Virtual Device Manager 提 ...
- Android命令行工具logcat详细用法!
logcat是Android中一个命令行工具,可以用于得到程序的log信息. 见板凳详细说明! 本贴内容来自网络,引用网址为:http://hi.baidu.com/%C9%C1%D2%AB% ...
- 使用命令行工具将Android应用转换成BlackBerry PlayBook应用
昨天写了篇文章关于Android应用转换的,通过BlackBerry的在线转换工具将Android应用转换成BlackBerry PlayBook应用.有网友反映说方法有点麻烦,所以今天补上新的转换方 ...
- 轻松学习Ionic (二) 为Android项目集成Crosswalk(更新官方命令行工具)
现在集成crosswalk不用这么麻烦了!官方的命令行工具已经能让我们一步到位,省去很多工作,只需在cmd中进入项目所在目录(不能有中文目录,还得FQ),执行: ionic browser a ...
- 命令行工具命令 - run包到手机里
命令行工具命令 你完全可以选择不输入以下这些命令,执行这些命令的结果与在 Android Studio 中单击"运行"按钮是一样的. chmod +x gradlew - 此命令只 ...
- Expo大作战(六)--expo开发模式,expo中exp命令行工具,expo中如何查看日志log,expo中的调试方式
简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,将全部来与官网 我猜去全部机翻+个人 ...
- [转]轻松学习Ionic (四) 修改应用图标及添加启动画面(更新官方命令行工具自动生成)
本文转自:http://blog.csdn.net/zapzqc/article/details/42237935 由于Ionic更新了命令行工具,以后修改应用图标和添加启动画面就简单了,最新方法见最 ...
- 【No.2】监控Linux性能25个命令行工具
接着上一篇博文继续 [No.1]监控Linux性能25个命令行工具 10:mpstat -- 显示每个CPU的占用情况 该命令可以显示每个CPU的占用情况,如果有一个CPU占用率特别高,那么有可能是一 ...
- [原创]使用命令行工具提升cocos2d-x开发效率(一)之TexturePacker篇
TexturePacker是一个常用的制作sprite sheet的工具,它提供了很多实用的功能. 一般我们制作sprite sheet都是使用他的gui版本,纯手工操作,就像下面这张图示的一样. 刚 ...
随机推荐
- cocos2d-x lua table与json的转换
cocos2d-x lua table与json的转换 version: cocos2d-x 3.6 1.引入json库 require("src/cocos/cocos2d/json&qu ...
- 使用SCNetworkReachability判断网络是否连接
先来看一下整个方法 - (BOOL)isConnectionAvailable { //创建零地址,0.0.0.0的地址表示查询本机的网络连接状态 struct sockaddr_in zeroAdd ...
- 关于Object[]数组强转成Integer[]类型的数组.
为什么不能由Object[]数组强转成Integer[]数组. Object[] ins= { new Integer(0), new Integer(1), new Integer(2), new ...
- Android中IntentService的原理及使用
在Android开发中,我们或许会碰到这么一种业务需求,一项任务分成几个子任务,子任务按顺序先后执行,子任务全部执行完后,这项任务才算成功.那么,利用几个子线程顺序执行是可以达到这个目的的,但是每个线 ...
- 自动化中的PageObject思想
谈着这个话题很大,因为我自己在自动化分层的方面做的就不是很好,最近在做java+selenium中,如果不分层去管理,代码就显得很乱,如下: 下面代码主要是做了一个登录,登录后在修改自己的一些个人信息 ...
- trigger,triggerhandler模拟事件
常用模拟 有时候,需要通过模拟用户操作,来达到单击的效果.例如在用户进入页面后,就触发click事件,而不需要用户去主动单击. 在JQuery中,可以使用trigger()方法完成模拟操作.例如可以使 ...
- NAT地址转换原理全攻略
NAT转换方式及原理 在NAT的应用中,可以仅需要转换内部地址(就是“内部本地址”转换成“内部全局地址”),这是最典型的应用,如内部网络用户通过NAT转换共享上网:也可以是仅需要转换外部地址(就是“外 ...
- sql常识-Alias
SQL Alias 表的 SQL Alias 语法 SELECT column_name(s) FROM table_name AS alias_name 列的 SQL Alias 语法 SELECT ...
- 几个简单的Makefile
http://www.blogjava.net/canvas/articles/quick_makefile.html 几个简单适合小程序的Makefile,可直接拷贝使用,自己mark一下,这样长时 ...
- C#解析Json格式数据小结
最近,遇到了一些不同的Json格式的数据,需要做不同处理才能转化为想要得到的结果,这里总结一下. 第一种形式:status中是{}形式,对象 string json = @"{'name': ...