【问题标题】:Permission Denial: get/set setting for user asks to run as user -2 but is calling from user 0权限拒绝:获取/设置用户要求以用户 -2 身份运行但从用户 0 调用的设置
【发布时间】:2013-12-14 13:33:05
【问题描述】:

我的应用程序在我的测试设备上正常运行(当我通过 ADT 安装它时,当我通过导出的 APK 文件安装它时)但它在 Play Store 测试设备上失败并出现以下错误:

权限拒绝:获取/设置用户要求以用户 -2 身份运行但从用户 0 调用,这需要 android.permission.INTERACT_ACROSS_USERS_FULL

我是 Android 世界的新手,我不明白为什么它可以在我的设备上运行,并且在 Play 商店测试中在同一设备上失败?

这种错误类型在 Android 工作环境中意味着什么?

我添加了以下权限

android.permission.INTERACT_ACROSS_USERS_FULL

在此处推荐的 AndroidManifest.xml 中:Permission Denial

但应用程序再次无法在他们的测试设备上启动/打开。

编辑:

测试运行 Android 4.3 的设备

【问题讨论】:

标签: android permissions


【解决方案1】:

请尝试有根手机。此错误是由用户权限引起的 根=uid0 你=uid -1 或 -2

【讨论】:

  • 不好的方式。你会向用户发送使手机 root 的指令吗?
【解决方案2】:

对于遇到此问题的其他人,对我来说,这只是 AndroidManifest.xml 文件中的活动名称错误。

我不需要添加任何权限,一旦活动名称被更正(在我的中它指出错误的包名称),它运行良好。

【讨论】:

    【解决方案3】:

    我在尝试使用我计划发布到市场的应用程序版本使用移动文件时遇到了同样的问题。问题是我试图移动的文件是在应用程序开发过程中由使用调试证书签名的应用程序创建的。因此,我试图使用一个由另一个证书签名的应用程序访问使用一个证书创建的文件。我清理了所有文件,并开始使用我计划发布到市场的应用程序创建的新文件。现在我可以访问和移动文件,而不会出现 Android 系统抱怨 :)

    【讨论】:

    • 您是如何“清理所有文件并从应用程序创建的新文件重新开始”的?我遇到了这个问题,我相信这是因为我在我的 mac 之间切换时使用了两个不同的调试证书。
    • 经过进一步测试,证明证书不是问题。我只能写入 SD 卡的 Android/data/com.your_app/files 文件夹。 SD 卡上的其他目录是只读的。我知道文件浏览器应用程序可以写入 SD 卡上的任何目录,因此它们使用了一些未记录的技巧来获得写入权限。
    猜你喜欢
    • 1970-01-01
    • 2021-03-22
    • 1970-01-01
    • 2023-03-14
    • 1970-01-01
    • 2015-08-01
    • 1970-01-01
    • 2014-08-14
    • 1970-01-01
    相关资源
    最近更新 更多