安卓多用户管理之adb指令

前言

有一些与多用户相关的adb 指令可以更好地帮助我们了解和调试安卓多用户相关信息


一、多用户adb指令

查看用户列表  
adb shell pm list users
查看用户信息:
adb shell dumpsys user
创建新用户  
adb shell pm create-user [--profileOf userId] [--managed] USER_NAME

例:adb shell pm create-user 10 user2
--profileOf userId:可选参数,用于指定新用户的配置文件。新用户将会继承指定用户的配置文件。如果不提供此参数,则新用户将拥有默认的配置文件。

--managed:可选参数,指定新用户是否是受管理的。如果提供了此参数,则新用户将是受管理的,否则将是普通用户。
启动和切换用户
adb shell am switch-user userId
adb shell am start-user userId
安装应用到某个用户下
adb install --user userId xxx.apk
删除用户
adb shell pm remove-user userId
为特定用户卸载软件包
adb uninstall --user <userId> <Pckage>
获取当前(前台)用户 ID
adb shell am get-current-user
为特定用户列出软件包(-e 可列出已启用的软件包,-d 可列出已停用的软件包)。

默认情况下,此命令始终为系统用户列出软件包。
adb shell pm list packages --user <userId>


二、示例

2.1 创建一个新的用户

必须切换为其他用户时,才能删除当前的用户。

2.2 为特定用户安装apk

可以看到我们成功为新用户单独安装了优酷apk,最后并单独卸载。

三、参考链接

Android/AutoMotive 多用户操作
安卓adb多用户操作

相关推荐
GitLqr9 小时前
Flutter FocusNode 实战指南:玩转键盘焦点与用户输入体验
android·flutter·ios
酷在前行10 小时前
【R绘图】Nature Communications 半眼图复刻:分布、区间与多面板排版(保姆级教程)
android·开发语言·r语言
2501_9327502610 小时前
Android registerForActivityResult 详解
android
小孔龙12 小时前
VSync 与同步屏障:doFrame() 的优先调度
android·性能优化
kfzjw00812 小时前
Android 的一帧完整渲染流程:从 VSYNC 到 Screen 的全链路解密
android
wWYy.13 小时前
Mysql:覆盖索引
android·数据库·mysql
Kapaseker14 小时前
如果我要从 List 中获取一段元素
android·kotlin
三少爷的鞋14 小时前
一次朋友圈发布流程,理解 Kotlin 协程为什么重新定义异步代码组织方式
android
FungLeo14 小时前
Flutter/Android Release 包连不上网?AndroidManifest INTERNET 权限排查实录
android·flutter
wWYy.16 小时前
Mysql:一行数据是怎么存储的?
android·数据库·mysql