Android M Preview docs हमें दिखाता है कि नए अनुमति मॉडल के साथ अनुमतियों को कैसे जांचें और अनुरोध करें। नीचे दिए गए चार्ट में यह हमें अनुमति समूह और उनके संबंधित अनुमतियों का समूह दिखाता है।एंड्रॉइड एम अनुमति_ग्रुप के साथ अनुमतियों का अनुरोध
मैं के साथ एक permission_group
(यानी Manifest.permission_group.CAMERA
) पहली शुरुआत पर checkSelfPermission
करने के लिए प्रयास करते हैं, जाहिर मैं PackageManager.PERMISSION_DENIED
मिलता है।
फिर उसी permission_group
के लिए requestPermissions
पर आज़माएं और मुझे पॉप अप करने के लिए कोई भी प्रकार का संवाद नहीं मिलता है। 'onRequestPermissionsResult' -1
के साथ तत्काल लौटाता है।
जब मैं Manifest.permission.Camera
के साथ समान अनुक्रम का प्रयास करता हूं - चीजें सामान्य के रूप में काम करती हैं। लेकिन एक साधारण ऐप के लिए जो मैं कर रहा हूं, मुझे ऑडियो के साथ वीडियो रिकॉर्ड करने और दो अलग-अलग अनुमतियों का अनुरोध करने की आवश्यकता है, CAMERA
और MICROPHONE
(उर्फ RECORD_AUDIO
) खराब डिज़ाइन की तरह दिखता है।
सवाल: checkSelfPermission
और requestPermission
Manifest.permission.*
और Manifest.permission_group.*
के साथ काम करने की अपेक्षा की है लेकिन वहाँ एक बग कि मैं इसे के बाद से दायर करनी चाहिए अनुरोध नहीं दिखाया जाएगा है? या यह जानबूझकर डिजाइन था?
* ध्यान दें - मैं समझता हूँ कि मैं इसमें अपने आप को एक से अधिक अनुमतियों के साथ एक requestPermissions(String[], int)
स्ट्रिंग सरणी बना सकते हैं, लेकिन अभी भी आईडी अनुमतियाँ मैं जरूरत के संयोजन की जाँच करने के if
बयान के बहुत सारे है और जब मैं उन्हें एक समूह के रूप में अनुरोध करने के लिए चाहिए केवल एक permission_group
पुराने एपीआई विधियों के शीर्ष पर चेकस्लेयर लेयरिंग के बारे में अनजान था, जो जानना अच्छा है। मैं बस कोशिश कर सकता हूं और एक सहायक उपयोगिता कर सकता हूं जो लोगों को अनुमति_ग्रुप में प्रवेश करने की अनुमति देता है और देखता है कि यह मेरे लिए समझ में आता है, और संभावित रूप से अन्य :) प्रतिक्रिया cw – trippedout
प्रतिक्रिया के लिए धन्यवाद लेकिन फिर, 'manifestifest.permission_group' का ज्ञात उपयोग क्या है। class'? –
@ हेन्डरएन्ग्रेनियन: उदाहरण के लिए, आप इसे 'पैकेजमेनगर' पर 'getPermissionGroupInfo() 'के साथ उपयोग कर सकते हैं (https://developer.android.com/reference/android/content/pm/PackageManager.html#getPermissionGroupInfo (जावा। lang.String,% 20int))। – CommonsWare