实战-Andorid 系统屏蔽遥控器按键功能实现
需求
测试同学晚上跑Monkey 或者在线视频播放页面一直煲机的情况下,想要屏蔽其他遥控按键的输入,以免干扰。同时,需要能响应monkey 的虚拟按键输入。
实现:
在frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java中进行拦截:
public int interceptKeyBeforeQueueing(KeyEvent event, int policyFlags) {String IR_DEVICE = new String("Funshion Smart TV IR Receiver");//厂商可子定义修改if ("1".equals(SystemProperties.get("debug.fun.irlock", "0")) &&IR_DEVICE.equals(event.getDevice().getName())) {return 0;}
}
通过设置系统属性,增加控制和拦截
增加一个可执行程序 irlock 控制属性:
#define LOG_TAG "irlock"#include <cutils/properties.h>
#include <string.h>
#include <utils/Log.h>using namespace android;
int main(int argc, char** argv)
{if (argc != 2) {ALOGE("ERROR!! usage : irlock 0/1, 0 -- unlock, 1 -- lock");return 0;}if (strcmp(argv[1], "1") == 0) {property_set("debug.fun.irlock", "1");}else{property_set("debug.fun.irlock", "0");}return 0;
}
Android.mk
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE:= irlock
LOCAL_SRC_FILES:= \main.cpp
LOCAL_SHARED_LIBRARIES := \libcutils \liblog
include $(BUILD_EXECUTABLE)
PRODUCT_PACKAGES += irlock
实战-Andorid 系统屏蔽遥控器按键功能实现相关推荐
- html5游戏 遥控器按键,遥控器按键功能说明汇总
遥控器按键功能说明汇总 发布时间:2017-06-12 遥控器按键功能说明汇总 在日常的遥控器使用过程中,我们会经常遇到这样的问题,一些品牌遥控器厂家推出的遥控器上面有着不同的遥控器术语按键,这些遥控 ...
- android系统二次开发,Andorid系统二次开发界面
Andorid系统二次开发界面 给大家介绍完外观,下面我们一起再来看下魅族MX的系统界面.本次魅族MX仍然采用的是Andorid操作系统,并且加入了二次开发界面.UI界面整体上保持了和M9的特色,不过 ...
- Linux下脚本实战之系统监控
Linux下脚本实战之系统监控 一.脚本要求 二.脚本内容 三.运行脚本 一.脚本要求 1.监控系统的CPU.内存.硬盘使用率 二.脚本内容 #!/bin/bash ################# ...
- linux sleeping进程多_一文掌握Linux实战技能系统管理篇
linux 安装包-yum 的使用 linux 进程管理 ps pstree top 指令的使用 linux 进程之间的通信 linux 守护进程 linux 内存以及硬盘使用查看 linux 防火墙 ...
- 公安联勤指挥调度实战应用系统软件平台解决方案
公安联勤指挥调度实战应用系统软件平台解决方案 华盛恒辉建设内容及价值 l 基础数据接入:通过接口开发.资源整合,将警用公共资源统一接入警务地图,实现全市一张图的警用公共资源查询.定位.管理可视化. 软 ...
- win10禁用全角_win10系统屏蔽全角/半角快捷键的操作办法
win10系统使用久了,好多网友反馈说关于对win10系统屏蔽全角/半角快捷键设置的方法,在使用win10系统的过程中经常不知道如何去对win10系统屏蔽全角/半角快捷键进行设置,有什么好的办法去设置 ...
- win10禁用全角,教你恢复win10系统屏蔽全角/半角快捷键的办法
你是否遇到过关于对win10系统屏蔽全角/半角快捷键设置的方法,在使用win10系统的过程中经常不知道如何去对win10系统屏蔽全角/半角快捷键进行设置,有什么好的办法去设置win10系统屏蔽全角/半 ...
- python flask实战订餐系统微信小程序-60nginx + uwsgi 实现多进程访问
python flask实战订餐系统微信小程序-60nginx + uwsgi 实现多进程访问 B站配套视频教程观看 uwsgi多进程配置 uwsgi.ini配置 nginx和uwsgi通过配置文件s ...
- Vue.js实战之系统学习第一节
为什么叫系统学习呢?因为我以前接触过Vue.js,但是没学过它的原理,只是简单的使用了,使用的时候就觉得很好用,没有其他的什么感觉,但当我进入职场后,学习了很多的前端技术后,才发现这个技术的友好,被它 ...
最新文章
- 使用OpenFlashChart 2.0结合asp.net的问题(解疑)
- 编码格式经典书籍--代码整洁之道
- 文巾解题 1833. 雪糕的最大数量
- CS231n官方笔记授权翻译总集篇发布
- MyCat-Web安装
- Oracle 语言分类 数据类型 数据类型转换 常用函数 集合操作 子查询
- 【重复提交表单】表单重复提交的三种情况,解决办法
- 老婆晚上不想睡?这个操作你要会!
- 【报告分享】2019年度薪酬白皮书.pdf(附下载链接)
- C# - 接口,继承
- 网络编程资源大集合(包含前端、java、linux、安卓、github开源项目、开发工具等)
- 【FastDFS-V5.11】Linux下FastDFS+Nginx实现分布式图片服务器搭建详细教程(单机模式)
- er ubnt x设置教程_ubnt的er-x做交换机应该怎么设置啊?
- 轻松搞出一个云盘项目(一),一般人我不告诉哦。
- 计算机协会报名范文,2020年大学计算机协会活动计划书范文
- 华为公司内部控制手册(干货)
- html中textarea标签的换行
- linux及安全期中总结——20135227黄晓妍
- 2021年技术自媒体经验分享 —— 开始尝试认真做 CSDN 的一年后的复盘
- 剑指 Offer 40. 最小的k个数