如何在Android上请求电话呼叫请求

如何在Android上请求电话呼叫请求,android,Android,我有一个按钮,可以用用户号码打电话。但每当我在未经允许的情况下按下call时,应用程序就会崩溃。有人知道我如何实现电话呼叫请求吗?我在网上搜索了相关的话题,但仍然不清楚该怎么做 我的代码 //call phone button click event holder.buttonCall.setOnClickListener(new View.OnClickListener() { @Override public

我有一个按钮,可以用用户号码打电话。但每当我在未经允许的情况下按下call时,应用程序就会崩溃。有人知道我如何实现电话呼叫请求吗?我在网上搜索了相关的话题,但仍然不清楚该怎么做

我的代码


        //call phone button click event
        holder.buttonCall.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(Intent.ACTION_CALL);
                intent.setData(Uri.parse("tel:"+model.getPhoneNumber()));
                intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                context.startActivity(intent);


            }

        });

在menifest文件中添加此权限

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

在AndroidManifest.xml中添加

启动前,如果尚未授予用户权限,则获取用户权限

    if(ActivityCompat.checkSelfPermission(MainActivity.this, Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED){
 ActivityCompat.requestPermissions(MainActivity.this,
            new String[]{Manifest.permission.CALL_PHONE},
            MY_PERMISSIONS_REQUEST_CALL_PHONE);
            return;
        }

如果它因为需要权限而崩溃,那么您应该处理权限请求。有很多资源可以用来做这件事