Le volume de notre téléphone mobile est généralement ajusté par l'utilisateur via le bouton de volume sur le côté du téléphone, mais parfois nous devons également régler le volume nous-mêmes, alors nous devons avoir une compréhension complète du réglage du volume Android. Aujourd'hui, je vais vous présenter quelques ajustements de volume dans Android.
1. Introduction aux types de sonneries
Pour régler le volume, nous devons avoir une compréhension des types de sonneries dans le système Android. Système Android La Chine dispose de 6 types de sonneries, qui sont les tonalités d'appel, les tonalités système, les sonneries, les tonalités multimédias, les tonalités d'alarme et les tonalités de notification. Je liste un tableau, qui contient diverses sonneries et les marques correspondantes.
Type de sonnerie de la classe AudioManager |
Nom de la sonnerie | La description |
STREAM_VOICE_CALL | Tonalité d'appel | |
STREAM_SYSTEM | Tonalité système | |
STREAM_RING | Tonalité de sonnerie | Sonneries pour les appels entrants et les messages texte |
STREAM_MUSIC | Son multimédia | Son, vidéo, jeu, etc. |
STREAM_ALARM | Sonnerie d'alarme | |
STREAM_NOTIFICATION | Tonalité de notification |
2. Introduction et acquisition d'AudioManager
L'outil de gestion du volume de ces sonneries est AudioManager, et l'objet est obtenu à partir du service système AUDIO_SERVICE. La méthode d'obtention est la suivante:
AudioManager am = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
3. Méthodes courantes d'AudioManager
- getStreamMaxVolume: obtenez le volume maximum du type de sonnerie spécifié.
- getStreamVolume: obtenez le volume actuel du type de sonnerie spécifié.
- getRingerMode: Obtenez le mode de sonnerie du type de sonnerie spécifié. La description de la valeur du mode sonnerie est indiquée dans le tableau suivant:
Tableau 1 | |
Mode sonnerie de la classe AudioManager | La description |
RINGER_MODE_NORMAL | Ordinaire |
RINGER_MODE_SILENT | Muet |
RINGER_MODE_VIBRATE | choc |
- setStreamVolume: règle le volume actuel du type de sonnerie spécifié.
- setRingerMode: définissez le mode de sonnerie du type de sonnerie spécifié. Reportez-vous au tableau 1 pour la description de la valeur du mode de sonnerie.
- AdjustStreamVolume: Ajustez le volume actuel du type de sonnerie spécifié. Le premier paramètre est le type de sonnerie; le deuxième paramètre est la direction de réglage et la valeur de la direction de réglage du volume est décrite dans le tableau 2. Le troisième paramètre indique l'action supplémentaire pendant le réglage. Généralement, FLAG_PLAY_SOUND est utilisé pour indiquer une sonnerie pendant ajustement.
Tableau 2 | |
Direction du réglage du volume de la classe AudioManager | La description |
ADJUST_RAISE | Augmenter d'un niveau |
ADJUST_LOWER | Descendre d'un niveau |
ADJUST_SAME | Attendez |
ADJUST_MUTE | Muet |
ADJUST_UNMUTE | Activer le son |
ADJUST_TOGGLE_MUTE | La sourdine est inversée, c'est-à-dire, réglez la sourdine si elle n'est pas coupée et annulez la sourdine si elle est coupée. |
4. La différence entre setStreamVolume et AdjustStreamVolume
Les méthodes setStreamVolume et AdjustStreamVolume peuvent être utilisées pour régler le volume. La différence est que setStreamVolume ajuste directement le volume à la valeur cible, généralement utilisée en conjonction avec la barre de déplacement; tandis que AdjustStreamVolume est basé sur le volume actuel, puis augmente, diminue ou ajuste.
5. Exemple d'utilisation
Nous donnons un exemple de réglage du volume du média. La valeur du deuxième paramètre de setStreamVolume doit être utilisée avec getStreamMaxVolume pour obtenir la valeur de volume maximale du périphérique actuel.
AudioManager am = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
am.setStreamVolume(AudioManager.STREAM_MUSIC,10,AudioManager.FLAG_PLAY_SOUND);
J'ai beaucoup écrit sur le réglage du volume dans Android. Si vous avez de nouvelles découvertes, laissez un message et faites-le moi savoir.