Java 安卓耳机插孔按钮接线?

Java 安卓耳机插孔按钮接线?,java,android,headset,Java,Android,Headset,我正试图找出如何使用耳机插孔触发我的应用程序中的动作,使用自定义按钮。我有一些代码,当我按下插入端口的耳机上的按钮时会检测到,但如果我将TRRS电缆插入端口并短接引脚,我将一无所获 我发现: 但它说R1应该有0欧姆,所以短路不会导致它做些什么吗?耳机没有外部电压,所以我认为我不必给电路加电压。R1代表什么?播放、暂停、静音或其他?有人能给我指出正确的方向来解决这个问题吗?好的,我想出来了。在用许多电阻器进行了多次测试之后,我终于意识到它是如何工作的 在TRRS插头上,有4个环-R1(尖端)和R2

我正试图找出如何使用耳机插孔触发我的应用程序中的动作,使用自定义按钮。我有一些代码,当我按下插入端口的耳机上的按钮时会检测到,但如果我将TRRS电缆插入端口并短接引脚,我将一无所获

我发现:


但它说R1应该有0欧姆,所以短路不会导致它做些什么吗?耳机没有外部电压,所以我认为我不必给电路加电压。R1代表什么?播放、暂停、静音或其他?有人能给我指出正确的方向来解决这个问题吗?

好的,我想出来了。在用许多电阻器进行了多次测试之后,我终于意识到它是如何工作的

在TRRS插头上,有4个环-R1(尖端)和R2为尖头,R3为接地,R4(底座)为话筒

将R4短接至R3会触发“播放/暂停”按钮动作

我不明白的是,由于麦克风的原因,电路上总是会有电阻。因此,当您将其插入时,R4-R3之间至少需要有1100欧姆的电阻,这样手机才会认为插入了麦克风。在阻力大小上存在很大差异。在我的测试中,1100欧姆起作用,4400欧姆也起作用。如果没有这种阻力,它会认为只有扬声器,而忽略任何按钮信号

我搞砸的地方是,我认为只有按下按钮时才需要阻力。不,它需要一直存在,所以你把电阻和开关并联在电路中

希望这有助于其他人在未来,也可能没有一个伟大的处理硬件