android 4.3 .obb 无法找到应用程序以执行该操作,adb使用基本总结

一、概述

在实际项目开发中,尽管ADT给我们提供了DDMS来方便我们操作使用,但是当遇到文件夹无权限的问题时,又需要我们使用ADB指令进行,所以掌握常见的adb指令很有必要,下面就来总结下我们常见的adb指令。

在我们使用adb指令的时候,为了方便我们使用,我们最好将sdk的目录进行环境变量的配置,配置adb的环境变量。

二、常见ADB指令的使用

1、adb devices:显示当前连接的全部模拟器

    C:\Users\Administrator>adb devices

List of devices attached

142159d4e31740e0 device

2、adb kill-server:杀死adb连接进程3、adb start-server:开启adb进程

C:\Users\Administrator>adb start-server

* daemon not running. starting it now on port 5037 *

* daemon started successfully *

4、adb install path.apk:安装指定路径的apk文件

C:\Users\Administrator>adb install C:\Users\Administrator\Desktop\Test.apk

1473 KB/s (514647 bytes in 0.341s)

pkg: /data/local/tmp/Test.apk

Success

5、adb uninstall packname:删除指定应用包名的apk文件。

C:\Users\Administrator>adb uninstall com.dsw.test

Success

6、adb push localpath remotepath:将本地指定路径的apk推送到系统某路径下。

C:\Users\Administrator>adb push C:\Users\Administrator\Desktop\Test.apk system/app

failed to copy 'C:\Users\Administrator\Desktop\Test.apk' to 'system/app/Test.apk

': Read-only file system

2026 KB/s (514647 bytes in 0.248s)

此时,我们暂时不要管Read-only这个错误。

7、adb shell进入模拟器shell命令模式

C:\Users\Administrator>adb shell

root@sabreauto_6q:/ #

8、查看各个目录的挂在权限,首先进入到shell命令行,执行mount指令。

1|root@sabreauto_6q:/ # mount

rootfs / rootfs ro,relatime 0 0

tmpfs /dev tmpfs rw,nosuid,relatime,mode=755 0 0

devpts /dev/pts devpts rw,relatime,mode=600 0 0

proc /proc proc rw,relatime 0 0

sysfs /sys sysfs rw,relatime 0 0

none /acct cgroup rw,relatime,cpuacct 0 0

none /sys/fs/cgroup tmpfs rw,relatime,mode=750,gid=1000 0 0

tmpfs /mnt/secure tmpfs rw,relatime,mode=700 0 0

tmpfs /mnt/asec tmpfs rw,relatime,mode=755,gid=1000 0 0

tmpfs /mnt/obb tmpfs rw,relatime,mode=755,gid=1000 0 0

tmpfs /mnt/shm tmpfs rw,relatime,size=1024k,mode=775,uid=1013,gid=1000 0 0

none /dev/cpuctl cgroup rw,relatime,cpu 0 0

pstore /sys/fs/pstore pstore rw,relatime 0 0

/dev/block/mmcblk2p5 /system ext4 ro,relatime,data=ordered 0 0

/dev/block/mmcblk2p4 /data ext4 rw,nosuid,nodev,noatime,nodiratime,noauto_da_all

oc,data=ordered 0 0

/dev/block/mmcblk2p6 /cache ext4 rw,nosuid,nodev,relatime,data=ordered 0 0

/dev/block/mmcblk2p7 /device ext4 ro,nosuid,nodev,relatime,data=ordered 0 0

adb /dev/usb-ffs/adb functionfs rw,relatime 0 0

none /sys/kernel/debug debugfs rw,relatime 0 0

/dev/block/vold/179:9 /mnt/media_rw/sdcard0 vfat rw,dirsync,nosuid,nodev,noexec,

relatime,uid=1023,gid=1023,fmask=0000,dmask=0000,allow_utime=0022,codepage=437,i

ocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0

/dev/block/vold/179:9 /mnt/secure/asec vfat rw,dirsync,nosuid,nodev,noexec,relat

ime,uid=1023,gid=1023,fmask=0000,dmask=0000,allow_utime=0022,codepage=437,iochar

set=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0

/dev/fuse /storage/sdcard0 fuse rw,nosuid,nodev,relatime,user_id=1023,group_id=1

023,default_permissions,allow_other 0 0

通过上面我们可以看到文件夹的读写权限。

9、修改文件夹的读写权限,重新挂在权限,需要在shell命令行模式下,执行mount -o remount -o rw /system,就该为rw权限。

root@sabreauto_6q:/ # mount -o remount -o rw /system

root@sabreauto_6q:/ # exit这样我们就完成权限修改,再次执行adb push指令时就不会遇到失败。如下:

C:\Users\Administrator>adb push C:\Users\Administrator\Desktop\Test.apk system/app

1278 KB/s (514647 bytes in 0.393s)

10、rm .apk删除指定的apk。比如上面我们将test.apk推到system目录下,他就是以系统apk的形式存在。我们进入shell模式下,执行rm test.apk进行删除。

255|root@sabreauto_6q:/ # cd /system/app

root@sabreauto_6q:/system/app # rm test.apk

rm failed for test.apk, No such file or directory

255|root@sabreauto_6q:/system/app # rm Test.apk

root@sabreauto_6q:/system/app #

三、Shell环境下常用指令

首先通过adb shell进入到shell指令页面。

1、查看设备中运行的进程:ls

C:\Users\Administrator>adb shell

root@sabreauto_6q:/ # cd /data/data

root@sabreauto_6q:/data/data # ls

com.android.backupconfirm

com.android.bluetooth

com.android.borqs.music

com.android.borqs.sleep

com.android.borqs.standby

2、查看设备所安装的应用程序包名:

pm list packages

root@sabreauto_6q:/data/data # pm list packages

package:com.systemupdate

package:com.borqs.taskmanager

package:com.android.defcontainer

package:com.android.launcher

package:com.iflytek.afadapter

package:com.borqs.gpsvalidation

package:com.android.contacts

package:com.tservice.positionreport

package:com.android.phone

四、adb logcat查看日志

adb logcat 命令格式 : adb logcat [选项] [过滤项], 其中 选项 和 过滤项 在 中括号 [] 中, 说明这是可选的;

-- "-s"选项 : 设置输出日志的标签, 只显示该标签的日志;

--"-f"选项 : 将日志输出到文件, 默认输出到标准输出流中, -f 参数执行不成功;

--"-r"选项 : 按照每千字节输出日志, 需要 -f 参数, 不过这个命令没有执行成功;

--"-n"选项 : 设置日志输出的最大数目, 需要 -r 参数, 这个执行 感觉 跟 adb logcat 效果一样;

--"-v"选项 : 设置日志的输出格式, 注意只能设置一项;

--"-c"选项 : 清空所有的日志缓存信息;

--"-d"选项 : 将缓存的日志输出到屏幕上, 并且不会阻塞;

--"-t"选项 : 输出最近的几行日志, 输出完退出, 不阻塞;

--"-g"选项 : 查看日志缓冲区信息;

--"-b"选项 : 加载一个日志缓冲区, 默认是 main, 下面详解;

--"-B"选项 : 以二进制形式输出日志;

1、设置指定过滤器的的logcat日志

C:\Users\Administrator>adb logcat -s dsw

--------- beginning of /dev/log/system

--------- beginning of /dev/log/main

D/dsw (24553): dsw:0

D/dsw (24553): dsw:1

D/dsw (24553): dsw:2

D/dsw (24553): dsw:3

D/dsw (24553): dsw:4

D/dsw (24553): dsw:5

D/dsw (24553): dsw:6

D/dsw (24553): dsw:7

D/dsw (24553): dsw:8

D/dsw (24553): dsw:9

D/dsw (24553): dsw:10

2、将输出日志保存到文件中。adb logcat -f /sdcard/log.txt 命令, 注意这个log文件是输出到手机上,需要指定合适的路径。 3、logcat输出的格式,指定 logcat 的日志输出格式,使用adb logcat -v time 命令, 可以啥看日志的输出时间;使用adb logcat -v threadtime 命令, 可以啥看日志的输出时间和线程信息; 4、执行命令:adb logcat,会有无数条Log快速生成在控制台上,那么这时就有同学会问,如果吧一大堆Log抓下来一个一个E去找是十分不方便的,于是我们引进了强大的正则表达式:grep。例如查看Error级别的日志。adb logcat | gerp ^E

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值