protected BroadcastReceiver messageReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (action.equals(MusicConstant.MEDIA_EXECUTE_CMD)) {
int cmd = Integer.parseInt(intent.getStringExtra("cmd"));
switch (cmd) {
case :
if (PCount % == ) {
screenOff();
} else {
screenOn();
}
PCount++;
break;
case MusicConstant.cmd.VKEYCODE_MUTE:
// mute();
break;
case MusicConstant.cmd.VKEYCODE_UP://up // volumeUp();
break;
case MusicConstant.cmd.VKEYCODE_DOWN://down // volumeDown();
break;
case MusicConstant.cmd.VKEYCODE_EXIT:
//finish();
break;
default:
break; } }else if(action.equals(MusicConstant.SET_VOLUME_ACTION)){
app.baseOnKeyFlag = false;
baseClickTime = System.currentTimeMillis();
int oldVol = audioManager.getStreamVolume(AudioManager.STREAM_MUSIC);
setVolume(intent.getIntExtra("volume",oldVol));
showBaseVolumeWindow();
}else if(action.equals(Intent.ACTION_SCREEN_ON)){
stopTimer();
}else if(action.equals(Intent.ACTION_SCREEN_OFF)){
startTimer();
}
}
}; private void initFilter() {
IntentFilter filter = new IntentFilter();
filter.addAction(MusicConstant.MEDIA_EXECUTE_CMD);
filter.addAction(MusicConstant.SET_VOLUME_ACTION);
filter.addAction(Intent.ACTION_SCREEN_ON);
filter.addAction(Intent.ACTION_SCREEN_OFF);
registerReceiver(messageReceiver, filter);
}
 

1.高版本,用户发送自定义广播,接收不到信息

Intent intent = new Intent();
intent.setAction("demo.destroy");
intent.setComponent( new ComponentName( "luoy.com.servicebackstage" ,
"luoy.com.servicebackstage.MyReceiver") );
sendBroadcast(intent);

setComponent的两个参数,第一个是包名,第二个是Receive的路径

2.系统广播接收不到

一些特殊的广播,必须动态注册,静态注册是不起效果的

类似,屏幕的锁屏和开屏

IntentFilter recevierFilter=new IntentFilter();
recevierFilter.addAction(Intent.ACTION_SCREEN_ON);
recevierFilter.addAction(Intent.ACTION_SCREEN_OFF);
MyReceiver receiver=new MyReceiver();
registerReceiver(receiver, recevierFilter); https://blog.csdn.net/qq_30711091/article/details/86657268

android 接受系统锁屏广播,及高版本发送广播的更多相关文章

  1. Android关闭系统锁屏

    昨晚探索了一下Android系统内的目录,意外发现系统锁屏的数据库 使用adb shell进入系统根目录 adb shell su sqlite3 data/system/locksettings.d ...

  2. android屏蔽系统锁屏的办法

    最近在开发一个第三方锁屏,使用中需要屏蔽系统锁屏,故代码如下: 在第三方锁屏的服务中onCreate()方法中(第三方锁屏服务启动时关闭一次系统锁屏服务即可) KeyguardManager mKey ...

  3. android 6 (API 23) 及更高版本 面向 NDK 开发者的 Android 变更

    Android N 已经出来,有了好大的变化,对于我们开发者来说,最大的影响莫过于**NDK**相关东西. 以下是在中国谷歌开发者社区看到的.里面有好多的变化,欢迎大家来讨论. 发布人:开发顾问 Dm ...

  4. 最新详解android自动化无障碍服务accessibilityservice以及高版本问题_1_如何开启获得无障碍

    前言 无障碍服务accessibilityservice是什么 简单来说 无障碍服务就是一个为残障人士 尤其是视觉障碍人士提供的一个帮助服务.具体就是可以识别控件 文字 可以配合语音助手 操作和 使用 ...

  5. android在广播接收器BroadcastReceiver里面再进行发送广播,造成当前广播接收器不断循环执行问题

    最近在公司处理项目时,用到锁屏状态弹出activity进行提示,类似QQ消息弹屏提示的功能.当中用到了,假如该弹出activity已经位于锁屏界面外时,将不进行再次弹窗,而是发送广播进行通知数据更新, ...

  6. Android初级教程理论知识(第六章广播接受者)

    总体概述: 广播接收者 现实中:电台要发布消息,通过广播把消息广播出去,使用收音机,就可以收听广播,得知这条消息 Android中:系统在运行过程中,会产生很多事件,那么某些事件产生时,比如:电量改变 ...

  7. Android接受验证码自动填入功能(源码+已实现+可用+版本兼容)

    实际应用开发中,会经常用到短信验证的功能,这个时候如果再让用户就查看短信.然后再回到界面进行短信的填写,难免有多少有些不方便,作为开发者.本着用户至上的原则我们也应该来实现验证码的自动填写功能,还有一 ...

  8. android --拍照,从相册获取图片,兼容高版本,兼容小米手机

    前几天做项目中选择图片的过程中遇到高版本和小米手机出现无法选择和崩溃的问题,现在记录下来,后面出现同类问题,也好查找 1,定义常量: private static final int TAKE_PIC ...

  9. Android 之低版本高版本实现沉浸式状态栏

    沉浸式状态栏确切的说应该叫做透明状态栏.一般情况下,状态栏的底色都为黑色,而沉浸式状态栏则是把状态栏设置为透明或者半透明. 沉浸式状态栏是从android Kitkat(Android 4.4)开始出 ...

随机推荐

  1. 卿学姐与公主 UESTC - 1324 分块模板题

    题意:http://acm.uestc.edu.cn/#/problem/show/1324 中文题,自己看喽. 题解:分块模板,update时顺便更新块属性.ask时先判掉belong[l]==be ...

  2. Oracle管理监控之linux下wendba登录设置

    [root@localhost ~]# su - oracle [oracle@localhost ~]$ which jar/usr/bin/jar [oracle@localhost ~]$ ex ...

  3. deque Comparison of Queue and Deque methods Comparison of Stack and Deque methods

    1. 队列queue和双端队列deque的转换 Queue Method Equivalent Deque Methodadd(e) addLast(e)offer(e) offerLast(e)re ...

  4. 基础邮件原理(MUA,MTA,MDA)

    电子邮件基本概念: MUA(Mail User Agent)接收邮件所使用的邮件客户端,使用IMAP或POP3协议与服务器通信: MTA(Mail Transfer Agent) 通过SMTP协议发送 ...

  5. Redis添加历史浏览记录

    参考资料 http://redisdoc.com/index.html http://redis-py.readthedocs.io/en/latest/#indices-and-tables 1.什 ...

  6. 06_常用 Linux 命令的基本使用

    常用 Linux 命令的基本使用 目标 理解学习 Linux 终端命令的原因 常用 Linux 命令体验 01. 学习 Linux 终端命令的原因 Linux 刚面世时并没有图形界面,所有的操作全靠命 ...

  7. python float()

    1.函数功能将一个数值或者字符转换成浮点型数值 >>> a = 12345 >>> amount = float(a) >>> print(amo ...

  8. 廖威雄: 思维导图:利用__attribute__((section()))构建初始化函数表与Linux内核init的实现

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/juS3Ve/article/details/79049404 本文具体解说了利用__attribut ...

  9. vue学习之npm

    任何一门计算机语言都包含了丰富的第三方库,npm就是JavaScript这门语言的第三方库管理工具,本文详细介绍了JavaScript的包管理工具,npm. 在计算机中安装好Node.js之后,默认已 ...

  10. openssl version 查看openssl 版本出现openssl: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory,怎么办

    查看openssl版本, 解决办法: ln -s /usr/local/lib64/libssl.so.1.1 /usr/lib64/libssl.so.1.1 ln -s /usr/local/li ...