Merhabalar,

Bu yazımda Android te bir ses dosyası nasıl oynatılır, durdurulur ve kullanıcıya bu konuda nasıl mesaj verebiliriz ondan bahsedeceğim. Aslında bu bir nevi çok ilkel bir player olarak söylenebilir :) Burada yapmamız gereken projemizde main.xml dosyamızda resimdeki gibi iki tane buton eklemek olacaktır. Butonlardan birine Başlat, diğerine Durdur diye başlık veriyoruz.

Daha sonra resimdeki gibi projemizde res klasörümüz altına raw klasörü oluşturup eklemek istediğimiz ses dosyamızı bu klasörün içine atıyoruz. Karşımıza gelen uyarı penceresine Copy Files diyebilirsiniz.

Bu işlemden sonra yapmamız gerekenler main.java dosyasında olacak. Dosyamızdaki kod aşağıdaki gibi olacaktır;

public class Main extends Activity {
	private MediaPlayer mp;
	private Toast mesaj;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);

		Button baslat=(Button) findViewById(R.id.button1);
		Button durdur=(Button) findViewById(R.id.button2);
		baslat.setOnClickListener(new OnClickListener() {
			@Override
			public void onClick(View arg0) {
				// TODO Auto-generated method stub
				mp=MediaPlayer.create(Main.this, R.raw.ses);
				mp.start();
				mesaj=Toast.makeText(Main.this, "Ses dosyası başlatıldı", 5000);
				mesaj.setGravity(Gravity.CENTER, 0, 0);
				mesaj.show();
			}
		});

		durdur.setOnClickListener(new OnClickListener() {
			@Override
			public void onClick(View arg0) {
				// TODO Auto-generated method stub
				mp.stop();
				mesaj=Toast.makeText(Main.this, "Ses dosyası durduruldu", 5000);
				mesaj.setGravity(Gravity.CENTER, 0, 0);
				mesaj.show();
			}
		});
	}
}

Burada kodu incelediğimizde göreceğiniz ilk şey MediaPlayer ve Toast elementlerimizi tanımlamak. Daha sonra baslat ve durdur butonlarının eventlerini tetikliyoruz. Başlat butonuna bastığımızda eklediğimiz medyanın yolunu gösteriyoruz ve mp.start(); ile başlatıyoruz.

Bu noktada kullanıcıya Ses dosyasının başlatıldığına dair mesaj vermek için Toast tanımlıyoruz. Toast mesajı kullanıcıya istenilen sürede bilgi vermek için gösterebileceğimiz bir mesajdır. Kullanıcıya uyarı, bilgi 5 sn gösterilsin ve gitsin derseniz bunu kullanabilirsiniz. Burada 5000 olarak belirtilen rakam toast mesajımızın ne kadar milisaniye görüneceğidir. Daha sonra mesajımızın setGravity ile nerede görüneceğini belirtiyoruz. Biz uygulama ekranımızın merkezinde görünsün diye belirttik ve show() metodu ile mesajımızı gösterdik. Projemizi çalıştırdığınızda Başlat butonuna bastığınızda görüntü resimdeki gibi olacaktır.

Durdur butonumuzda da stop metoduyla medyamızı durdurduk ve yine toast mesajımızda kullanıcıya bu konuda bilgi verdik. Durdur Butonuna bastığımızda da görüntü aşağıdaki gibi olacaktır :)