Android调试很是有用的命令集1_adb&aapt&git&repo&scp&while

 

Linux部分场景很是有用的命令集_1_持续更新 这里面也包含了对于开发调试有用的命令,也能够看看。html

这里不作详细说明或截图,仅做为记录和简单说明。注:可能只针对某一命令部分功能,不包含整个功能,若要查看所有请自行查阅文档或helpjava

注:先说明一个 ,搜索文本的命令,在linux下是grep,在window下用findstr。关于这两个若是发现没有这个命令,请根据系统更换。很多debug须要root权限。linux

1.adb 

最经常使用的命令,但下面的adb命令 颇有用的,有可能你不知道。(主要仍是Android系统中的可执行命令,经过adb调用)android

 获取当前界面的Activitygit

adb shell dumpsys window | findstr mCurrentFocus

截图命令/屏幕录制:当发现没有快捷方式 或 调试工具出现问题等,没法截图或录制,能够用这个直接截图/录制并导出。screencap/screenrecord都是手机中的bin文件。shell

adb shell /system/bin/screencap -p /sdcard/screenshot.png //截图保存到/sdcard/screenshot.png
adb pull /sdcard/screenshot.png  xxx  //导出  
adb shell screenrecord /sdcard/myrecord.mp4  //屏幕录制到/sdcard/myrecord.mp4

获取支持最大用户数服务器

adb shell pm get-max-users

获取系统全部支持的featuresapp

adb shell pm list features

内存信息ssh

adb shell dumpsys meminfo [YourPackagename] //不跟包名,看所有内存状况。跟上包名,看对应应用的内存状况

查看摄像头信息工具

//MTK平台   
adb shell cat proc/driver/camera_info    
//展锐平台    
adb shell cat /sys/devices/virtual/misc/sprd_sensor/camera_sensor_name

 列出系统中应用:下面命令列出对应应用在系统中路径和对应的包名,如:package:/system/priv-app/MtkMmsService/MtkMmsService.apk=com.android.mms.service

注:系统/data/system/下有两个文件,packages.list和packages.xml,也包含了系统全部应用的信息。

adb shell pm list package -f

获取或修改 屏幕分辨率和系统屏幕密度: 

adb shell wm size  //获取屏幕分辨率,如得到:Physical size: 720x1280
adb shell wm density   //获取系统密度,如获取:Physical density: 320
adb shell wm size 720x1280  //设置屏幕分辨率,
adb shell wm density 240 //设置系统密度

模拟按键:

adb shell input keyevent 4 //4是返回键

注:这里的按键值在源码的frameworks/base/core/java/android/view/KeyEvent.java定义,这里列举几个经常使用键的键值。

  public static final int KEYCODE_HOME = 3;
  public static final int KEYCODE_BACK = 4;
  public static final int KEYCODE_CALL = 5;
  public static final int KEYCODE_VOLUME_UP = 24;
  public static final int KEYCODE_VOLUME_DOWN = 25;
  public static final int KEYCODE_POWER = 26;
  public static final int KEYCODE_CAMERA = 27;
  public static final int KEYCODE_MENU = 82;
  public static final int KEYCODE_APP_SWITCH = 187;

 

2.aapt

获取应用清单:首先得从apk中解压出AndroidManifest.xml文件

aapt dump xmltree xxxx.apk AndroidManifest.xml

获取apk的配置:如获取sdk版本,权限,支持的分辨率、支持的feature等信息

aapt dump badging BrownPinoy.apk [|grep xxx]

  

 3.repo/git

 repo或git经常使用命令

repo forall -p -c git log --after="2018-06-29 00:00:00" --before="2018-07-13 23:59:59" --name-status  > gitlog.txt  //时间段git log
repo_mtk forall -c 'git remote add local xxxxx/80_GO/$REPO_PATH'

ssh-keygen -t rsa -C youremail -f name  //生成密钥,包含公钥和私钥
ssh -vT xxxx  //xxx是你配置的名字,用户检测该私钥以及用户地址等是否与服务器链接正常

git reset --hard  //会将追踪的文件(tracked)回退到上个版本,对于未追踪的(untracked)文件则不会处理
git clean -df //回退全部未追踪(untracked)文件的修改。

gitk:

Ubuntu系统下,git的图形界面,各个分支、提交、记录一目了然。

 

4.其余小命令

跨服务器/远程拷贝:

scp -r user@ip:/srcFilePath  desPath
//将远程的拷贝到本地目录(将本地拷贝到远程也同样),-r是目录参数。如:scp -r root@192.168.149.22:/home/test/a.txt  /home/  或者 scp -r /home/a.txt root@192.168.149.22:/home/test/

循环执行:

while : ;do ./main.sh;sleep 100; rm -rf summary_results/ test_results/; sleep 1800; done;
//循环执行"main.sh脚本,延迟100s,删除summary_results和test_results目录,再延迟1800s"
相关文章
相关标签/搜索