10

पर कॉल 911 कॉल करें मैं एंड्रॉइड एसडीके का उपयोग कर आपातकालीन नंबर पर कॉल करना चाहता हूं।एंड्रॉइड

मैं नंबर (911) पर कॉल करने के लिए निम्नलिखित कोड का उपयोग कर रहा हूं। यह कोड 911 (आपातकालीन संख्या) को छोड़कर सभी संख्याओं के लिए ठीक काम करता है। जब मैं 911 का उपयोग करता हूं, तो यह डायलर स्क्रीन दिखाता है जो मैं नहीं चाहता हूं। 911 को डायलर खोलने के बिना कॉल करने की कोई प्रक्रिया है या क्या हम उपयोगकर्ता को डायलर स्क्रीन में नंबर संपादित करने के लिए रोक सकते हैं?

Uri callUri = Uri.parse("tel://911"); 
Intent callIntent = new Intent(Intent.ACTION_DIAL,callUri); 
callIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK|Intent.FLAG_ACTIVITY_NO_USER_ACTION); 
startActivity(callIntent); 
+1

संबंधित: http://stackoverflow.com/ प्रश्न/1811680/डायल-नंबर-बिना-प्रॉम्प्ट –

उत्तर

7

प्रदान किया गया कोड पहले से ही इसके लिए काम करना चाहिए, लेकिन आपको डायल-पैड दिखाए बिना आपातकालीन संख्या डायल करने के लिए CALL_PHONE और CALL_PRIVILEGED अनुमति की आवश्यकता है।

Android Reference - Manifest Permission CALL_PRIVILEGED

एक बार है कि प्रकट करने के लिए जोड़ा जाता है, आप के बजाय निर्देशित करने के लिए ACTION_CALL का उपयोग कर एक ही कोड का उपयोग करने में सक्षम होना चाहिए डायल:

Uri callUri = Uri.parse("tel://911"); 
Intent callIntent = new Intent(Intent.ACTION_CALL,callUri); 
callIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK|Intent.FLAG_ACTIVITY_NO_USER_ACTION); 
startActivity(callIntent); 
0

कहो Intent.ACTION_CALLIntent.ACTION_DIAL इस के insted डायल पैड पर उसका प्रदर्शन के बिना नंबर पर कॉल करेंगे।

+0

मैंने कोशिश की कि यह डायलपैड खोल देगा। यह कोड केवल 911 के लिए अन्य नंबरों के लिए काम करेगा। क्या आप सुनिश्चित हैं कि 911 कॉल डायलपैड नहीं दिखाएगा कृपया अपना अंत देखें। मैं पहले से ही इस कोड का उपयोग करता हूं। यदि आपने सफलतापूर्वक काम किया है तो कृपया कोड पोस्ट करें –

7

Action_Dial डायलपैड खुल जाएगा, Action_Call .. सीधे कॉल करेंगे

हालांकि, ACTION_CALL से एक उद्धरण:

नोट: इस आशय नहीं कॉल आपातकालीन नंबर के लिए इस्तेमाल किया जा सकता है। अनुप्रयोग ACTION_DIAL का उपयोग कर आपातकालीन संख्या डायल कर सकते हैं।