0

我正在尝试为我的电视构建一个非常简单的远程应用程序。经过一番研究,我找到了ConsumerIrManagerClass,但是当我打电话时,this.getSystemService("CONSUMER_IR_SERVICE");我得到null...

手机是三星 Galaxy S4,所以它有一个红外传感器......

这是我的方法的代码:

public void btnOnOff_Click(View view) {
    String command = "0000 0073 0000 000c 0020 0020 0020 0020 0040 0020 0020 0020 0020 0020 0020 0020 0020 0020 0020 0020 0020 0040 0020 0020 0040 0020 0020 0cbf";
    irManager = (ConsumerIrManager) this.getSystemService("CONSUMER_IR_SERVICE");
    irManager.transmit(36000, hexToDec(command));
}

有谁知道如何解决这个问题?

4

2 回答 2

1

您应该使用Context.CONSUMER_IR_SERVICE常量作为参数。

它的价值是"consumer_ir",不是"CONSUMER_IR_SERVICE"

于 2014-05-24T21:51:56.233 回答
0

还要明确一点:它是红外发射器,而不是传感器。传感器位于您正在控制的设备上。

如果您正在执行以下操作: Context.CONSUMER_IR_SERVICE 并且您得到 NULL 您的手机不支持此功能。首先在 Play 商店中尝试一个免费的 IR 应用程序,看看它是否有效。

于 2015-04-29T22:35:24.817 回答