소리를 재생해야하는 응용 프로그램을 만들고 있습니다. 전화벨이 울리거나 전화가 걸려 오면 이어폰에서 소리를 내고 싶습니다. 코드 울부 짖는 소리는 화면이 켜져있을 때만 완벽하게 작동하지만 전화를 걸 때 내 귀에 전화가 오면 화면이 꺼지고 내 "알람"이 재생되지 않습니다. 어떤 힌트?통화 중에 알람 재생
TelephonyManager tm = (TelephonyManager) this.getSystemService(Context.TELEPHONY_SERVICE);
int state = tm.getCallState();
mMediaPlayer.setLooping(true);
if(state == TelephonyManager.CALL_STATE_OFFHOOK || state == TelephonyManager.CALL_STATE_RINGING){
mMediaPlayer.setAudioStreamType(AudioManager.STREAM_VOICE_CALL);
mMediaPlayer.setScreenOnWhilePlaying(true);
audioManager.setSpeakerphoneOn(false);
audioManager.setStreamSolo(AudioManager.STREAM_VOICE_CALL, true);
audioManager.setMode(AudioManager.MODE_IN_CALL);
Log.d("GOFC","Tocando ou fora do gancho");
} else {
mMediaPlayer.setAudioStreamType(AudioManager.STREAM_ALARM);
vibrator.vibrate(pattern, 1);
Log.d("GOFC","Normal");
}
mMediaPlayer.prepare();
mMediaPlayer.start();
전화를 걸고 화면에 알람이 울리지 만 현재 통화 중이며 화면이 꺼져 있으면 작동하지 않습니다. – Carth
예. 휴대 전화를 귀에 꽂으면 화면이 꺼집니다 (센서가 있습니다). 내 전화가 탁자 위에 놓이는 소리를들을 수 있습니다. – gugarush