我正在为一个专门目的的应用程序需要连接耳机麦克风。我不希望用户错误地使用手机的内置麦克风并且体验不合标准,因此理想情况下,该应用应强制使用3.5毫米耳机。
不幸的是,我无法在网上找到与此有关的任何信息,只有关于检查麦克风是否可用的帖子。我想检查在3.5毫米插孔中是否插入了耳机。
我可以看到至少一个存在此功能的应用程序。当我连接/断开耳机时,较小的AudioSwitch将显示我的输入是来自耳机还是内置麦克风。
我将如何在自己的应用程序中实现这一目标?
您可以使用ACTION_HEADSET_PLUG广播操作来检测何时插入有线耳机。
请注意,广播接收者必须手动注册,而不是在清单中注册:
yourBroadcastHandler = new BroadcastHandler();
registerReceiver(yourBroadcastHandler, new IntentFilter(Intent.ACTION_HEADSET_PLUG));
并为您的广播实现处理程序:
public final class BroadcastHandler extends BroadcastReceiver {
@Override
public void onReceive(final Context context, final Intent intent) {
// Do what you need
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句