Java 后台的Android调用活动

Java 后台的Android调用活动,java,android,android-activity,background,phone-call,Java,Android,Android Activity,Background,Phone Call,我正在尝试在后台打电话。 因此,我在我的主要活动中称之为: Intent callIntent = new Intent(Intent.ACTION_CALL); callIntent.setData(Uri.parse("tel:123456789")); startActivity(callIntent); 我还编写了一个呼出呼叫接收器,用于更改活动: Intent myIntent = new Intent(context, DisplayCalcActivity.class); myI

我正在尝试在后台打电话。 因此,我在我的主要活动中称之为:

Intent callIntent = new Intent(Intent.ACTION_CALL);
callIntent.setData(Uri.parse("tel:123456789"));
startActivity(callIntent);
我还编写了一个呼出呼叫接收器,用于更改活动:

Intent myIntent = new Intent(context, DisplayCalcActivity.class);
myIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(myIntent);

现在的问题是,呼叫屏幕位于前台。如果我手动从呼叫屏幕切换到我的应用程序,活动已按我的要求更改,但如何才能在前台启动活动,使呼叫屏幕完全不显示?

Android SDK不允许在前台拨打电话,您可以访问私人成员,但不建议这样做。唯一的呼叫方式是通过拨号应用程序。

找到了解决方案

我用另一个接收器收听android.intent.action.PHONE\u状态。
拨出的电话会激活启动其他活动的接收器。

您可能会在一个小时内拨打电话,并在服务中拥有前台。然后你就可以把它放在前台,而不用把它放在屏幕上。