ध्यान दें: यह पेज, कैमरा क्लास के बारे में है. यह अब काम नहीं करता. हमारा सुझाव है कि आप CameraX या इस्तेमाल के कुछ खास उदाहरणों के लिए, Camera2 इस्तेमाल करें. 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); } }