callIntenet不起作用,我不知道如何解决这个问题。

时间:2016-01-04 00:40:28

标签: android

error message

错误消息msg说: 调用需要用户可能拒绝的权限:代码应明确检查权限是否可用(使用checkPermission)或明确处理潜在SecurityException更少...(Ctrl + F1) 此检查查看Android API调用,并确保将正确类型的资源传递给期望给定类型的资源的int参数;它检查期望RGB颜色整数的API是否传递实际颜色而不是颜色资源;它检查需要特定权限的API是否具有在清单中声明的​​权限;它检查预期落在给定范围内的参数是否实际;它会检查调用者是否查看某些方法调用的结果,依此类推。

代码:      Intent callIntent = new Intent(Intent.ACTION_CALL);                                                callIntent.setData(Uri.parse(" tel:" + phone));                                                startActivity(callIntent);      图片:

2 个答案:

答案 0 :(得分:0)

从API 23开始,即使在清单中声明,也必须检查权限。

int permissionCheck = ContextCompat.checkSelfPermission(context, Manifest.permission.INTERNET);

参考http://developer.android.com/training/permissions/requesting.html

答案 1 :(得分:0)

从Marshmallow开始,您需要先检查权限。 ACTION_CALL需要CALL_PHONE权限。您可以使用ACTION_DIAL代替ACTION_CALL,因为它不需要任何权限。 Itt不会直接拨打您指定的号码,而是使用指定的号码打开用户的默认拨号器应用程序。