फ़ोटो लें

ध्यान दें: यह पेज, कैमरा क्लास के बारे में है. यह अब काम नहीं करता. हमारा सुझाव है कि आप CameraX या इस्तेमाल के कुछ खास उदाहरणों के लिए, Camera2 इस्तेमाल करें. CameraX और Camera2, दोनों ही Android 5.0 (एपीआई लेवल 21) और इसके बाद वाले वर्शन पर काम करते हैं.

इस लेसन में बताया गया है कि फ़ोटो को कैसे कैप्चर किया जाए, इसके लिए आप चाहें तो, डिवाइस. (इसके बजाय, अगर आप खुद का कैमरा फ़ंक्शन बनाना चाहते हैं, तो कैमरा कंट्रोल करना.)

मान लीजिए कि आप लोगों की एक मौसम सेवा लागू कर रहे हैं, जो आपके क्लाइंट ऐप्लिकेशन को चलाने वाले डिवाइसों से लिए गए आसमान की तस्वीरों को एक साथ ब्लेंड करना. फ़ोटो इंटिग्रेट की जा रही हैं आपके आवेदन का एक छोटा सा हिस्सा है. आपको नए तरीके से फ़ोटो लेने के लिए, कम से कम झंझटों का इस्तेमाल करना है कैमरा. अच्छी बात यह है कि Android पर चलने वाले ज़्यादातर डिवाइसों में, पहले से ही कम से कम एक कैमरा ऐप्लिकेशन मौजूद होता है इंस्टॉल किया गया. इस लेसन में, आपको फ़ोटो खींचने का तरीका सिखाया गया है.

कैमरे की सुविधा के लिए अनुरोध करें

यदि आपके ऐप्लिकेशन का एक आवश्यक फ़ंक्शन तस्वीरें ले रहा है, तो उसके दिखाई देने को यहां सीमित करें Google Play से उन डिवाइसों पर चलाना जिनमें कैमरे की सुविधा है. यह विज्ञापन देने के लिए कि आपका आवेदन CANNOT TRANSLATE <uses-feature> टैग अपनी मेनिफ़ेस्ट फ़ाइल का उदाहरण:

<manifest ... >
    <uses-feature android:name="android.hardware.camera"
                  android:required="true" />
    ...
</manifest>

अगर आपका ऐप्लिकेशन इस्तेमाल करता है, लेकिन काम करने के लिए कैमरे की ज़रूरत नहीं है, तो इसके बजाय यह सेट करें false के लिए android:required. ऐसा करने पर, Google Play, डिवाइसों को बिना कैमरे के भी आपका ऐप्लिकेशन डाउनलोड कर सकता है. ऐसे में यह देखना आपकी ज़िम्मेदारी है कि कॉल करने पर, रनटाइम के दौरान कैमरे की उपलब्धता hasSystemFeature(PackageManager.FEATURE_CAMERA_ANY). अगर कोई कैमरा मौजूद नहीं है, तो आपको कैमरे की सुविधाएं बंद कर देनी चाहिए.