Not: Bu sayfa, kullanımdan kaldırılan Kamera sınıfıyla ilgilidir. KameraX veya belirli kullanım alanlarında Kamera2 kullanmanızı öneririz. Hem CameraX hem de Camera2, Android 5.0 (API düzeyi 21) ve sonraki sürümleri destekler.
Bu derste, mevcut kamera uygulamalarını kullanarak nasıl video çekileceği açıklanmaktadır.
Uygulamanızın yapılması gereken işler var ve videoları entegre etmek işin yalnızca küçük bir kısmını oluşturuyor. Videoları minimum düzeyde karmaşaya dönüştürmek ve video kamerayı yeniden tasarlamak istememeniz gerekir. Neyse ki Android destekli çoğu cihazda video kaydeden bir kamera uygulaması zaten var. Bu derste, bunu sizin için yapmayı öğreneceksiniz.
Aşağıdaki ilgili kaynaklara bakın:
Kamera özelliğini isteyin
Uygulamanızın bir kameraya bağlı olduğunu bildirmek için manifest dosyasına bir <uses-feature>
etiketi yerleştirin:
<manifest ... > <uses-feature android:name="android.hardware.camera" android:required="true" /> ... </manifest>
Uygulamanızın çalışması için kamera kullanıyor ancak gerekmiyorsa android:required
değerini false
olarak ayarlayın. Böylece Google Play, kamerası olmayan cihazların uygulamanızı indirmesine izin verir. Bu durumda, hasSystemFeature(PackageManager.FEATURE_CAMERA)
yöntemini çağırarak çalışma zamanında kameranın kullanılabilirliğini kontrol etmek sizin sorumluluğunuzdadır.
Kamera kullanılamıyorsa kamera özelliklerinizi devre dışı bırakmanız gerekir.
Videoyu görüntüleyin
Android Kamera uygulaması, Intent
içinde onActivityResult()
adresine gönderilen videoyu, depolama alanındaki video konumunu işaret eden bir Uri
olarak döndürür. Aşağıdaki kod bu videoyu alır ve bir VideoView
içinde gösterir.
Kotlin
override fun onActivityResult(requestCode: Int, resultCode: Int, intent: Intent) { if (requestCode == REQUEST_VIDEO_CAPTURE && resultCode == RESULT_OK) { val videoUri: Uri = intent.data videoView.setVideoURI(videoUri) } }
Java
@Override protected void onActivityResult(int requestCode, int resultCode, Intent intent) { if (requestCode == REQUEST_VIDEO_CAPTURE && resultCode == RESULT_OK) { Uri videoUri = intent.getData(); videoView.setVideoURI(videoUri); } }