2016-03-29 11 views
16

एंड्रॉइड मार्शमलो उपयोगकर्ताओं में ऐप चलने के दौरान ऐप्स को अनुमति देता है, जब वे ऐप इंस्टॉल नहीं करते हैं तो आयनिक में रन-टाइम पर पर्मिसन्स को कैसे जांचें और अनुदान दें?रन टाइम आयनिक पर अनुमतियों का अनुरोध

उत्तर

29

आपको यह देखना होगा cordova-diagnostic-plugin का उपयोग करें और का अनुरोध एंड्रॉयड क्रम अनुमतियाँ कर सकते हैं:

चेक एक अनुमति:

cordova.plugins.diagnostic.getPermissionAuthorizationStatus(function(status){ 
    switch(status){ 
     case cordova.plugins.diagnostic.runtimePermissionStatus.GRANTED: 
      console.log("Permission granted to use the camera"); 
      break; 
     case cordova.plugins.diagnostic.runtimePermissionStatus.NOT_REQUESTED: 
      console.log("Permission to use the camera has not been requested yet"); 
      break; 
     case cordova.plugins.diagnostic.runtimePermissionStatus.DENIED: 
      console.log("Permission denied to use the camera - ask again?"); 
      break; 
     case cordova.plugins.diagnostic.runtimePermissionStatus.DENIED_ALWAYS: 
      console.log("Permission permanently denied to use the camera - guess we won't be using it then!"); 
      break; 
    } 
}, function(error){ 
    console.error("The following error occurred: "+error); 
}, cordova.plugins.diagnostic.runtimePermission.CAMERA); 

एक अनुमति अनुरोध:

cordova.plugins.diagnostic.requestRuntimePermission(function(status){ 
    switch(status){ 
     case cordova.plugins.diagnostic.runtimePermissionStatus.GRANTED: 
      console.log("Permission granted to use the camera"); 
      break; 
     case cordova.plugins.diagnostic.runtimePermissionStatus.NOT_REQUESTED: 
      console.log("Permission to use the camera has not been requested yet"); 
      break; 
     case cordova.plugins.diagnostic.runtimePermissionStatus.DENIED: 
      console.log("Permission denied to use the camera - ask again?"); 
      break; 
     case cordova.plugins.diagnostic.runtimePermissionStatus.DENIED_ALWAYS: 
      console.log("Permission permanently denied to use the camera - guess we won't be using it then!"); 
      break; 
    } 
}, function(error){ 
    console.error("The following error occurred: "+error); 
}, cordova.plugins.diagnostic.runtimePermission.CAMERA); 
+0

हाय डेव - यहाँ सफलता कॉलबैक बस एक स्थिति पैरामीटर लेता है। क्या होगा अगर मैं सफलता पर कुछ और कार्रवाई करना चाहता हूं, जैसे फाइल सहेजना? यह ऐसा करने का प्राकृतिक स्थान है जो कॉलबैक फ़ंक्शन के अंदर होगा, क्योंकि आप प्रतीक्षा करना चाहते हैं जब तक कि बचत से पहले अनुमतियों की पुष्टि नहीं की जाती है, लेकिन यह कोई विकल्प नहीं है। क्या मुझे वैश्विक पैरामीटर (yuk) में स्थिति संग्रहित करनी चाहिए? क्या कोई बेहतर दृष्टिकोण है? –

+0

'cordova.plugins.diagnostic.runtimePermission.CAMERA' के बजाय जेसन सरणी '[' कैमरे '] 'और यह विफल हो जाता है। – YumYumYum

+1

??? निश्चित रूप से 'cordova.plugins.diagnostic.runtimePermission.CAMERA === cordova.plugins.diagnostic.runtime पैरामिशन ['कैमरा']' – DaveAlden

संबंधित मुद्दे