java.lang.SecurityException: No active admin owned by uid 10034 for policy #3

liushuaikobe 2012-03-10 11:01:17
最近在做一个一键锁屏的程序,可是总是产生这个异常( java.lang.SecurityException: No active admin owned by uid 10034 for policy #3)。。试过很多方法也无法消除这个异常,Google上资料也很少。。求帮助啊。。。这个是什么意思啊。。。
(我是在条件成立时启动这个activity以实现锁屏的目的)
public class tempActivity extends Activity {
private static final String TAG = "tempActivity";
private DevicePolicyManager policyManager;
private ComponentName componentName;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.temp);
Log.e(TAG, "Activity created~");
policyManager = (DevicePolicyManager) getSystemService(Context.DEVICE_POLICY_SERVICE);
componentName = new ComponentName(this, AdminReceiver.class);
mylock();
}

private void mylock() {
boolean active = policyManager.isAdminActive(componentName);
if (!active) { // 若无权限
Log.e(TAG, "没有权限~");
activeManage(); // 去获得权限
policyManager.lockNow(); // 并锁屏
} else {
Log.e(TAG, "已经有权限");
policyManager.lockNow(); // 直接锁屏
}
this.finish();
}

private void activeManage() {
Log.e(TAG, "activeManage");
Intent intent = new Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN);
intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN, componentName);
intent.putExtra(DevicePolicyManager.EXTRA_ADD_EXPLANATION, "developers:liushuaikobe");
startActivityForResult(intent, 1);
}
}
...全文
1610 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
zyp009 2014-12-02
  • 打赏
  • 举报
回复
我有遇到类似问题。刚开始是程序运行OK,后面添加一些东西了,导致程序出错。还原代码后就出现上诉bug。 解决:设置->安全->设备管理器里,列出了我的当前程序,点击我的当前程序取消激活。然后再次运行程序就没有问题了。
文公 2014-04-14
  • 打赏
  • 举报
回复
我知道什么原因了,你看一下你的Manifest.xml文件,里面的receiver的路径是不是有问题, 比如: <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.screenoff" 与<receiver android:name=".AdminReceiver" 这两个是否拼接正确,我就是拼接失败,然后导致你说的错误。。。
hotkarriver 2013-08-02
  • 打赏
  • 举报
回复
这个应该是你的device里没有建立账户,试试用email或者gmail建立账户。 锁屏的话不是用KeyguardManager吗?
xiaodi88061671 2013-08-01
  • 打赏
  • 举报
回复
同问~~
过客又见过客 2013-04-24
  • 打赏
  • 举报
回复
楼主解决了吗,我也遇到了这个问题。解决了的话,能吧解决方案发我邮箱吗 459046365@qq.com,谢谢了啊!
我老公出差了 2013-03-24
  • 打赏
  • 举报
回复
http://www.cnblogs.com/androidez/archive/2013/02/17/2915020.html
问答小助手 2013-02-27
  • 打赏
  • 举报
回复
试一下:
if(Build.VERSION.SDK_INT > 8){
            StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
            StrictMode.setThreadPolicy(policy);
        }
liushuaikobe 2013-02-26
  • 打赏
  • 举报
回复
引用 6 楼 cqm1990 的回复:
楼主 问题解决没有 我现在也遇到这个问题哦,求指点
没解决啊,我试着反编译过一些程序,但是都没有什么发现,期待牛人解释啊。
EasyVeclin 2013-02-26
  • 打赏
  • 举报
回复
楼主 问题解决没有 我现在也遇到这个问题哦,求指点
liushuaikobe 2012-06-20
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]

获取admin权限解决了吗?
我现在也遇到这个问题了。
执行了activeManage(); // 去获得权限
之后,Boolean isActiveAdmin=mDPM.isAdminActive(mAdminName);结果仍然是false,
不知道你解决没?
[/Quote]
没解决啊,我试着反编译过一些程序,但是都没有什么发现,期待牛人解释啊。
pengshaohuahw 2012-06-19
  • 打赏
  • 举报
回复
获取admin权限解决了吗?
我现在也遇到这个问题了。
执行了activeManage(); // 去获得权限
之后,Boolean isActiveAdmin=mDPM.isAdminActive(mAdminName);结果仍然是false,
不知道你解决没?
PriSuka 2012-03-14
  • 打赏
  • 举报
回复
应该是相关的权限没有加。
儿大不由爷 2012-03-13
  • 打赏
  • 举报
回复
可能是需要root权限吧
liushuaikobe 2012-03-13
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 ultrapro 的回复:]

可能是需要root权限吧
[/Quote]
大神。。求详解啊!!

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧