怎么用adbadb 命令进入设置应用冻结应用

adb常用命令_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
adb常用命令
上传于|0|0|文档简介
&&介绍android调试中常用的adb命令
阅读已结束,如果下载本文需要使用0下载券
想免费下载更多文档?
定制HR最喜欢的简历
下载文档到电脑,查找使用更方便
还剩3页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢17684人阅读
自动化测试工具(5)
Android开发相关研究(1)
楼主原创,分享不易,转载请注明出处,谢谢。
最近一段时间一直在调试关于之前做的adb4Robotium跨进程测试框架出现的问题,随着对问题的不断研究,发现关于adb命令的执行权限这块的坑比较多,但目前网上关于这块的信息还是相对比较缺乏的,所以自己拿手机做了一些小实验,并写此文借以做个小结,方便以后查阅。
坑一、用户机就算是已经root了,但默认运行所有命令时都仍然是普通用户身份,除非显式切换到root用户。
一般在市场上售卖的用户机禁止以root身份运行adb客户端来连接手机内的adb daemon,会有错误提示,如下图。
所以当运行命令adb shell时,会默认以shell身份进入到手机的shell环境中。root后的手机要想以root身份运行shell命令,必须先su,此时命令提示符会由$变为#,表示当前用户为root用户。如下图所示:
而未root的手机由于在/system/bin下面没有su可执行文件(su文件是root手机时安装的),则无法执行su命令切换到root用户模式。如果要从root用户模式切换到普通用户模式,则直接输入su shell即可。一般我们使用模拟器的话,默认都是以root身份来进行所有的操作,所以大家会感觉比较方便,想干嘛干嘛。但如果是真机就要麻烦些,在真机上如果要想进入adb shell后直接就是root身份的话,只有两种方法:
1. 修改android系统,直接在相关系统文件中写入root权限,重新刷机,这样开机即自动获取root身份。具体方法网上有介绍的,感兴趣的朋友可以看看。
2. 不使用用户机(即上市售卖的手机,PRODUCT版),而使用工程机(ENG版),通常工程机都是作调试和测试用,所以默认已写入root权限。
同样道理,当我们执行默认adb命令时(adb pull或adb push等),都是以shell身份在执行,而非root身份,此时对于命令中的目录权限就要特别注意,当访问的目录需要root权限,或只有程序自身才有访问权限的目录时(典型的如/data/data下的目录),虽然目录和文件都在,但命令仍然是无法访问的,提示remote object does not exist或permission denied。如下图所示:
坑二、 在已root的用户机上运行程序代码时,默认文件读取权限也是普通权限,即该进程的读写权限,非root读写权限。
比如我们在手机上写一个app去读写/data/local/tmp里的文件,这是做不到的。我们先来看看/data/local/tmp文件夹的读写权限定义,如下图所示。
可以看到该目录的拥有者和所属组均为shell,shell具有读写执行的权限,但第三个权限位为--x,即意味着除root和shell用户外,其它用户一律没有读写的权限。但我们在运行该app时,默认的用户却是该进程本身,并非root或shell,所以此时是没有办法写入任何文件到/data/local/tmp的。要想这样做必须先通过代码动态改变当前用户模式到root模式,才能继续往下操作,这种问题一般对于应用要读写机身存储文件时特别明显,所以要特别小心,具体代码可以参考我修改之后的adb4robotium跨进程框架。
另外再补充点关于非root手机的apk提权问题。如果我们查看非root手机的/system/bin目录,可以发现里面有一个可执行文件sh,那么既然我们不能使用su来获取root权限,能不能通过在代码中执行ps =Runtime.getRuntime().exec(&sh&);来提升到sh用户权限呢?答案是否定的,因为根据android系统的权限继承机制,一个apk应用启动的子进程的权限不可能超越其父进程的权限(即apk的权限),即使单独运行某个应用有权限做某事,但如果它是由一个apk调用的,那权限就会被限制。既然ps是一个在代码中新建的子进程,那么在手机没有被root的情况下,该子进程是不可能通过这种方式来得到权限提升的。关于android系统权限相关的基础知识可以参考:
坑三、连接真机使用DDMS时,DDMS无法显示出所有进程信息,只显示设备名称或个别进程名。
这是很多人经常遇到的一个问题,这其中涉及到DDMS的运行原理。DDMS连接设备时,其原理是通过连接到adb并在adb和DDMS之间启动设备监视服务来监听Dalvik虚拟机的相关服务的。一旦一个应用启动,系统将启动一个独立的虚拟机进程,DDMS通过adb取得该虚拟机进程ID,并且通过adbdeamon开启一个到虚拟机调试器的连接。所以当设备具有完全root权限时,默认所有应用和服务均可被虚拟机调试器跟踪,因此大家会发现当我们使用模拟器来连接DDMS时,所有在运行的服务以及应用都可以在DDMS中显示出来。而当我们使用真机时(无论该真机root过还是没有root过都一样,因为就算是root了默认运行时也非root权限运行,除非你的手机上刷了修改后的android系统),DDMS由于缺少相应权限而无法对所有应用建立监听服务,而只能对以debug模式启动的应用进行虚拟机调试器的连接,从而显示出对应的进程信息。
那么我们怎样使应用以debug模式启动呢?目前有两种方法可以让应用以debug模式启动:
1. 在AndroidManifest.xml文件中添加android:debug=true,然后安装文件后运行时即是以debug模式运行程序。
2. 在eclipse中用debug as或run as方式安装到手机的应用,默认也是以debug模式运行在手机中。
最后总结下关于使用adb命令读写文件的权限:
模拟器/工程机
用户机(已root)
用户机(未root)
默认情况下仅shell用户权限目录,切换到root后为任意目录
仅shell用户权限目录
程序代码中
经实践测试证明,模拟器默认是没有root过的,所以当在app代码中访问机身目录时,跟用户机未root是一样的权限,如果root过则跟用户机已root是一样的权限。/sdcard目录需在程序中进行权限配置
默认仅本程序权限目录,通常只有:“/data/data/程序包名/”这个程序私有目录可用。
在程序中执行su后,可读写机身任意目录。
如果要读写/sdcard需单独进行权限配置
默认仅本程序权限目录,通常只有:“/data/data/程序包名/”这个程序私有目录可用。
如果要读写/sdcard需单独进行权限配置
以上内容均为本人实验并通过查阅相关资料证实,如果各位看官在实际操作过程中还有什么问题,欢迎在评论中提出来共同探讨。
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:45424次
排名:千里之外
原创:10篇
评论:31条
(1)(1)(1)(1)(7)【原创】使用adb命令 免root冻结软件教程_索尼z4吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:27,189贴子:
【原创】使用adb命令 免root冻结软件教程收藏
【声明】:教程由百度索尼z4吧吧务组制作,使用即代表自负全责,出现任何意外作者不负任何责任,如机器变砖、无限重启等,发现问题可向作者反馈,欢迎转载但请注明出处,谢谢最近看到吧里有人展示禁用各种软件,有不少人问,就做了这个教程,其实楼主自己是基本用不到这个的,adb命令为安卓的通用方法,不是为某款机器特有,安卓应该都可以使用的Step1:请先安装好驱动,并且开启【USB调试模式】(可用刷机精灵,豌豆荚等自动安装)
USB调试模式开启方法:设定—关于手机—反复点按最底端的软件版本—回到设定关于手机上一项出现开发人员选项—勾选usb调试,允许模拟地点Step2:数据线连接电脑,此处以【刷机精灵】为例,选择上方的【实用工具】,打开【adb命令行】(大神请绕道哈,这个教程是给小白看的,会直接自己写命令的也不用看这教程了吧)Step3:输入相应的adb命令,如冻结程序为adb shell pm block +程序包名恢复为adb shell pm unblock +程序包名,回车即可至于程序包名查看,我这有个app可以很方便的看到,楼下会给出
点我0元领取你的快充神器!
补上包名查看的app链接:
密码: ix7p
不错,加油
可以冻结系统自带的吗??比如应用商店
这是你原创?我呸!撒谎也不先看看,各大论坛早就有了!
再说了,有一点你错了,安卓5.0一下用block命令,5.0以上如果还用这命令,那就囧了,楼主操作陈年老帖也不尊重一下命令的改变
这简直就是误人子弟!
楼上的吧友指出了我帖子里的错误,向大家道个歉,请大家注意,下把帖子里的block改成hide      ——Sony Xperia(TM)Z4 E6533 一体双镜三防四核五寸 o 汇索尼精粹 美-不循规 界限-敢打破 本色-自倾城 声动-悦心动 一切皆可俘获!    等等!810好像是8核的!         
索尼z4,首选&亚马逊网上商城&,正品行货,放心购!送货上门!亚马逊全球网上商城NO.1,一流配送服务,30天内退换货!支持分期付款!
留名,明天弄
亦可赛艇,适合小白系列
楼主港版哪些东西推荐删除?
好福利,顶顶顶
谷歌服务依然无法停用,fales.其余的都可以
刷了国行系统表示完全没有谷歌那一套东西了,又省电系统又精简
虽然不知道楼主在说什么,但是先一波准没错,支持技术帖
就为了不用root就有谷歌服务才买港版
楼主,我试了,去冻结索尼精选,。无效
可以一次输入完再回车吗
我z4v是不是也用?
楼主虚拟按键怎么弄的
楼主啊 这个好像不管用= =
楼主发的是5.0以前的冻结命令
楼主,安卓6.0可以吗
com.sonymobile.crashmonitor.ui能删吗
请问冻结是什么意思?在手机上不显示?点击没反应?
谢谢楼主!魅族用户学习了~
登录百度帐号推荐应用
为兴趣而生,贴吧更懂你。或}

我要回帖

更多关于 adb冻结应用 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信