Android takePersistableUriPermission()是否适用于多用户?
在我的应用程序中,我选择了一个带有Android takePersistableUriPermission()是否适用于多用户?,android,permissions,uri,multi-user,Android,Permissions,Uri,Multi User,在我的应用程序中,我选择了一个带有Intent.ACTION\u OPEN\u DOCUMENT\u TREE的文件夹,并获取所选文件夹的Uri。我调用takePersistableUriPermission()为选定的Uri授予读/写权限 我的问题是:它是否适用于我设备中的多用户? 例如: 我使用Google帐户1登录,安装应用程序,选择文件夹并授予权限。 然后我删除Google帐户1并使用Google帐户2登录。Uri权限是否仍被授予 我在Note4上进行了测试,在更改用户后,它们仍然被授予
Intent.ACTION\u OPEN\u DOCUMENT\u TREE
的文件夹,并获取所选文件夹的Uri
。我调用takePersistableUriPermission()
为选定的Uri
授予读/写权限
我的问题是:它是否适用于我设备中的多用户?
例如:
我使用Google帐户1登录,安装应用程序,选择文件夹并授予权限。
然后我删除Google帐户1并使用Google帐户2登录。Uri权限是否仍被授予
我在Note4上进行了测试,在更改用户后,它们仍然被授予。但我不确定是否有其他设备,也没有找到任何关于此问题的文档。基于持久URI的权限与包名(和用户id-见下文)相关,而不是任何类型的Google或其他帐户系统。这意味着,只要软件包仍然安装,它将保留该权限(当然,除非授权应用程序撤销该权限)
在支持多个用户配置文件的设备上,例如许多平板电脑、Android for Work或运行棉花糖的手机,每个用户都完全被沙盒隔离,运行安装在其用户配置文件上的每个应用程序的单独实例。在这种情况下,基于URI的权限当然只适用于运行应用程序的用户,而不适用于其他用户配置文件。非常感谢!我现在明白了!