车载测试之adb命令篇(5)

一、车载系统权限的获取-----adb root

        1.为什么要获取车载系统权限?

                1.首先我们安卓底层Linux系统文件权限分为可读(r)、可写(w)、可执行(x),对于我们一般登录的用户来说,很多文件、系统分区是没有读写权限的,我们无法去查看或者写入某些路径下的文件。但是我们工作中又无可避免的要用的这些权限去操作某些数据,比如(工作中向系统推包、安装某些应用、向电脑拉取某些数据、删除某个文件等等都要涉及到权限问题,这个时候,我们就必须获取最高权限root权限),所以获取权限,是我们工作中必须要掌握的方法。(下图是Linux系统文件权限,权限变更问题,后面将Linux系统命令的时候会细讲)

        2.怎么获取最高权限(root 权限)?

                1.确保车机和电脑adb已连接(adb devices查看连接状态)

                2.输入adb root敲回车(没有任何提示就是最好的提示)

                3.如果要操作system系统分区的数据,我们还需要将root权限挂载到system分区:

                        1.Android 7.0版本以后,为了防止误操作将重要分区的数据损坏或删除,新版本都做了系统分区保护,要想获取system系统分区权限,那么我们就要先关闭分区检测。

                        2.首先获取最高权限adb root(关闭分区检测需要root权限);

                        3.输入adb disable-verity  (这一步是关闭system分区权限,关闭后应该会提示reboot重启车机);

                        4.adb reboot (重启车机);

                        5.adb root (重启后需要重新获取权限);

                        6.adb remount(这一步就remount成功了,root权限就挂在system分区了);

二、为什么系统权限会获取失败呢?

        1.上面讲到的方法是我们车载安卓系统车机获取权限常用的命令,有少部分车企对命令做了特殊处理和规定(如:adb root 会处理成 adb -host root),需要根据项目规定来。

        2.系统权限无法获取,或者system分区无法挂载,也可能是当前使用的车机版本开发做了权限包含,不支持最高权限的获取,我们测试一般拿到的是调试版本userdebug版本,他是可以支持adb root 、adb remount 的,但一般到了项目后期,我们会切换到user版本,也就是正式版本测试,这个时候的版本是面向用户的,自然不允许获取最高权限。

        3.如果是userdebug调试版本,但是仍然无法获取权限,可以尝试断电重启,或者重新刷机,请教开发同事解决。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值