J'utilise une instance de MediaPlayer pour diffuser des fichiers audio à partir d'un emplacement Internet. Le lecteur audio est dans une activité distincte. L'utilisateur peut choisir parmi une liste de fichiers audio et venir à cette activité pour lire l'audio.Android - recherche si l'audio est en cours de lecture et l'arrêter
Maintenant, l'utilisateur peut revenir à l'activité précédente (avec la liste) et sélectionner un autre fichier audio. Dans ce cas, je veux arrêter tout autre audio en cours de lecture et commencer à jouer le nouvel audio qui a été sélectionné.
Est-il possible de savoir si un fichier audio est en cours de lecture sans avoir à conserver l'objet MediaPlayer?
Merci.
Modifier
Je ne trouve comment savoir si un audio joue. Nous pouvons le faire en utilisant un objet de AudioManager et en appelant isAudioPlaying(). Cela retournera un vrai si n'importe quel audio joue.
Maintenant, l'autre question, comment arrêter un audio en cours de lecture? Je n'ai pas d'instance de l'objet MediaPlayer qui a été créé pour démarrer l'audio (car l'utilisateur a déjà quitté l'activité une fois et revient avec un nouvel objet de l'activité et donc une nouvelle instance de MediaPlayer)
Merci. Serait-il préférable d'utiliser un service, une variable statique ou une classe singleton? Quelle serait la meilleure option de conception? – lostInTransit