当我的手机接到来电时,我想请用户选择“他们想在哪个应用程序中接听电话”之类的操作。
通常根据我的研究,当我对我的接收器使用 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/