2011-10-06 4 views
0

J'ai une activité qui a 12 boutons, et chacun joue un fichier séparé. J'ai créé 12 différents MediaPlayers et mettez-les avec le fichier correct comme ceci:Android - Trop d'instances de MediaPlayer

music = MediaPlayer.create(this, R.raw.music); 

Cela a bien fonctionné pour quelques cas, mais maintenant il dit que j'ai trop de cas et le programme ne fera tomber en panne avant tout arrive . J'ai essayé juste de créer une instance de MediaPlayer et essaye juste de changer le fichier qu'il joue quand le bouton est pressé en employant la méthode de création comme d'habitude, mais ceci ne fonctionne pas.

Existe-t-il un moyen de le faire ou d'avoir des idées?

Répondre

2

Faire de la musique comme Singleton .. Réutiliser le même objet créé. Cela peut régler votre problème.

+0

Avez-vous plus d'info à ce sujet? J'ai essayé de créer un suivant un modèle comme ceci: private static MyObject myObject = null; MyObject public static getMyObject() { if (myObject == null { myObject = new MyObject();} myObject retour; } Cela provoque rien à jouer. – Mark

1

Avez-vous utilisé mediaPlayer.release() lorsque vous avez modifié des fichiers?