Mobil Programlama

Android

DERS PROGRAMI
Android 301 Ders Programı

Android'de Video Oynatmak

Lisans: Creative Commons 26.11.2020 tarihinde güncellendi
Bakabileceğiniz Etiketler: Eğitmen: Geleceği Yazanlar Ekibi

​Bir Android uygulamasında video dosyası oynatmak için VideoView adlı View sınıfından yararlanabilirsiniz. Bu amaçla öncelikle video oynatmaya yarayan bir Activity oluşturalım ve bununla ilgili activity_video.xml layout dosyasını aşağıdaki gibi oluşturalım:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".VideoActivity" >
    
    <VideoView android:id="@+id/video_view"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"/>
</RelativeLayout>

Bir sonraki adımda VideoView öğesini Activity içerisinde bir değişkene eşleştiriyoruz. Bu sayede video dosyasının kaynağını ve videoyu oynatırken kullanılacak oynatıcıyı seçme şansına sahip oluyoruz. Burada yapmamız gereken ilk iş videonun kaynağını (uzak bir sunucu ya da yerel bir kaynak) setVideoURI(Uri uri) metoduyla tanımlamak olacaktır. Bu sayede VideoView'a oynatacağı videonun nerede olduğunu göstermiş olacağız.

Daha sonra setMediaController(MediaController controller) metoduyla videoyu oynatması için gerekli bir oynatıcıyı tanımlarız. Biz burada Android SDK içerisinde gelen MediaController sınıfını tercih ettik. Bu tanımları yaptıktan sonra VideoView içerisinde yer alan start metodu ile videomuzu oynatmaya başlayabiliriz. Video dosyamız (turkcell_kisa.mp4) res/ klasörü altında yeni oluşturacağımız raw/ klasöründe saklanacaktır.

public class VideoActivity extends Activity {

	private VideoView videoView;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_video);

		videoView = (VideoView) findViewById(R.id.video_view);
		Uri adres = Uri.parse("android.resource://" + getPackageName()
 + "/"
				+ R.raw.turkcell_kisa_xvid);

		videoView.setVideoURI(adres);
		videoView.start();
	}
}

Videomuz uygulama açıldığında onCreate metodu çalıştığı anda başlayacaktır.

 

VideoView sınıfı içerisinde sıkça kullanabileceğinizi düşündüğümüz bazı metotlar mevcut:

  • setVideoUri(Uri uri): Oynatılacak videonun adresini Uri (Uniform resource identifier) tipinde belirleyebildiğiniz metot.
  • setVideoPath(String path): Oynatılacak videonun String tipinde yolunu verdiğiniz metot.
  • start(): Video oynatımını başlatır.
  • pause(): Video oynatımını duraklatır.
  • stopPlayback(): Video oynatımını durdurur.
  • isPlaying(): Boolean döndüren bu metot ile videonun oynayıp oynamadığını öğrenebilirsiniz.