简体   繁体   English

如何在Android Java中自动结束拨出电话?

[英]How to end outgoing call automatically in android java?

I have an edit text where I input user's phone number and make a call and once the phone rings I want to end the call automatically rather than the user cutting up the call. 我有一个编辑文本,可在其中输入用户的电话号码并拨打电话,电话铃响后,我想自动结束通话,而不是用户切断通话。 How can I achieve this programatically ? 如何以编程方式实现这一目标? Here is my MainActivityCode: 这是我的MainActivityCode:

    phnum = edNumber.getText().toString();
    Intent callIntent = new Intent(Intent.ACTION_CALL);
    callIntent.setData(Uri.parse("tel:" + phnum));


    if (ActivityCompat.checkSelfPermission(this, Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) {
        // TODO: Consider calling
        //    ActivityCompat#requestPermissions
        // here to request the missing permissions, and then overriding
        //   public void onRequestPermissionsResult(int requestCode, String[] permissions,
        //                                          int[] grantResults)
        // to handle the case where the user grants the permission. See the documentation
        // for ActivityCompat#requestPermissions for more details.
        return;
    }
    startActivity(callIntent);
    if (ActivityCompat.checkSelfPermission(this, Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) {
        // TODO: Consider calling
        //    ActivityCompat#requestPermissions
        // here to request the missing permissions, and then overriding
        //   public void onRequestPermissionsResult(int requestCode, String[] permissions,
        //                                          int[] grantResults)
        // to handle the case where the user grants the permission. See the documentation
        // for ActivityCompat#requestPermissions for more details.
        return;
    }

Manifest: 表现:

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

To end a call, follow these steps: 要结束通话,请按照下列步骤操作:

  1. Call the setDisconnected(DisconnectCause) sending LOCAL as the parameter if the user terminated the call, or send REMOTE as the parameter if the other party terminated the call. 如果用户终止了呼叫,则调用setDisconnected(DisconnectCause),以发送LOCAL作为参数;如果另一方终止了呼叫,则发送REMOTE作为参数。
  2. Call the destroy() method. 调用destroy()方法。 Know more pls click here 了解更多请点击这里

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM