Java Android:铃声的自定义音频流

Java Android:铃声的自定义音频流,java,android,audio,Java,Android,Audio,在我的应用程序中,我将ALARM_流的音量设置为最大,并为用户播放铃声,因为无论发生什么,我都想播放铃声 // Retrieve the ringtone that we want to play Uri alarmUri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_RINGTONE); final Ringtone ringtone = RingtoneManager.getRingtone(k1, alarmUri); // S

在我的应用程序中,我将ALARM_流的音量设置为最大,并为用户播放铃声,因为无论发生什么,我都想播放铃声

// Retrieve the ringtone that we want to play
Uri alarmUri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_RINGTONE);
final Ringtone ringtone = RingtoneManager.getRingtone(k1, alarmUri);

// Set the alarm's volume to be the max
final AudioManager mAudioManager = (AudioManager) k1.getSystemService(Context.AUDIO_SERVICE);
int maxAlarmVolume = mAudioManager.getStreamMaxVolume(AudioManager.STREAM_ALARM);
mAudioManager.setStreamVolume(AudioManager.STREAM_ALARM, maxAlarmVolume, 0);

// Play the alarm for a defined period
ringtone.setStreamType(AudioManager.STREAM_ALARM);
ringtone.play();

final Timer timer = new Timer();
timer.schedule(new TimerTask() {
    public void run() {
        ringtone.stop();
        timer.cancel();
    }
}, 10000);
问题是,如果我设置ALARM_流的音量,就会干扰用户的默认ALARM应用程序。换句话说,如果用户最初将警报设置为最小音量,则启动此应用程序将覆盖警报并将所有用户警报设置为最大音量。是否有一种方法可以仅为我的应用程序定义一个单独的音频流