web-dev-qa-db-fra.com

Comment modifier un volume d'appareil iOS par programme?

Est-il possible de modifier le volume de l'appareil par programmation? peut-être en utilisant une session audio?

11
DrCachetes

Je suis à peu près sûr qu'il n'est pas possible de contrôler le volume réel de l'appareil (car cela serait également un peu importune). Contrôler certains médias que vous lisez est une autre chose. Vous pouvez toutefois consulter MPVolumeView: https://developer.Apple.com/library/ios/documentation/MediaPlayer/Reference/MPVolumeView_Class/index.html pour afficher une vue permettant de définir le volume.

La question a également été abordée ici: Comment changer le volume de l'appareil sur iOS - pas le volume de la musique

5
Steffen D. Sommer

Regarde ça:

import MediaPlayer

let volumeView = MPVolumeView()
if let view = volumeView.subviews.first as? UISlider{
    view.value = 0.1 //---0 t0 1.0---

}

Ça marche pour moi

2
Abdul Yasin

Voilà, cela a fonctionné pour moi.

#import <MediaPlayer/MediaPlayer.h>
musicPlayer = [MPMusicPlayerController applicationMusicPlayer];
musicPlayer.volume = 1; // max volume
musicPlayer.volume = 0; // min volume (mute)
musicPlayer.volume = 0.0625; // 1 bar on the overlay volume display
1
Liam Hardy

Hacky mais fonctionne ( Swift 3 ):

func setVolumeTo(volume: Float) {
  (MPVolumeView().subviews.filter{NSStringFromClass($0.classForCoder) == "MPVolumeSlider"}.first as? UISlider)?.setValue(volume, animated: false)
}

N'oubliez pas de import MediaPlayer

0
budidino