后台播放music,如何判断是哪个app播放

来源:互联网 发布:数控火焰切割手动编程 编辑:程序博客网 时间:2024/05/17 02:32
 这是一个 change feature 的实现
此 feature 的目的是查询当前是哪个 app 正在播放音乐
 
 
 
[SOLUTION]
 1: 修改 frameworks\base\media\java\android\media\IAudioService.aidl, 加入方法声明:
String getFocusedPackageName();
 
2: frameworks\base\media\java\android\media\AudioService.java 中加入方法:
public String getFocusedPackageName(){
 return mMediaFocusControl.getFocusedPackageName();
}
 
3: MediaFocusControl.java 增加方法
protected String getFocusedpackageName(){
 synchronized(mAudioFocusLock){
  if(mFocusStack.empty()){
   return "";
  }else
   return mFocusStack.peek().getPackageName();
 }
}
 
 4: FocusRequester.java增加方法
public String getPackageName(){
 return mPackageName;
}
 
 则上层通过调用 AudioService 的 getFocusedPackageName 接口即可获取到需要的数据
 
相关FAQ:

FAQ12909 [Audio Common]耳机按键功能定制: 单击:播放/暂停音乐,双击:下一首,三击:上一首

FAQ14329 [如何在Framework层互斥两个第三方音乐播放器]

FAQ14660 音量警告提示框选择OK,重启后再按侧键增大音量希望还会弹出音量警告提示框

FAQ15283 [Audio Driver] 手机放音乐时连接音箱, 将音箱音量调到最大时,音乐暂停

0 0