0

我在android环境中很新。

此问题发生在 android 4.0.3 上,但它在 android 2.2 上有效。我只是可以在拨出电话后开始活动。我只想在打电话时将我的活动回调到前台。但它适用于 android 2.2,但不适用于 4.0.3。

这是我的代码。此代码适用于传入状态的两个版本。但它不适用于 4.0.3 的传出意图。我从 BroadcastReceiver 调用这个意图。请注意,当我的活动处于前台状态时,我不想结束电话通话活动。我在 Mainfest.xml 上将启动模式设置为“singleInstance”。

Toast.makeText(context, "Should Start Activity", Toast.LENGTH_LONG).show();
                Intent callsensorintent = new Intent();
                callsensorintent.setFlags(
                        Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT
                        |Intent.FLAG_ACTIVITY_REORDER_TO_FRONT
                        |Intent.FLAG_ACTIVITY_NEW_TASK
                       );
                callsensorintent.setClassName(context,"com.example.test.sg.SensorUdp");
                context.startActivity(callsensorintent);

谢谢

4

1 回答 1

0

ICS 上的呼叫屏幕具有比以前更高的优先级,因此当它位于前台时,它将显示在其他所有内容之上。现在它甚至比通知菜单/窗帘具有更高的优先级。您可以为您的应用程序使用更高的窗口优先级,例如 WindowManager.LayoutParams.TYPE_SYSTEM_ALERT.

于 2012-04-20T11:05:43.307 回答