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. easyui---easyloader.js

    1.easyloader.js 是根据用户指定,动态加载组件,可以替换下面jqueryeasyui <!-- <script type="text/javascript" ...

  2. 牛客网多校赛第9场 E-Music Game【概率期望】【逆元】

    链接:https://www.nowcoder.com/acm/contest/147/E 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524 ...

  3. CTP API 开发之二 :制作CTP java版 API

    目前上期技术CTP系统提供的API版本是C++版本 SWIG是一个能将C/C++接口转换为其他语言的工具,目前可以支持Python,Java,R等语言. 本文主要介绍Windows 32/64位平台下 ...

  4. gis 相关资料

    --gis原理学习 http://group.cnblogs.com/GIS/best-1.html http://www.cnblogs.com/SuperXJ/tag/移动GIS/ --gis坐标 ...

  5. Oracle备份恢复之数据库备份、还原、恢复理论

    备份 冷备:关闭数据库并进行数据库物理文件的拷贝过程. 热备:数据库处于open阶段时的备份,通过指令将数据库文件头锁定,然后进行物理系统拷贝,然后通过指令解冻数据文件头,解冻后通过日志文件和undo ...

  6. angular2新建的项目上传github

    前提1.git配置好,参见博文 git常用操作 2.angular2安装配置好,这个网上有很多教程,就不多说了,参见angular2快速起步 需要注意的是,大部分问题都是网络问题. 3.新建一个ng项 ...

  7. 教程 | 如何使用纯NumPy代码从头实现简单的卷积神经网络

    Building Convolutional Neural Network using NumPy from Scratch https://www.linkedin.com/pulse/buildi ...

  8. Spark 数据源

    一.mysql作为数据源 import org.apache.spark.sql.{DataFrame, Dataset, Row, SparkSession} /** * mysql作为数据源 * ...

  9. promise VS future

    Future and Promise are the two separate sides of an asynchronous operation. promise is used by the & ...

  10. mysql python pymysql模块 获取插入的最后一条数据的自增ID lastrowid()方法

    调用游标下的lastrowid 可以获取插入之前的表里id字段存放到哪个自增id cursor.lastrowid mysql> select * from userinfo; +----+-- ...