android之adb命令操作

来源:互联网 发布:php nginx 403 编辑:程序博客网 时间:2024/06/05 06:32

截图命令:

#调用android内核中的截图工具截取当前屏幕,并保存图片到/sdcard/screenshot.png

adb shell /system/bin/screencap -p /sdcard/screenshot.png

#将手机中的指定图片/sdcard/screenshot.png 保存到当前目录下

adb pull /sdcard/screenshot.png ./


#如果是局域网内的手机的话,可以通过如下方法进行截图

adb connect 192.168.1.106:5555adb shell /system/bin/screencap -p /sdcard/screenshot.pngadb pull /sdcard/screenshot.png E:\download

#将文件拷贝到手机中

adb push D:\file.txt  /system/temp/

#将设备改为可读可写

adb remount

#关掉adb连接服务

adb kill-server

#启动adb连接服务

adb start-server

#查看当前挂接的android设备

adb devices

#如果安装apk到rom中,提示 “exsit 。。。”  的提示信息,可以加上  - r 参数 ,可以替换原有的apk 

adb install -r  Android-gateway-nightly.apk   

  adb install-multiple [-lrtsdpg] <file...>                               - push this package file to the device and install it                                 (-l: forward lock application)                                 (-r: replace existing application)                                 (-t: allow test packages)                                 (-s: install application on sdcard)                                 (-d: allow version code downgrade)                                 (-p: partial application install)                                 (-g: grant all runtime permissions)  adb uninstall [-k] <package> - remove this app package from the device
#清楚已经存在的com.cvte.health包
adb shell pm clean com.cvte.health 

 adb uninstall [-k] <package> - remove this app package from the device                                 ('-k' means keep the data and cache directories)


一下摘录自:http://blog.csdn.net/new_abc/article/details/7435508  感谢博主

应用安装涉及目录:        
system/app ---------------系统自带的应用程序,获得adb root权限才能删除
data/app  ---------------用户程序安装的目录。安装时把 apk文件复制到此目录
data/data ---------------存放应用程序的数据
data/dalvik-cache--------将apk中的dex文件安装到dalvik-cache目录下(dex文件是dalvik虚拟机的可执行文件,其大小约为原始apk文件大小的四分之一)
安装过程:
复制APK安装包到data/app目录下,解压并扫描安装包,把dex文件(Dalvik字节码)保存到dalvik-cache目录,并data/data目录下创建对应的应用数据目录。
卸载过程:
删除安装过程中在上述三个目录下创建的文件及目录

带着这些知识去看安装过程,可能会更容易理解引起。

当我们利用adb安装一个软件包时,到底流程是怎么样的呢,这里主要介绍一个安装包在目标机中的安装过程。

adb install 也是用的pm(可理解为Package Manager)命令去安装的,所以开始是在pm.java中。

我们看下流程:

1、调用pm程序开始安装

得用Pm安装时,一般是shell运行一个pm命令,并传送相应的参数,我们通过adb连接到机器,输入pm,会打出pm的一些参数

# pm
pm
usage: pm [list|path|install|uninstall]
       pm list packages [-f] [-d] [-e] [-u] [FILTER]
       pm list permission-groups
       pm list permissions [-g] [-f] [-d] [-u] [GROUP]
       pm list instrumentation [-f] [TARGET-PACKAGE]
       pm list features
       pm list libraries
       pm path PACKAGE
       pm install [-l] [-r] [-t] [-i INSTALLER_PACKAGE_NAME] [-
       pm uninstall [-k] PACKAGE
       pm clear PACKAGE
       pm enable PACKAGE_OR_COMPONENT
       pm disable PACKAGE_OR_COMPONENT
       pm setInstallLocation [0/auto] [1/internal] [2/external]
当我们安装一个软件包时,shell运行pm程序并传入pm install ***等参数,我们看下pm.java

public static void main(String[] args) {          new Pm().run(args);      }  
这里运行pm的run方法

public void run(String[] args) {        if ("install".equals(op)) {              runInstall();              return;          }  }  
云云,不看了  差不多就行了   想多看的话去原文博客。

0 0