递归火山软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 火山 源码 类库
查看: 2875|回复: 2
打印 上一主题 下一主题

[安卓] 如何对耳机按键监听

[复制链接]

7

主题

74

帖子

528

积分

高级会员

Rank: 4

积分
528
跳转到指定楼层
楼主
发表于 2023-10-6 21:06:38 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
   全局广播无法监听到耳机按钮被按下,系统自动拉起了自带音乐app,网上有很多例子但是没有火山安卓的!!!!!
回复

使用道具 举报

7

主题

74

帖子

528

积分

高级会员

Rank: 4

积分
528
板凳
 楼主| 发表于 2023-10-8 00:38:08 | 只看该作者
创世魂 发表于 2023-10-7 12:10
没有耳机,没法测试。
大概是这样的,但是实际上也不知道行不行。如果不行,那我也不知道了。

非常感谢创世大佬,但是很遗憾,静态广播还是无法接收到耳机插入以及按键等动作,如果有大佬愿意解决本人出一包中华的红包以示感谢!
回复

使用道具 举报

444

主题

1万

帖子

4万

积分

超级版主

Rank: 8Rank: 8

积分
40529
沙发
发表于 2023-10-7 12:10:02 | 只看该作者
没有耳机,没法测试。
大概是这样的,但是实际上也不知道行不行。如果不行,那我也不知道了。


<火山程序 类型 = "通常" 版本 = 1 />

类 静态接收器 <公开 基础类 = 全局广播静态接收器 @强制输出 = 真 @安卓.附加清单 = 全局广播静态接收器.多媒体按钮被按下 @安卓.附加清单 = 全局广播静态接收器.多媒体按钮被按下_高>
{
    方法 通知_接收到广播 <公开 @虚拟方法 = 可覆盖>
    参数 环境对象 <类型 = 安卓环境>
    参数 启动信息 <类型 = 启动信息类 注释 = "提供发送广播时所提供的启动信息,必定不为空对象.">
    {
        // 注意: 接收到本广播时,本应用程序未必已经被启动.
        变量 动作文本 <类型 = 文本型>
        变量 提示文本 <类型 = 文本型>
        动作文本 = 启动信息.取动作文本 ()
        如果 (文本相等 (动作文本, 全局广播动态接收器.多媒体按钮被按下))  // 特殊处理电话拨出
        {
            变量 按键 <参考 类型 = 按键事件类>
            按键 = (按键事件类)启动信息.取分包附带数据 (全局广播动态接收器.按键字段名)
            如果 (按键 != 空对象 && 按键.动作 == 按键动作类.被按下)
            {
                应用程序.取程序 ().载入窗口 (启动类)

            }

        }

    }
}

安卓无障碍实战课:点击查看
交流群:641526939
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|递归火山软件开发平台 ( 鄂ICP备18029190号 )

GMT+8, 2024-11-24 05:24 , Processed in 0.090281 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表