多用户相关

获取当前用户/用户ID

1.android.os.Process.myUserHandle()

2.UserHandle.myUserId()

3.UserHandle.getUserId(android.os.Process.myUid())

4.UserManager um = (UserManager) this.getSystemService(Context.USER_SERVICE);

UserHandle user = um.getUserForSerialNumber(ActivityManager.getCurrentUser());

ActivityManager.getCurrentUser

这是一个hide的API,而且需要是system permission。

system permission

.AndroidManifest.xml里面定义android:sharedUserId=“android.uid.system”

.Android.mk里面定义签名LOCAL_CERTIFICATE := platform

还需要android.permission.INTERACT_ACROSS_USERS权限。

所以说这种用法的限制条件比较多。

如果是一般的app,建议用1~3的方法,但是如果是SystemUI里面的话,有可能1~3并不能取到正确的id,

所以这个时候,可以考虑用4的这种方法。

获取OWNER的方法

UserHandle.USER_OWNER

UserHandle和userId转换

UserHandle->userId

UserManager um = (UserManager) context.getSystemService(Context.USER_SERVICE);

userId = um.getSerialNumberForUser(user);

userId->UserHandle

user = um.getUserForSerialNumber(userId);

时间: 2024-11-07 13:56:47

多用户相关的相关文章

Android 多用户模式原理和实现介绍

我们可以感受到,在Android 4.2中的一个比较显著的改变就是加入了多用户的支持.因多用户手机专利早已被Symbian雇员注册,故 android官方的多用户切换目前仅支持平板设备. 多用户模式的启用 系统判断当前设备是否支持多用户模式的依据是配置文件config.xml中的config_multiuserMaximumUsers配置项. 其取值为整型,决定着当前设备支持的最大用户上限.默认值为1,即不支持多用户.如需启用多用户,则设置此值 为大于1的值.在Nexus 7中,此值为8. 具体

MountService初探

MountService作为Vold的客户端,会接收来自vold的消息,并且内部定义保存了各种Volume相关的状态定义: 1.VolumeState class VolumeState { public static final int Init = -1; public static final int NoMedia = 0; public static final int Idle = 1; public static final int Pending = 2; public stat

Windows 多用户远程访问 Ubuntu 14.04桌面

使用X2Go实现多用户远程访问 Ubuntu 14.04桌面:VNC也可以,但是每次连接VNC就回新创建一个Seession,想要在下次远程登录的时候返回上次活动,需要记住开启的线程,这种繁琐的操作不能满足大多数人的需求... 参考: Linux公社:如何远程连接Ubuntu 14.04 图形界面 想要远程连接你的Ubuntu服务器的图形界面么?这里有个简单的指导告诉你如何使用X2Go来实现,这是一个NX远程桌面协议的衍生版本.你所需要做的就是在服务器上面安装X2Go服务端和桌面环境,在客户机上

项目实战(连载):基于Angular2+Mongodb+Node技术实现的多用户博客系统教程(4)

本章主要讲什么(一句话)? <项目实战:基于Angular2+Mongodb+Node技术实现的多用户博客系统教程(4)> -- 基于Node的Express项目环境框架搭建 一.前言 从本节开始,我们将正式[多用户博客系统]的项目开发工作.首先我们先从后台Node部分开始做起,一步步带领大家完成整个博客系统的开发. 本篇将主要帮助大家把Node环境下的Express框架搭建起来,后继后台将会在这个框架上进行扩展与业务逻辑开发. 二.项目环境 Node.js: v 6.x Express: v

认识loadrunner及相关性能参数

认识loadrunner及相关性能参数 LoadRunner,是一种预测系统行为和性能的负载测试工具.通过以模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题,LoadRunner能够对整个企业架构进行测试.通过使用 LoadRunner,企业能最大限度地缩短测试时间,优化性能和加速应用系统的发布周期. LoadRunner是一种适用于各种体系架构的自动负载测试工具,它能预测系统行为并优化系统性能. 对象 LoadRunner的测试对象是整个企业的系统,它通过模拟实际用户的操作行为和

操作系统相关知识

一.什么是操作系统 操作系统(Operating System,简称OS)是管理计算机硬件资源,控制其他程序运行并为用户提供交互操作界面的系统软件的集合.操作系统是计算机系统的关键组成部分,负责管理与配置内存.决定系统资源供需的优先次序.控制输入与输出设备.操作网络与管理文件系统等基本任务. 二.操作系统的种类 操作系统的种类很多,各种设备安装的操作系统可从简单到复杂,可从手机的嵌入式操作系统到超级计算机的大型操作系统.目前流行的现代操作系统主要有Android.BSD.IOS.Linux Ma

&lt; 独立项目 - 文本挖掘 &gt; - 2016/10/25 第一更 - &lt;Linux相关知识准备&gt;

< 独立项目 -  文本挖掘 > 项目立项的相关背景介绍,TODO方向. 一.Ubuntu环境配置 主机系统:Windows 7 SP1  64位操作系统 | i5-4210 CPU | 16GB RAM VirtualBox虚拟环境:GUN VitrualBox Linux系统:Ubuntu 15.10(ubuntu-15.10-desktop-i386) 二.Linux Ubuntu 基础知识 使用Ctrl+Alt+[F1~F6],可以切换到1~6号控制台.使用Ctrl+Alt+F7返回图

设置VNC多用户登录

1.安装VNCyum install vnc-server2.添加多个用户用户useradd user1  //添加用户user1passwd user1  //设置用户的linux登录密码su user1          //切换到用户user1vncpasswd      //设置用户的user1登录密码exituseradd user2  //添加用户user2passwd user2  //设置用户的linux登录密码su user2         //切换到用户user2vncpa

文件系统与linux相关知识点

文件系统是操作系统中管理持久性数据的子系统,提供数据存储和访问功能.对于服务器开发人员,比较关注的是unix(linux)环境下的文件系统,比如分区与磁盘关系,磁盘的剩余空间,文件的类型与权限控制,文件链接等相关知识. 磁盘结构简介: 回到顶部 文件系统是建立在物理磁盘之上的,因此在介绍文件系统之前先简单介绍磁盘的结构,这样便于理解后面的相关概念.本文对磁盘的介绍可能比较粗略,感兴趣的读者可以参考<硬盘的读写原理>这一篇文章,写的非常详尽.先来一张结构示意图: 相关术语解释如下: 磁盘面(pl