adb怎么判断是否有root权限,并更改system/app内容

  • Post author:
  • Post category:其他



一、首先判断root权限:

adb root
结果:
C:\signapp>adb root
restarting adbd as root # 说明有root权限 ,若是adbd cannot run as root in production builds 则说明没有root权限



二、更改system/app内容

一般情况下system/app都会出现read only,所以需要adb remount(这是一个重新mount你的分区的命令,让system分区从只读变成可读可写,


获得了root权限才可运行,先执行adb root)



在system/app中就可以随意修改了,但是注意一点,



若想预置为系统应用,则如果只是将apk拷贝到 /system/app目录下还是不够的,还需要 777 的权限,命令:chmod 777 target.apk



总的来说就下面几个代码:

adb root
adb remount
adb push target.apk /system/app

adb shell
cd ../system/app
chomd 777 target.apk

reboot


还有些地方可以通过如下命令操作:

 $ adb push SecureSetting.apk /sdcard/  // 上传要安装的文件,为安装做准备。
 $ adb shell $ su // 切换到 root 用户。如果没有获得 Root 权限,这一步不会成功。
 # mount //显示当前mount情况
 # mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system // 让分区可写。 
 # cat /sdcard/SecureSetting.apk > /system/app/SecureSetting.apk // 这一步可以用 cp 实现,但一般设备中没有包含该命令。如果使用 mv 会出现错误:failed on '/sdcard/NetWork.apk' - Cross-device link。 
 chmod 777 chetou.apk
 # mount -o remount,ro -t yaffs2 /dev/block/mtdblock3 /system // 还原分区属性,只读。 
 # exit $ exit