android.media.AudioManager#setStreamVolume ( )源码实例Demo

下面列出了android.media.AudioManager#setStreamVolume ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: connectivity-samples   文件: MainActivity.java
@Override
protected void onStop() {
  mSensorManager.unregisterListener(this);

  // Restore the original volume.
  AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
  audioManager.setStreamVolume(AudioManager.STREAM_MUSIC, mOriginalVolume, 0);
  setVolumeControlStream(AudioManager.USE_DEFAULT_STREAM_TYPE);

  if (isRecording()) {
    stopRecording();
  }
  if (isPlaying()) {
    stopPlaying();
  }

  setState(State.UNKNOWN);

  mUiHandler.removeCallbacksAndMessages(null);

  if (mCurrentAnimator != null && mCurrentAnimator.isRunning()) {
    mCurrentAnimator.cancel();
  }

  super.onStop();
}
 
源代码2 项目: iGap-Android   文件: ActivityCallViewModel.java
private void muteMusic() {

        if (!isMuteAllMusic) {
            AudioManager am = (AudioManager) G.context.getSystemService(Context.AUDIO_SERVICE);
            if (am == null) {
                return;
            }
            int result = am.requestAudioFocus(new AudioManager.OnAudioFocusChangeListener() {
                @Override
                public void onAudioFocusChange(int focusChange) {

                }
            }, AudioManager.STREAM_MUSIC, AudioManager.AUDIOFOCUS_GAIN);
            if (result != AudioManager.AUDIOFOCUS_REQUEST_GRANTED) {
                musicVolum = am.getStreamVolume(AudioManager.STREAM_MUSIC);
                am.setStreamMute(AudioManager.STREAM_MUSIC, true);
                am.setStreamVolume(AudioManager.STREAM_MUSIC, 0, 0);
                isMuteAllMusic = true;
            }
        }
    }
 
源代码3 项目: BaldPhone   文件: AlarmScreenActivity.java
public static Ringtone getRingtone(Context context) {
    Uri alert =
            RingtoneManager
                    .getActualDefaultRingtoneUri(context.getApplicationContext(), RingtoneManager.TYPE_ALARM);
    if (alert == null)
        alert = RingtoneManager
                .getActualDefaultRingtoneUri(context.getApplicationContext(), RingtoneManager.TYPE_NOTIFICATION);
    if (alert == null)
        alert = RingtoneManager
                .getActualDefaultRingtoneUri(context.getApplicationContext(), RingtoneManager.TYPE_RINGTONE);
    final Ringtone ringtone = RingtoneManager.getRingtone(context, alert);
    final AudioManager audioManager = (AudioManager) context.getSystemService(AUDIO_SERVICE);
    if (audioManager != null) {//who knows lol - btw don't delete user's may lower the alarm sounds by mistake
        final int alarmVolume = audioManager.getStreamMaxVolume(AudioManager.STREAM_ALARM) * (BPrefs.get(context).getInt(BPrefs.ALARM_VOLUME_KEY, BPrefs.ALARM_VOLUME_DEFAULT_VALUE) + 6) / 10;
        audioManager.setStreamVolume(AudioManager.STREAM_ALARM, alarmVolume, 0);
    }
    ringtone.setAudioAttributes(alarmAttributes);
    return ringtone;
}
 
源代码4 项目: Noyze   文件: SystemVolume.java
/**
 * @param manager AudioManager
 * @return True if {@link android.media.AudioManager#STREAM_SYSTEM} exists.
 */
@Override
public boolean apply(AudioManager manager) {
    // Remember the volumes that we started at.
    final int systemVolume = manager.getStreamVolume(STREAM_SYSTEM);
    final int[] streams = new int[] {
            STREAM_RING, STREAM_MUSIC, STREAM_ALARM, STREAM_NOTIFICATION
    };

    for (int stream : streams) {
        // Set each stream volume differently, see if system is linked.
        final int prevVolume = manager.getStreamVolume(stream);
        manager.setStreamVolume(STREAM_SYSTEM, 4, 0);
        manager.setStreamVolume(stream, 2, 0);
        final int newSystemVolume = manager.getStreamVolume(STREAM_SYSTEM);
        final int newVolume = manager.getStreamVolume(stream);
        manager.setStreamVolume(stream, prevVolume, 0);
        if (newVolume == newSystemVolume) return false;
    }

    manager.setStreamVolume(STREAM_SYSTEM, systemVolume, 0);
    return true;
}
 
源代码5 项目: Noyze   文件: RingerModeTransition.java
/**
 * @return An ordered list of the ringer modes, from
 * highest to lowest (volumes [1], [0], [0] again).
 */
public int[] apply(AudioManager manager) {
    // The algorithm here is to go from volume 0 (again) => 0 => 1,
    // and with each change, record the ringer modes.
    final int[] MODES = new int[3];
    MODES[0] = RINGER_MODE_NORMAL;
    final int STREAM = STREAM_RING;
    final int MODE = manager.getRingerMode();
    final int startVolume = manager.getStreamVolume(STREAM);
    // API quirk: volume must be decremented from 1 to get ringer mode change
    manager.setStreamVolume(STREAM, 1, FLAG_SHOW_UI);
    manager.setRingerMode(RINGER_MODE_NORMAL);
    manager.adjustStreamVolume(STREAM, ADJUST_LOWER, FLAG_SHOW_UI & FLAG_ALLOW_RINGER_MODES);
    manager.adjustStreamVolume(STREAM, ADJUST_LOWER, FLAG_SHOW_UI & FLAG_ALLOW_RINGER_MODES);
    MODES[2] = manager.getRingerMode();
    manager.adjustStreamVolume(STREAM, ADJUST_RAISE, FLAG_SHOW_UI & FLAG_ALLOW_RINGER_MODES);
    MODES[1] = manager.getRingerMode();
    // There are two possible ways the device may work. It may have a silent/vibrate
    // mode or it may have distinct silent and vibrate modes.
    manager.setStreamVolume(STREAM, startVolume, 0);
    manager.setRingerMode(MODE);
    return MODES;
}
 
@Override
public void onChange (boolean selfChange)
{
    if (MainActivity.mainActivity == null) return;
    //
    float minVolume = OBConfigManager.sharedManager.getMinimumAudioVolumePercentage() / (float) 100;
    // if value is not present in the config, the min volume will be -.01
    AudioManager am = (AudioManager) MainActivity.mainActivity.getSystemService(Context.AUDIO_SERVICE);
    currentVolume = am.getStreamVolume(AudioManager.STREAM_MUSIC);
    int maxVolume = am.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
    int minVolumeLimit = Math.round(maxVolume * minVolume);
    if (currentVolume < minVolumeLimit)
    {
        MainActivity.log("Current Volume (" + currentVolume + ") lower than permitted minimum (" + minVolumeLimit + "). Resetting value");
        am.setStreamVolume(AudioManager.STREAM_MUSIC, minVolumeLimit, 0);
        currentVolume = minVolumeLimit;
    }
    OBAnalyticsManager.sharedManager.deviceVolumeChanged(currentVolume / (float) maxVolume);
    OBSystemsManager.sharedManager.refreshStatus();
}
 
源代码7 项目: product-emm   文件: OperationManager.java
/**
 * Mute the device.
 *
 * @param operation - Operation object.
 */
public void muteDevice(org.wso2.emm.agent.beans.Operation operation) {
    operation.setStatus(resources.getString(R.string.operation_value_completed));
    resultBuilder.build(operation);

    AudioManager audioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
    audioManager.setStreamVolume(AudioManager.STREAM_RING, DEFAULT_VOLUME, DEFAULT_FLAG);
    if (Constants.DEBUG_MODE_ENABLED) {
        Log.d(TAG, "Device muted");
    }
}
 
源代码8 项目: connectivity-samples   文件: MainActivity.java
@Override
protected void onStart() {
  super.onStart();
  mSensorManager.registerListener(this, mAccelerometer, SensorManager.SENSOR_DELAY_UI);

  // Set the media volume to max.
  setVolumeControlStream(AudioManager.STREAM_MUSIC);
  AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
  mOriginalVolume = audioManager.getStreamVolume(AudioManager.STREAM_MUSIC);
  audioManager.setStreamVolume(
      AudioManager.STREAM_MUSIC, audioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC), 0);

  setState(State.DISCOVERING);
}
 
源代码9 项目: xDrip-plus   文件: AlertPlayer.java
private void revertCurrentVolume(final Context ctx) {
    AudioManager manager = (AudioManager) ctx.getSystemService(Context.AUDIO_SERVICE);
    int currentVolume = manager.getStreamVolume(AudioManager.STREAM_MUSIC);
    Log.i(TAG, "revertCurrentVolume volumeBeforeAlert " + volumeBeforeAlert + " volumeForThisAlert " + volumeForThisAlert
            + " currentVolume " + currentVolume);
    if (volumeForThisAlert == currentVolume && (volumeBeforeAlert != -1) && (volumeForThisAlert != -1)) {
        // If the user has changed the volume, don't change it again.
        manager.setStreamVolume(AudioManager.STREAM_MUSIC, volumeBeforeAlert, 0);
    }
    volumeBeforeAlert = -1;
    volumeForThisAlert = - 1;
    
}
 
源代码10 项目: IdealMedia   文件: PlayerService.java
public void volumeDown() {
    AudioManager am = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
    if (am == null)
        return;

    int currVolume = am.getStreamVolume(AudioManager.STREAM_MUSIC);
    int maxVolume = am.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
    currVolume = currVolume - (maxVolume/10);
    if (currVolume < 0)
        currVolume = 0;

    am.setStreamVolume(AudioManager.STREAM_MUSIC, currVolume, AudioManager.FLAG_SHOW_UI);
}
 
源代码11 项目: BotLibre   文件: ChatActivity.java
private void muteMicBeep(boolean mute) {
	debug("muteMicBeep:" + mute + ":" + MainActivity.volume);
	AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);	
	if (mute) {
		Log.d("ChatActivity","muteMicBeep : " + 0);
		//if its true then the Volume will be zero.
		audioManager.setStreamVolume(AudioManager.STREAM_MUSIC, 0, 0);
	} else {
		Log.d("ChatActivity","muteMicBeep : " + MainActivity.volume);
		//if its false, the Volume will put back on
		audioManager.setStreamVolume(AudioManager.STREAM_MUSIC, MainActivity.volume, 0);
	}
}
 
源代码12 项目: BotLibre   文件: ChatActivity.java
private void muteMicBeep(boolean mute) {
	debug("muteMicBeep:" + mute + ":" + MainActivity.volume);
	AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);	
	if (mute) {
		Log.d("ChatActivity","muteMicBeep : " + 0);
		//if its true then the Volume will be zero.
		audioManager.setStreamVolume(AudioManager.STREAM_MUSIC, 0, 0);
	} else {
		Log.d("ChatActivity","muteMicBeep : " + MainActivity.volume);
		//if its false, the Volume will put back on
		audioManager.setStreamVolume(AudioManager.STREAM_MUSIC, MainActivity.volume, 0);
	}
}
 
源代码13 项目: aurora-imui   文件: ChatInputView.java
public void setAudioPlayByEarPhone(int state) {
    AudioManager audioManager = (AudioManager) getContext().getSystemService(Context.AUDIO_SERVICE);
    int currVolume = audioManager.getStreamVolume(AudioManager.STREAM_VOICE_CALL);
    audioManager.setMode(AudioManager.MODE_IN_CALL);
    if (state == 0) {
        mIsEarPhoneOn = false;
        audioManager.setSpeakerphoneOn(true);
        audioManager.setStreamVolume(AudioManager.STREAM_VOICE_CALL,
                audioManager.getStreamMaxVolume(AudioManager.STREAM_VOICE_CALL), AudioManager.STREAM_VOICE_CALL);
    } else {
        mIsEarPhoneOn = true;
        audioManager.setSpeakerphoneOn(false);
        audioManager.setStreamVolume(AudioManager.STREAM_VOICE_CALL, currVolume, AudioManager.STREAM_VOICE_CALL);
    }
}
 
源代码14 项目: BotLibre   文件: ChatActivity.java
private void muteMicBeep(boolean mute) {
	debug("muteMicBeep:" + mute + ":" + MainActivity.volume);
	AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);	
	if (mute) {
		//if its true then the Volume will be zero.
		audioManager.setStreamVolume(AudioManager.STREAM_MUSIC, 0, 0);
	} else {
		//if its false, the Volume will put back on
		audioManager.setStreamVolume(AudioManager.STREAM_MUSIC, MainActivity.volume, 0);
	}
}
 
public static void setDefaultAudioVolume ()
{
    if (MainActivity.mainActivity == null) return;
    //
    float volumePercentage = OBConfigManager.sharedManager.getDefaultAudioVolumePercentage() / (float) 100;
    if (volumePercentage < 0) return;
    //
    AudioManager am = (AudioManager) MainActivity.mainActivity.getSystemService(Context.AUDIO_SERVICE);
    am.setStreamVolume(AudioManager.STREAM_MUSIC, Math.round(am.getStreamMaxVolume(AudioManager.STREAM_MUSIC) * volumePercentage), 0);
}
 
源代码16 项目: CameraView   文件: AudioUtil.java
public static void setAudioManage(Context context){
    AudioManager audioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
    audioManager.setStreamMute(AudioManager.STREAM_SYSTEM, true);
    audioManager.setStreamMute(AudioManager.STREAM_MUSIC, true);
    audioManager.setStreamVolume(AudioManager.STREAM_ALARM, 0, 0);
    audioManager.setStreamVolume(AudioManager.STREAM_DTMF, 0, 0);
    audioManager.setStreamVolume(AudioManager.STREAM_NOTIFICATION, 0, 0);
    audioManager.setStreamVolume(AudioManager.STREAM_RING, 0, 0);
}
 
源代码17 项目: AssistantBySDK   文件: VoiceMediator.java
@Override
public void changeMediaVolume(int percent) {
    AudioManager audioManager = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE);
    mCurrentVolume = audioManager.getStreamVolume(AudioManager.STREAM_MUSIC);
    int maxVolume = audioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
    int volume = (int) ((percent / 100.0) * maxVolume + 0.5);
    audioManager.setStreamVolume(AudioManager.STREAM_MUSIC, volume, 0);
    audioManager.adjustStreamVolume(AudioManager.STREAM_MUSIC,
            AudioManager.ADJUST_SAME, AudioManager.FLAG_PLAY_SOUND
                    | AudioManager.FLAG_SHOW_UI);
}
 
源代码18 项目: DeviceConnect-Android   文件: HostSettingProfile.java
@Override
public boolean onRequest(final Intent request, final Intent response) {
    VolumeKind kind = getVolumeKind(request);
    Double level = getVolumeLevel(request);

    AudioManager manager = (AudioManager) getContext().getSystemService(Context.AUDIO_SERVICE);
    double maxVolume = 1;
    if (kind == VolumeKind.ALARM) {
        maxVolume = manager.getStreamMaxVolume(AudioManager.STREAM_ALARM);
        manager.setStreamVolume(AudioManager.STREAM_ALARM, (int) (maxVolume * level), 1);
        setResult(response, DConnectMessage.RESULT_OK);
    } else if (kind == VolumeKind.CALL) {
        maxVolume = manager.getStreamMaxVolume(AudioManager.STREAM_VOICE_CALL);
        manager.setStreamVolume(AudioManager.STREAM_VOICE_CALL, (int) (maxVolume * level), 1);
        setResult(response, DConnectMessage.RESULT_OK);
    } else if (kind == VolumeKind.RINGTONE) {
        maxVolume = manager.getStreamMaxVolume(AudioManager.STREAM_RING);
        manager.setStreamVolume(AudioManager.STREAM_RING, (int) (maxVolume * level), 1);
        setResult(response, DConnectMessage.RESULT_OK);
    } else if (kind == VolumeKind.MAIL) {
        maxVolume = manager.getStreamMaxVolume(AudioManager.STREAM_RING);
        manager.setStreamVolume(AudioManager.STREAM_RING, (int) (maxVolume * level), 1);
        setResult(response, DConnectMessage.RESULT_OK);
    } else if (kind == VolumeKind.MEDIA_PLAYER) {
        maxVolume = manager.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
        manager.setStreamVolume(AudioManager.STREAM_MUSIC, (int) (maxVolume * level), 1);
        setResult(response, DConnectMessage.RESULT_OK);
    } else if (kind == VolumeKind.OTHER) {
        MessageUtils.setNotSupportAttributeError(response, "volume type is not support.");
    } else {
        MessageUtils.setInvalidRequestParameterError(response, "type is invalid.");
    }
    return true;
}
 
源代码19 项目: IdealMedia   文件: PlayerService.java
public void volumeUp() {
    AudioManager am = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
    if (am == null)
        return;

    int currVolume = am.getStreamVolume(AudioManager.STREAM_MUSIC);
    int maxVolume = am.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
    currVolume = currVolume +(maxVolume/10);
    if (currVolume > maxVolume)
        currVolume = maxVolume;

    am.setStreamVolume(AudioManager.STREAM_MUSIC, currVolume, AudioManager.FLAG_SHOW_UI);
}
 
源代码20 项目: XposedNavigationBar   文件: BtnVolume.java
@Override
protected void control(Context context, int value) {
    AudioManager am = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
    //调整媒体声言,不播放声言也不振动
    am.setStreamVolume(AudioManager.STREAM_MUSIC, value, AudioManager.FLAG_REMOVE_SOUND_AND_VIBRATE);
}