Question

J'ai donc une application qui lit de nombreux clips sonores. J'ai besoin de savoir quand la lecture des sons est terminée et d'utiliser des mp3. J'utilise donc AVFoundation pour la lecture des sons.

Lorsqu'un son est en cours de lecture et que l'utilisateur utilise les boutons de volume matériels, le volume de lecture change. Le problème, c’est que l’application n’émet PAS de sons en permanence, et si ce n’est pas le cas et que les boutons matériels sont utilisés, le volume de la sonnerie sonne à la place.

Comment puis-je le configurer pour que, tant que l'application est en cours d'exécution, l'utilisateur puisse régler le volume de lecture?

Merci!

Était-ce utile?

La solution

Il s'avère que cela peut être accompli en allouant un AVAudioPlayer avec un fichier son valide et en appelant la méthode prepareToPlay , sans jamais appeler le play méthode.

Fonctionne parfaitement.

Autres conseils

Commencez une AudioSession et ne l'arrêtez pas lorsque vous ne jouez pas de sons.

vous voulez donc désactiver le volume de lecture de la sonnerie tant que l'application est en cours d'exécution? par conséquent, les commandes matérielles ne règlent que les sons de lecture de l'application?

Je ne pense pas que cela soit possible sauf si vous "jouez toujours du son". Par exemple, de nombreux jeux jouent toujours de la musique de fond ou autre.

Vous pourrez peut-être y parvenir en jouant constamment un son à 0 volume tant que votre application est en cours d'exécution. Vous pouvez ensuite jouer vos clips audio dessus.

scroll top