ملاحظة: تشير هذه الصفحة إلى فئة الكاميرا التي تم إيقافها نهائيًا. ننصحك باستخدام الكاميراX أو الكاميرا2 في حالات استخدام معيَّنة. يتوافق كل من CameraX و Camera2 مع نظام التشغيل Android 5.0 (المستوى 21 لواجهة برمجة التطبيقات) والإصدارات الأحدث.
يشرح هذا الدرس كيفية التقاط فيديو باستخدام كاميرا حالية. التطبيقات.
مهمة طلبك مهمة، ودمج مقاطع الفيديو ليست سوى جزء صغير جزءًا منها. يجب تصوير الفيديوهات بأقل صعوبات وعدم إعادة ابتكار كاميرا فيديو. لحسن الحظ، تحتوي معظم الأجهزة التي تعمل بنظام التشغيل Android على تطبيق كاميرا يسجّل الفيديو. في هذا الدرس، ستفعل ذلك نيابة عنك.
يمكنك الاطّلاع على المراجع التالية ذات الصلة:
طلب تفعيل ميزة الكاميرا
للإعلان عن أن تطبيقك يعتمد على وجود كاميرا، ضع
علامة <uses-feature>
في ملف البيان:
<manifest ... > <uses-feature android:name="android.hardware.camera" android:required="true" /> ... </manifest>
إذا كان تطبيقك يستخدم كاميرا ولا يتطلّب تشغيله، اضبط السمة android:required
على false
. وبذلك، سيسمح Google Play للأجهزة التي لا تتضمن
الكاميرا لتنزيل تطبيقك. تقع على عاتقك مسؤولية التحقق من توفر
الكاميرا في وقت التشغيل من خلال الاتصال بـ hasSystemFeature(PackageManager.FEATURE_CAMERA)
.
في حال عدم توفُّر كاميرا، عليك إيقاف ميزات الكاميرا.
مشاهدة الفيديو
يعرض تطبيق "كاميرا Android" الفيديو في Intent
الذي تم إرساله.
إلى onActivityResult()
على شكل Uri
، للإشارة إلى موقع الفيديو في مساحة التخزين. يُنشئ الكود التالي
يسترد هذا الفيديو ويعرضه في VideoView
.
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); } }