2017-07-07 4 views
0

J'ai un lecteur multimédia qui lit des fichiers de morceaux. Cependant, peu importe comment j'essaie d'initialiser son volume, la seule façon de le changer est manuellement avec les boutons de volume. J'ai essayéComment modifier le son par programme sur Android

mAudioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE); 
    int maxVolume = mAudioManager.getStreamMaxVolume(AudioManager.STREAM_ALARM); 
    mAudioManager.setStreamVolume(AudioManager.STREAM_ALARM, maxVolume, 0); // Sets volume to max 

et même

mMediaPlayer.setVolume(1, 1); 

mais aucun travail. J'ai utilisé ce code dans le passé sans problème. J'ai essayé mon application à la fois 5.1.1 et 7.1.1 et pas de chance. Peu importe que le volume du téléphone démarre ou non. J'ai vérifié et maxVolume est non-nul (j'ai essayé juste des nombres de hardcoding aussi). Comment puis-je définir le volume initial par programme? Le lecteur multimédia commence à jouer automatiquement. (J'ai aussi essayé de l'appeler dans l'écouteur onPrepared du lecteur multimédia, au cas où cela ferait une différence, mais ce n'est pas le cas.) J'ai également vérifié si le volume du téléphone était "fixe". Ce n'est pas.

Comment puis-je faire en sorte que mon lecteur commence à jouer au volume maximum (quel que soit le réglage du téléphone)?

+0

android.permission.MODIFY_AUDIO_SETTINGS Avez-vous déclaré cette autorisation? –

+0

Merci, je ne l'avais pas fait mais l'ajout de ça ne réglait pas le problème. Cependant, c'est toujours une bonne chose d'avoir ainsi merci pour le rappel! – Elliptica

Répondre