Android从耳机/ USB插孔发送/接收字节?

时间:2012-04-14 18:53:26

标签: java android c++ headphones

简单的问题,有没有办法从Android手机的耳机插孔读取字节/数据?我知道HTC做了一个应用程序,让耳机充当天线并以这种方式获得Radio,但我是否必须使用原生C ++或那些?我想要做的是将双掷开关连接到耳机插孔,我希望我的手机检测是否按下了开关。怎么办?我可以说这不是一件容易的事,但我可能已经走得更糟了。

编辑:即使它是USB插孔,我也不会介意。我只想将一个开关连接到我的手机并使用一个程序来检测它是打开还是关闭

2 个答案:

答案 0 :(得分:0)

您无法通过耳机插孔将数据发送到设备中。使用耳机作为天线是不同的。它实际上并没有将数据传输到手机中,而是使用线缆作为内置天线的扩展(连接到手机内部的接收器,产生“数据”)

您应该可以使用设备的USB,但是,只要您想将手机外部的数据传输到USB,就应该专注于USB,尽管您可能也可以使用IR广播/蓝牙播放器设置而不是有线开关。

答案 1 :(得分:0)

由于耳机插孔通常包括用于支持耳机的麦克风触点,因此您可以使用数字/模拟/数字转换来传输数据。 (这就是使用像Square这样的耳机插孔的硬件扩展可能有效的方法。

但是对于像你描述的那样的开关我要么去蓝牙(它可以像代码中的简单串行连接;但是你需要一些自定义但不是非常复杂的硬件)或试试Arduino for Android,这是专为此用例设计并使用USB(但我没有个人经验)。

在任何情况下都不需要C ++或native,一切都可以通过Java API获得。