如何在后台实现等待或暂停。在android中进行呼叫时,不应提示用户选择“是”按钮拨打分机号码

如何在后台实现等待或暂停。在android中进行呼叫时,不应提示用户选择“是”按钮拨打分机号码,android,Android,我正在为我的组织开发应用程序,在主组织号码后拨打员工分机后,该应用程序将连接到任何员工的办公桌电话。此扩展保存在应用程序数据库中。假设主要联系人号码为“123456789”,然后需要分机“234#”,以连接员工 在主要活动中,我们有如下代码: Intent newIntent=new Intent(); newIntent.setAction(Intent.ACTION_CALL); newIntent.setData(Uri.parse("tel: 123456789;234#")); 但上

我正在为我的组织开发应用程序,在主组织号码后拨打员工分机后,该应用程序将连接到任何员工的办公桌电话。此扩展保存在应用程序数据库中。假设主要联系人号码为“123456789”,然后需要分机“234#”,以连接员工

在主要活动中,我们有如下代码:

Intent newIntent=new Intent();
newIntent.setAction(Intent.ACTION_CALL);
newIntent.setData(Uri.parse("tel: 123456789;234#"));

但上面的代码行要求用户通过类似“是/否”的选项发送额外的铃声(分机号码:2343)。选择“是”按钮时,分机将被拨号。但我的要求是在屏幕上不提示用户“发送以下乐曲的信息”并选择“是/否”的情况下拨打分机。应在后台自动选择“是”,或在后台自动拨打分机号码。

您在设备中有root访问权限吗?尝试使用按下“是”按钮的keyevent。 例如:

   Runtime runtime = Runtime.getRuntime();
    Process proc = null;
    OutputStreamWriter osw = null;

    try { // Run Script

        proc = runtime.exec("su");

        command = "input keyevent 20";
        osw.write(command);
        osw.close();

    } catch (IOException ex) {
        ex.printStackTrace();
    } finally {
        if (osw != null) {
            try {
                osw.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
    try {
        if (proc != null)
            proc.waitFor();
    } catch (InterruptedException e) {
        e.printStackTrace();
    }

当前代码行必须在API23以下工作,但在API23之后,您不能通过触发调用意图自动启动调用


例如,您可以使用紧急号码进行尝试。

并非每个设备在运行时都可以使用无根访问。我需要的通用代码将拨号分机(例如:234#)在后台没有任何用户交互。谢谢你的建议。但这不是我的要求,你已经回答了。