Android Medya Oynatma, Android’de herhangi bir butonun click event(olay)’ını kullanarak ve Media Player Library(Kütüphane)’sini kullanarak ses dosyasını oynatmayı göreceğiz.
Android Medya Oynatma – Ses Doyası Çalma
Öncelikle Android projemizde bulunan res klasörü altında raw adında bir klasör oluşturun ve örnek olarak soundjay.com’dan bulabileceğiniz onlarca button sesi veya diğer effectlerden birini indirip adını kucuk harflerle kendiniz isimlendirin ben bu projede test.mp3 adındaki dosyası res/raw klasörü altında attım ve örneğimizde test.mp3 dosyasını kullanıcam.
Mediaplay kütüphanesi tanımlı değilse import android.media.MediaPlayer; kütüphanesini ekleyip daha sonra Activity’nin oncreate’inde aşağıdaki kodu yazıyoruz.
1 | final MediaPlayer ses = MediaPlayer.create(this, R.raw.test); |
Daha sonra media player class’indan türetilmiş olan ses adlı nesnemizi oynatmak istediğimiz yerde ses.Start() diyerek işlemi gerçekleştirebilirsiniz ben alttaki örnekte olduğu gibi buttonun click olayında yapmaktayım bu olayı.
1 2 3 4 5 6 | btnTest.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { btnSes.start(); } }); |
Örnek projenin tam kodları
java dosyası
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | package com.example.muratoner; import android.app.Activity; import android.media.MediaPlayer; import android.os.Bundle; import android.view.View; import android.widget.Button; public class MainActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); final MediaPlayer btnSes = MediaPlayer.create(this, R.raw.test); Button btnTest = (Button)findViewById(R.id.btnTest); btnTest.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { btnSes.start(); } }); } } |
layout XML Dosyası
1 2 3 4 5 6 | <?xml version="1.0" encoding="utf-8"?> <RelativeLayout android:background="@drawable/bg" android:layout_height="match_parent" android:layout_width="match_parent" tools:context=".MainActivity" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools"> <Button android:id="@+id/btnTest" android:layout_height="wrap_content" android:layout_width="match_parent" android:text="@string/btnTest"></Button> </RelativeLayout> |
Özet
Android tarafında medya oynatma ile ilgili çok çeşitli kütüphaneler ve official android sdk çözümleri mevcut ama biz de bu makalede official olan yöntemi sizlere örnek kodlarla sunmaya çalıştık umarım faydalı olmuştur ve umarım ihtiyaç karşılayan bir makale olur. Ben ihtiyacımı karşılayan bir örneği sizlere sunarak aynı ihtiyaca sahip kişilerin de faydalanması için bu tür bir içerik paylaşma gereksinimi duydum.
📚 Android Medya Oynatma Benzer Makaleler
- Android Debug Bridge(ADB) İle Android Cihazınıza Hükmedin
- Android SDK Nedir ve Kurulumu Nasıl Yapılır?
- Android Geliştirici Seçenekleri Nedir ve Nasıl Açılır?
✍ Lütfen olumlu-olumsuz tüm görüşlerinizi bana yorum yada mail yolu ile iletmeyi ihmal etmeyin.
🔗 Sosyal medya kanallarından makaleyi paylaşarak destek olursanız çok sevinirim.
👋 Bir sonraki makalede görüşmek dileğiyle.
Hocam merhaba raw dosyasını resin altında açmama rağmen kodu yazarken kırmızı çıkıyor. Neden olabilir acaba ?
element relativelayout must be declared hatası veriyor
blog veritabanını taşıma sonrası bazı makale içeriklerindeki kod’lar tamamen lowercase olduğundan bu sorun oluştu. Bu soruna denk geldikçe ve sizlerin geri dönüşü ile düzeltmeye çalışıyorum.
hocam iki buton var ve birine basınca ses geldiği sırada ikincisine de bastığımda ilk bastığım susmuyor. İkisi aynı anda ses vermeye devam ediyor. İlk buton ses verirken başka butona bastığımda ilkinin susmasını nasıl saglarım?
birden fazla buton kullanmak icin ne yapilamli?
Cevabınız için teşekkürler
Paylaşım için teşekkürler.2 gündür arayıp bulamadığım bir şeyi size sormak istiyorum,belki boş vaktiniz olursa cevaplarsınız;
Benim bir listview’im var ve bir tane de activity sayfam var.Listview’İmdeki herhangi bir öğeye tıklandığında sırasıyla farklı bir yazı ve resim alabiliyorum.(İntent,putExtra,position vs kullanarak) Ama ses dosyalarımı nasıl değiştireceğimi bulamadım.
Bir media player var,fakat yazılarımı ve resimleri değiştirebilirken şarkıyı nasıl değiştireceğimi bilmiyorum.Belki bir kaynak bulabilirsiniz.
:'(
Ben bu gibi ihtiyaçlar için https://developer.android.com/guide/topics/media/mediaplayer adresinden faydalanıyorum android’in kendi kaynağı baya başarılı bu konuda oradan destek alabilirsiniz ingilizce sorunu var ise bu durumda page translate extension’larından birini kullanabilirsiniz.
Yazı için teşekkürler fakat android studio’da denedim raw kısmı kırmızı oluyor?
res klasörü altında raw diye bir klasörünüz varmı peki? eğer dosyanız farklı konumda ise o zaman ilgili konuma göre değiştirmeniz gerekiyor R.raw kısmını.
haklısınız üstat, yeni başladım ne var ne yok direk drawable’ın içine attığım için problem oluyormuş 🙂
O zaman Allah yolunu açık etsin 🙂