android - 我的应用程序不会显示在 "Complete action"android.intent.action.Call 的选择器对话框中

标签 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);

并且使用该代码“Complete action using”弹出窗口已打开,但未在该选择中获取我的应用

我引用下面的链接使我的场景工作 how to use android.intent.action.CALL_PRIVILEGED and android.intent.action.NEW_OUTGOING_CALL?

那么有人可以帮助我使我的方案正常运行吗?

最佳答案

ACTION_CALL 用于拨出电话,而不是拨入电话。我不确定你真的可以做你想做的事。当您询问用户哪个应用程序应该接听来电时,您可能需要以某种方式“保持”来电。但是,接听来电是在 BroadcastReceiver 中完成的,而不是在 Activity 中完成的。

你可以看一些answers in this question .此人正在尝试做类似的事情(在默认来电屏幕上显示另一个 Activity)。即使这似乎也很难。

here非常完整地解释了当来电到达时会发生什么。

关于android - 我的应用程序不会显示在 "Complete action"android.intent.action.Call 的选择器对话框中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45365819/

相关文章:

Android:没有收到额外的 Intent ID

javascript - NodeJS中传递回调函数变成Object

Android AChartEngine graphicalView 分享事件

javascript - 如何用promise避免 'callback hell'?

android - 通过拖放android将项目添加到可扩展 ListView

android - ICS 上的 native 堆栈跟踪?

Android:从另一个启动新 Intent 的类调用方法

android - 从 arrayadapter 调用 onactivityresult 方法

android - Android.mk 中 LOCAL_CERTIFICATE 值之间的差异

android - 如何在点击按钮时播放声音