我为Android制作了一个短信应用。当我测试它时,我发现如果我尝试进入静音模式(在手机上),短信应用程序仍然会关闭,因为它被设置为“媒体”而不是“铃声”音量类型。
有没有办法改变这一点,所以当我静音手机时,我的应用程序也会被静音?我不希望用户必须尝试修复它。
更新:抱歉任何疑惑。这是我前一段时间做的一个侧面项目,现在我回到它。
该项目是文本/文本到语音转换器的语音,因此项目中的所有命令都可以通过语音完成。该应用程序将通过该程序的每个步骤与您“交谈”。我希望能够让所有“说话”的人保持沉默,如果手机处于静音状态,该应用会对用户造成影响。以下是我处理语音反馈的方式:
import android.speech.tts.TextToSpeech;
public class VoiceFeedback implements SMSFeedback{
private TextToSpeech tts;
private String text;
public VoiceFeedback(TextToSpeech tts, String text){
this.tts = tts;
this.text = text;
}
public void play(){
tts.speak(text, TextToSpeech.QUEUE_FLUSH, null);
}
}
我想我应该问的真正问题是:
有没有办法判断手机是否已静音,以便我可以编辑代码,以便在有内容时不包含语音反馈?
谢谢!
答案 0 :(得分:0)
您应该使用Ringtone对象来播放铃声和提醒。您需要使用RingtoneManager才能获得一个铃声对象,该对象具有一个方法setStreamType(),您可以使用该方法播放相应的流。
答案 1 :(得分:0)
如何使用“铃声”作为音量类型?如果没有,您可能希望找到一种方法在通知之前调高音量,并将音量减小回通知后的音量。查看Change Media volume in Android?以获取有关如何更改音量的信息。祝你好运:)