锁屏清理进程

注意:锁屏和解锁广播接受者不能再清单文件注册,必须使用代码注册

1.注册锁屏广播接受者
    a.创建
        /**
         * 锁屏的广播接受者
         * @author Administrator
         *
         */
        private class ScreenOffReceiver extends BroadcastReceiver{

            @Override
            public void onReceive(Context context, Intent intent) {
                System.out.println("锁屏了......");

            }
        }
    b.注册
        //注册锁屏的广播接受者
        screenOffReceiver = new ScreenOffReceiver();
        //设置过滤条件
        IntentFilter screenoffIntentFilter = new IntentFilter();
        screenoffIntentFilter.addAction(Intent.ACTION_SCREEN_OFF);
        //注册广播接受者
        registerReceiver(screenOffReceiver, screenoffIntentFilter);
    c.注销
        //注销锁屏广播接受者
        if (screenOffReceiver != null) {
            unregisterReceiver(screenOffReceiver);
            screenOffReceiver = null;
        }
    d.执行操作,清理进程和停止更新
        @Override
        public void onReceive(Context context, Intent intent) {
            System.out.println("锁屏了......");
            //清理进程的操作
            killProcess();
            //停止更新
            stopUpdates();
        }
2.解锁的广播接受者
    a.创建
        /**
         * 解锁的广播接受者
         * @author Administrator
         *
         */
        private class ScrennOnReceiver extends BroadcastReceiver{

            @Override
            public void onReceive(Context context, Intent intent) {

            }
        }
    b.注册
        //注册解锁的广播接受者
        scrennOnReceiver = new ScrennOnReceiver();
        //设置过滤条件
        IntentFilter scrennOnIntentFilter = new IntentFilter();
        scrennOnIntentFilter.addAction(Intent.ACTION_SCREEN_ON);
        //注册广播接受者
        registerReceiver(scrennOnReceiver, scrennOnIntentFilter);
    c.注销
        //注销解锁广播接受者
        if (scrennOnReceiver != null) {
            unregisterReceiver(scrennOnReceiver);
            scrennOnReceiver = null;
        }
    d.开启更新
        @Override
        public void onReceive(Context context, Intent intent) {
            //开启更新
            updateWidgets();
        }

widgetBug处理

将开启服务的操作放到onUpdate方法中
    //当更新时间到了,就会调用
    @Override
    public void onUpdate(Context context, AppWidgetManager appWidgetManager,
            int[] appWidgetIds) {
        // TODO Auto-generated method stub
        super.onUpdate(context, appWidgetManager, appWidgetIds);
        System.out.println("onUpdate");
        //开启服务
        Intent intent = new Intent(context,WidgetsService.class);
        context.startService(intent);
    }
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值