
Dopo la pausa estiva,riprendiamo la nostra guida parlando di come riprodurre i suoni su Android.
Creiamo come sempre un nuovo progetto (chiamiamolo ad esempio “suoni”) e inseriamo grazie all’editor grafico l’immagine di una tromba come già visto nella lezione 4.
Creiamo poi una nuova cartella dentro res chiamandola raw(è molto importante chiamarla così e non in altro modo). Mettiamo poi dentro quest’ ultima il nostro file audio da riprodurre, nel nostro esempio il suono di una tromba(suono tromba).
A questo punto creiamo un nuovo file .java cliccando sul Package Explorer col tasto dx del mouse, New->Class e compilando la schermata che appare in questo modo:
Nel file SoundManager.java scriviamo questo codice:
public class SoundManager { private static SoundPool soundPool; private static int suono_tromba; public static void init(Context context){ soundPool=new SoundPool(1, AudioManager.STREAM_MUSIC, 100); suono_tromba=soundPool.load(context,R.raw.tromba, 0); } public static void play(){ soundPool.play(suono_tromba, 1f, 1f, 1, 0, 1f); } }
Per chi ha conoscenze Java esaminando il codice può riconoscere 2 metodi, con init() carichiamo il file audio,con play() lo eseguiamo.
Andiamo ora nel file MainActivity.java e scriviamo il codice seguente:
public class MainActivity extends Activity { SoundManager sm; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); sm.init(MainActivity.this); ImageView tromba=(ImageView)findViewById(R.id.imageView1); tromba.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { sm.play(); } }); }
Con questo codice ogni volta che clicchiamo sull’immagine della tromba riprodurremo il suono.
Non vi resta che provare l’applicazione sul vostro terminale!
Puoi guardare tutte le lezioni passate consultando l’indice del corso di programmazione android