सिस्टम के कैमरे

Android 11 या उसके बाद के वर्शन वाले डिवाइसों पर, Android फ़्रेमवर्क, सिस्टम के साथ काम करता है वे कैमरा डिवाइस हैं जो सिर्फ़ android.permission.SYSTEM_CAMERA की अनुमति और सामान्य कैमरे के इस्तेमाल की अनुमतियां. android.permission.SYSTEM_CAMERA अनुमति, इसमें दी गई Android 11 में सुरक्षा का लेवल system|signature है. इसका मतलब है कि केवल सिस्टम पार्टीशन उसी सर्टिफ़िकेट से या उससे साइन किया हो जिस पर सिस्टम करता है को यह अनुमति दे दी जाएगी. तीसरे पक्ष के सार्वजनिक ऐप्लिकेशन, सिस्टम के कैमरे ऐक्सेस नहीं कर सकते.

सिस्टम कैमरे उन डिवाइस निर्माताओं के लिए उपयोगी हैं जो लागू करना चाहते हैं ऐसी सुविधाएं जिनके लिए कैमरे के ऐक्सेस की ज़रूरत होती है, लेकिन वे खास लोगों के लिए ही होती हैं का इस्तेमाल करते हैं.

क्योंकि जिन सिस्टम ऐप्लिकेशन को android.permission.SYSTEM_CAMERA अनुमति में यह भी होना चाहिए android.permission.CAMERA अनुमति, उपयोगकर्ता इन कार्रवाइयों को रोकने के लिए CAMERA की सामान्य अनुमतियों को रद्द कर सकते हैं ऐसे ऐप्लिकेशन को डिवाइस के कैमरे ऐक्सेस करने से रोका जा सके.

लागू करना

किसी खास कैमरा डिवाइस को सिस्टम कैमरा बनाने के लिए, कैमरा एचएएल को विज्ञापन दें ANDROID_REQUEST_AVAILABLE_CAPABILITIES_SYSTEM_CAMERA सुविधाओं की सूची में.

सिस्टम के कैमरे का ऐक्सेस रखने वाला ऐप्लिकेशन बनाने के लिए, उस ऐप्लिकेशन को अनुमति वाली सूची में शामिल करना ज़रूरी है डिवाइस के हिसाब से बनी privapp-permissions.xml फ़ाइल में, जिसमें ऐप्लिकेशन के बारे में बताया गया है कि android.permission.SYSTEM_CAMERA को अनुमति दी जानी चाहिए.

पुष्टि करें

यह पुष्टि करने के लिए कि डिवाइस का कोई भी सिस्टम कैमरा सार्वजनिक तौर पर नहीं खोजा जा सकता ऐप्लिकेशन को चलाने के लिए, android.permission.cts.Camera2PermissionTest.testSystemCameraDiscovery सीटीएस परीक्षण.

सभी कैमरे के सीटीएस टेस्ट पर काम करता है.