通过 adb shell 和代码理解命令 - Android
- 2024-10-14 08:40:00
- admin 原创
- 223
问题描述:
我正在尝试授予BATTERSTATS
某个应用权限。当我从 PC 运行该命令时,它运行正常:
adb shell pm grant com.example.sample.myapplication android.permission.BATTERY_STATS
但从pm grant
Android 应用程序运行时,相同的命令不起作用:
java.lang.Process process = Runtime.getRuntime().exec("pm grant com.example.sample.myapplication android.permission.BATTERY_STATS");
授予此权限是否需要 root 权限?如果是,为什么不需要设备 root 权限即可通过 运行它adb shell
?
我是 Android 新手,请更清楚地解释一下内部发生了什么以及如何进行。
解决方案 1:
您运行的命令adb shell
将使用用户权限执行shell(UID=2000)
。您从代码中运行的命令java
将使用应用程序的权限执行UID
。这就是区别。
相关推荐
热门文章
项目管理软件有哪些?
热门标签
曾咪二维码
扫码咨询,免费领取项目管理大礼包!
云禅道AD