android 空调遥控器——红外设备(基础)
来源:互联网 发布:c语言 延时 linux 编辑:程序博客网 时间:2024/04/30 12:06
最近项目中需要用到 用android 手机控制空调,于是小编就下了心思研究了一下红外开发,去网上查了查,这方面的内容少之又少,所以决定自己搞一搞,好了废话不多说,开搞!
1、要求:调用手机红外设备需要注意,你得看看手机上有没有红外发射器(本人的是荣耀V8,自带红外设备)据小编自己了解 应该是4.4版本 之后的android手机才有机会有红外发射设备因为细心的小编发现 当调用里面方法时 需要加SDK版本判断
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT)或者@RequiresApi(api = Build.VERSION_CODES.KITKAT)
这两个意思是都需要API 为19的手机 小编自行理解不喜勿喷;
2、好说完以上要求,来具体说说怎么调用这个红外发射设备,或者说是驱动;
首先先加一个权限和一个过滤器
<uses-permission android:name="android.permission.TRANSMIT_IR" />这个权限呢就是调用红外设备就不多说<uses-feature android:name="android.hardware.ConsumerIrManager" />这个过滤器的作用主要是给应用市场提个醒 Android Market会根据uses-feature过滤所有你设备不支持的应用 再通俗点说就是没有ConsumerIrManager这个类的android设备 在应用市场上看不到此应用。(因为版本太低 下载下来也没用)
3、红外控制类 ConsumerIrManager
具体怎么调用看代码(注释写的很清楚了)
//需要api大于19与下面if判断用途类似@RequiresApi(api = Build.VERSION_CODES.KITKAT)public class InfraredActivity extends BaseActivity { //获取红外控制类 private ConsumerIrManager IR; //判断是否有红外功能 boolean IRBack; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_infrared); inItEvent(); } //初始化事务 private void inItEvent() { //获取ConsumerIrManager实例 IR = (ConsumerIrManager) getSystemService(CONSUMER_IR_SERVICE); //如果sdk版本大于4.4才进行是否有红外的功能(手机的android版本) if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { IRBack = IR.hasIrEmitter(); if (!IRBack) { showToast("对不起,该设备上没有红外功能!"); } else { showToast("红外设备就绪");//可进行下一步操作 } } } /** * 发射红外信号 * * @param carrierFrequency 红外传输的频率,一般的遥控板都是38KHz * @param pattern 指以微秒为单位的红外开和关的交替时间 */ private void sendMsg(int carrierFrequency, int[] pattern) { IR.transmit(carrierFrequency, pattern); }}
4、以上就是红外的第一步(基础中的基础、重中之重)怎么实例化ConsumerIrManager ,以及要使用的方法。
想详细了解 看小编下一篇
android 空调遥控器——简单发送内容
阅读全文
0 0
- android 空调遥控器——红外设备(基础)
- android 空调遥控器——遥控器基本版(功能全部实现)
- 格力空调遥控器红外编码透析(长码)
- 格力空调遥控器红外编码透析(长码)
- android 空调遥控器——简单发送内容
- STM32——红外遥控器
- Android 红外遥控器实现
- android 手机红外遥控器
- Android红外遥控器编码
- STM32-录制与播放空调/TV遥控器的红外信号
- Android 手机红外遥控器实现
- Android源码编译——RK3128开发板多款红外遥控器常用按键适配
- 单片机——红外遥控器——代码
- 红外遥控器
- 用红外遥控器遥控树莓派(XBMC)
- Arduino模拟空调遥控器
- A20红外遥控器与Android功能的适配
- 全志A20[android教程]-红外遥控器调试
- Ray Tracing 的c++简单实现
- 福州大学第十三届程序设计竞赛题解【8/9】
- 深度增强学习(DRL)漫谈
- 声明
- 项目实训-千寻-核心业务逻辑_业务流程处理
- android 空调遥控器——红外设备(基础)
- 利用mybatis-paginator实现分页
- Luogu P1377 M国王
- 微信自用的跨平台移动端IM网络层封装库Mars详解,自己可以写IM app了
- 骨牌铺方格
- vue-router 路由基础简单介绍
- B-树的基本概念以及代码实现
- 三大WEB服务器对比分析(apache ,lighttpd,nginx)
- 操作系统页面置换算法与虚拟内存