如何确定音频播放是媒体还是语音?

时间:2014-01-08 09:30:37

标签: android media-player voice soundpool android-audiomanager

我正在开发一款能够将音频路由到扬声器/有线耳机的Android应用。鉴于某些音频正在播放,是否可以以编程方式检测音频播放是否是一首歌曲(媒体片段),或者它是否是来自已建立呼叫的语音,使用java?

编辑:我意识到我可以轻松解决问题,因为当我收到或拨打电话时,只能听到语音音频。是否有任何功能可以确定我是否正在通话?

1 个答案:

答案 0 :(得分:1)

尝试此功能:

public boolean isOnCall(Context context){
   AudioManager manager = (AudioManager)context.getSystemService(Context.AUDIO_SERVICE);
   if(manager.getMode()==AudioManager.MODE_IN_CALL){
       return true;
   }
   else{
       return false;
   }
}

在清单中添加权限。

<uses-permission android:name="android.permission.READ_PHONE_STATE" />  

希望这有帮助。