Я делаю вызывающее устройство, говорящее на имени вызывающего абонента, используя TTS. Я хочу приостановить рингтон, когда TTS говорит, а затем возобновляет мелодию звонка. Из того, что я исследовал, мы можем использовать AudioFocus
(надеюсь, что так). Во всяком случае я использую следующий кодПрикоснитесь к мелодию телефона во время разговора через текст в речь, а затем возобновите работу
Update
Я использую этот код в настоящее время.
public void speak(final String talk) throws InterruptedException {
final AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
int musicVolume= audioManager.getStreamVolume(AudioManager.STREAM_MUSIC);
audioManager.setStreamVolume(AudioManager.STREAM_MUSIC, musicVolume, 0);
audioManager.setRingerMode(AudioManager.RINGER_MODE_SILENT);
int result = tts.setOnUtteranceProgressListener(new UtteranceProgressListener() {
@Override
public void onStart(String utteranceId) {
// TODO Auto-generated method stub
}
@Override
public void onError(String utteranceId) {
// TODO Auto-generated method stub
}
@Override
public void onDone(String utteranceId) {
// TODO Auto-generated method stub
audioManager.setRingerMode(AudioManager.RINGER_MODE_NORMAL);
System.out.println("done");
}
});
HashMap<String, String> params = new HashMap<String, String>();
params.put(TextToSpeech.Engine.KEY_PARAM_UTTERANCE_ID,"stringId");
tts.speak(talk, TextToSpeech.QUEUE_FLUSH, params);
System.out.println("speaking after tts is over" + talk+" "+result);
}
Хотя Ringtone
останавливается и tts
играет, но после того, как tts
играет Ringtone
не возобновляется. Что мне делать?
Я хочу остановить или приостановить воспроизведение музыкального проигрывателя, если tts начнет работать, и перезапустить музыкальный плеер, если tts stops.can вы можете помочь мне в этом. –
Логика кодирования такая же, как я написал, я приостанавливал мелодию звонка, вам нужно приостановить воспроизведение музыкального проигрывателя. Если вы все еще не можете получить ответ, лучшим вариантом будет задать новый вопрос. –
спасибо за ответ !! Я разрешаю проблему !! –