2011-06-14 12 views
12

मैंने इरादे के सेटडाटाफील्ड में लिखा गया कोई भी डायल करने के लिए इस इरादे का उपयोग नहीं किया है, लेकिन जब मैं ऐप चलाता हूं और कॉल के बटन पर क्लिक करता हूं जहां मैंने यह इरादा रखा है तो मुझे यह त्रुटि मिली requires android.permission.CALL_PHONEIntent.ACTION_CALL समस्या (सुरक्षा अपवाद)

आप अपने मेनिफ़ेस्ट में android.permission.CALL_PHONE अनुमति घोषित करने के लिए की जरूरत है:: LogCat में

06-14 14:08:10.137: ERROR/AndroidRuntime(2898): java.lang.SecurityException: Permission Denial: starting Intent { act=android.intent.action.CALL dat=tel:2125551212 cmp=com.android.phone/.OutgoingCallBroadcaster } from ProcessRecord{43edbe18 2898:com.collabera.labs.sai/10102} (pid=2898, uid=10102) requires android.permission.CALL_PHONE 
+0

उचित रूप से अपने कोड फ़ॉर्मेट करें। धन्यवाद! – Trufa

उत्तर

6

त्रुटि में एक सुराग नहीं है

<manifest android:installLocation="preferExternal" package="yourpackage" 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:versionCode="1" android:versionName="1"> 
    <uses-permission android:name="android.permission.CALL_PHONE"></uses-permission> 
     . 
     . 
     . 
</manifest> 
अधिक जानकारी के लिए

here देखें। में

1

जोड़ें अनुमति अपने manifest.xml तो जैसे

<uses-permission android:name="android.permission.CALL_PHONE"></uses-permission> 

के बारे में अधिक Permissionshere

2

पढ़ें इसके अलावा, आप कोशिश कर सकते हैं

<uses-permission android:name="android.intent.action.CALL_PRIVILEGED"></uses-permission> 

यह निरंतर पदावनत है, लेकिन यह बिना तुरंत कॉल प्रारंभ करने में मदद करता है डायलर गतिविधि खोलने

+0

मुझे लगता है कि आप <उपयोग-अनुमति एंड्रॉइड: name = "android.permission.CALL_PRIVILEGED" /> – Ajay

28

इरादा.एक्शन_DIAL इरादा (इरादे.एक्शन_CALL के बजाय) को अनुमति की आवश्यकता नहीं है। यह केवल डायलर लाता है ताकि उपयोगकर्ता खुद को तय कर सके कि कॉल करना है या नहीं, जो कि ज्यादातर मामलों में बेहतर उपयोगकर्ता अनुभव है।

+0

प्रतिभा के बारे में बात कर रहे हैं, धन्यवाद – rxlky

+0

इतना छोटा विवरण लेकिन इतना महत्वपूर्ण +1 – Sniper

10
Intent intent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:03000000000"));   
     startActivity(intent); 

अनुमति जोड़ें

<uses-sdk android:minSdkVersion="7" /> 
<uses-permission android:name="android.permission.CALL_PHONE"/> 
संबंधित मुद्दे