在Android java中,如何捕获长按蓝牙设备通话按钮?
如何捕获(拦截)长时间按下蓝牙设备通话按钮(android)?
How do I catch (intercept) a long Bluetooth device call button press (android)?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您正在寻找的是
android.intent.action.VOICE_COMMAND
,它是一个活动意图,而不是接收器意图。您的清单中需要包含以下内容:一旦您的活动开始,问题就会出现。语音命令应用程序中使用的大多数 API 都是隐藏的,因此您必须跳过火焰圈才能访问它们。使用反射,或者参见本系列文章数。
You're looking for is
android.intent.action.VOICE_COMMAND
, and it's an Activity intent, not a Receiver intent. You need the following in your manifest:The problem arises once your activity starts. Most of the APIs used in the Voice Command application are hidden, so you have to jump through flaming hoops to access them. Either use reflection, or see this series of articles.
您指的是
Intent.ACTION_CALL_BUTTON
操作,但不是长按?这是不存在的,Android 仅提供有限数量的标准操作,并且不包括长按物理按钮。尽管当您自己的活动打开时可以通过重写活动类中的
onKeyLongPress
方法来实现。You mean the
Intent.ACTION_CALL_BUTTON
action but than for a long press? That doesn't exist, Android offers only a limited amount of standard actions and long press on physical buttons is not included.Although if it is possible when your own activity is open, by overriding the
onKeyLongPress
method in your activity class.