Android 意图呼唤

Android Intent Calling

我尝试使用此代码点击 Android 移动字段时拨打电话

Intent callIntent = new Intent(Intent.ACTION_CALL);           
callIntent.setData(Uri.parse("tel:"+contactNo));   
startActivity(callIntent);   

并在 AndroidManifest.xml

中添加了这些
<uses-permission android:name="packagename.permission.C2D_MESSAGE"/>
<uses-permission android:name="android.permission.CALL_PHONE" /> 

最后我得到 **java.lang.SecurityException** 异常。

为什么会这样?以及单击联系人字段时拨打电话的正确步骤是什么?

要使用 Intent.ACTION_CALL,您必须向清单添加权限。

将此权限添加到您的清单中,应该没问题

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

使用Intent.ACTION_DIAL代替Intent.ACTION_CALL

和action_dial不需要权限,它会在拨号器上向用户显示拨打的phone号码,然后由用户决定是否拨打电话。这将是让用户控制他们想做什么的更好方法。

希望对你有所帮助