Android Texting App从“Media”更改

时间:2011-03-10 15:34:07

标签: java android

我为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);
  }
}

我想我应该问的真正问题是:

有没有办法判断手机是否已静音,以便我可以编辑代码,以便在有内容时不包含语音反馈?

谢谢!

2 个答案:

答案 0 :(得分:0)

您应该使用Ringtone对象来播放铃声和提醒。您需要使用RingtoneManager才能获得一个铃声对象,该对象具有一个方法setStreamType(),您可以使用该方法播放相应的流。

答案 1 :(得分:0)

如何使用“铃声”作为音量类型?如果没有,您可能希望找到一种方法在通知之前调高音量,并将音量减小回通知后的音量。查看Change Media volume in Android?以获取有关如何更改音量的信息。祝你好运:)