我的应用程序不会出现在"完成操作" android.intent.action.Call的选择器对话框

时间:2017-07-28 05:53:10

标签: android android-intent callback

当我在手机上收到来电时,我想让用户选择类似"在哪个应用中他们想要接听该电话"。

通常根据我的研究,当我对接收器使用android:permission="android.permission.CALL_PHONE"动作时,它将自动打开"使用"完成动作但不幸的是没有得到那个弹出窗口。

要打开该弹出窗口,我已完成以下代码

Intent it = new Intent(Intent.ACTION_CALL);
it.setData(Uri.parse("tel:" +number));
it.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

if (ActivityCompat.checkSelfPermission(ctx,
        Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) {
    return;
}
ctx.startActivity(it);

使用该代码"使用"完成操作弹出窗口已打开但未在我的应用程序中获取

我在下面的链接中提到我的方案正常运行 how to use android.intent.action.CALL_PRIVILEGED and android.intent.action.NEW_OUTGOING_CALL?

那么请帮助我让我的情景有效吗?

1 个答案:

答案 0 :(得分:1)

ACTION_CALL用于OUTGOING呼叫,而不是来电。我不确定你能不能做你想做的事。当你问用户应该回答什么应用时,你会以某种方式“保持”来电。但是,接听来电是在BroadcastReceiver内完成的,而不是在Activity中。

您可以查看一些answers in this question。此人正尝试执行类似操作(在默认来电屏幕上显示另一个Activity)。即使这似乎也很困难。

here是一个非常完整的解释,说明来电时到达的情况。