【问题标题】:java.lang.SecurityException: No active admin owned by uid 10047 for policy #4 on wipe datajava.lang.SecurityException:uid 10047 没有针对擦除数据的策略 #4 拥有的活动管理员
【发布时间】:2023-04-08 11:47:02
【问题描述】:

我想使用我的应用程序远程擦除数据,但目前我正尝试从应用程序手动执行此操作。但是当我尝试使用擦除数据方法时,它显示安全异常。我试图强制锁定,它显示出积极的结果,但在擦除数据期间出现异常。请帮我。谢谢。

这是堆栈跟踪

java.lang.SecurityException: No active admin owned by uid 10047 for policy #4
    at android.os.Parcel.readException(Parcel.java:1425)
    at android.os.Parcel.readException(Parcel.java:1379)
    at android.app.admin.IDevicePolicyManager$Stub$Proxy.wipeData(IDevicePolicyManager.java:1553)
    at android.app.admin.DevicePolicyManager.wipeData(DevicePolicyManager.java:1082)
    at com.test.WipeActivity$1.run(WipeActivity.java:54)
    at java.lang.Thread.run(Thread.java:856)

【问题讨论】:

    标签: java android device-admin device-policy-manager


    【解决方案1】:

    确保您为DeviceAdminReceiver 实现类设置了正确的权限,并在Settings 中以应用管理员身份进行检查

    <device-admin xmlns:android="http://schemas.android.com/apk/res/android">
      <uses-policies>
        <wipe-data />
      </uses-policies>
    </device-admin>
    

    有关更多信息,请遵循本指南http://developer.android.com/guide/topics/admin/device-admin.html

    【讨论】:

    • 我已经这样做了,但没有用。这是我的 xml 文件 code schemas.android.com/apk/res/android"> code
    • 我自己解决了这个问题。我没有在接收器类中提到访问修饰符。我刚刚把它公开了,我的问题解决了。
    • 嗨 Xkoppion。我也面临同样的问题“安全异常”,因为在管理应用程序中禁用 USB 调试。但是我应该在哪里更改访问修饰符。你能告诉我谢谢你提前跨度>
    • @bhargavkumar040 为我们提供整个堆栈跟踪以帮助您。
    • 您好 bhargavkumar040,您必须更改接收器类中的访问修饰符来监听您的呼叫。将其更改为公开,它可能会解决您的问题。
    【解决方案2】:

    这里是xml文件

    <device-admin xmlns:android="schemas.android.com/apk/res/android">
    <uses-policies>
    <force-lock />
    <wipe-data />
    </uses-policies>
    </device-admin>
    

    在接收器类中将修改的访问权限更改为Public。确保您的接收器类和方法是公开的。如果有人在此之后仍然遇到任何问题,请告诉我。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-11-23
      • 2020-11-21
      • 2013-08-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多