请教后台服务如何监听音量按键

Android 码拜 5年前 (2015-04-23) 215次浏览 0个评论
 

         最近在做了个应用,在应用中点击按钮进行一个其他应用的界面遍历,运行界面是任意的,后台用一个服务来监控界面是正常的, 现在想能让它停止下来,界面上不能做的,想用音量按键来让它停止。
        service不像activity能通过复写onKeyDown来监听按键,希望大家多多指教~~

请教后台服务如何监听音量按键
10分
能不能在别的地方接收到按下音量键的时候发送一个广播,然后在服务那里接收广播做处理?
请教后台服务如何监听音量按键
20分
也可以设计一个Util管理类,service-Utils-all activity。每一个activity中都有一个utils 的引用,而utils中也有一个service的引用,这样在activity中处理案件消息,由utils统一管理,再由utils调用service来处理案件消息。这里的utils不但可以管理案件消息,也可以统一管理所有的activity需要管理的东西。可以参考一下android music中的系统源码(MusicUtils.java 这个文件)。当然最方便的是一楼的这种做法。
请教后台服务如何监听音量按键
10分
监听  VOLUME_CHANGED_ACTION  
请教后台服务如何监听音量按键
广播可以监听到手机的各种状态
请教后台服务如何监听音量按键
同求回复。
2楼的做法,本人不太理解,不知道如何操作。
但是,使用广播Receiver的方式,如果监听MEDIA_BUTTON,必须注册AudioManager,但是注册了这个AudioManager之后,当程序监听到MEDIA_BUTTON的事件时(不知何故,我这里却只能监听到耳机上的中键),就会因为启动了AudioManager而启动系统自带的音乐程序。此时,MEDIA_BUTTON的事件监听也同时将被系统的音乐程序截取,我的程序在也接收不到了。

不知道到底应该如何处理了。


CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明请教后台服务如何监听音量按键
喜欢 (0)
[1034331897@qq.com]
分享 (0)

文章评论已关闭!