我正在开发一个应用程序,显示呼叫者的位置时,来电来在来电屏幕上。我正在成功地从我的算法中获取位置,但我无法在默认的传入屏幕上显示它。
如果我使用A toast,那么它只会出现1到2秒,我希望在呼叫接听之前信息应该一直出现。
我应该使用Toast、Notification或其他什么,以及如何使用它们。
简而言之,在来电接听之前,我如何在来电屏幕上显示某些内容
class IncomingCallREceiver extends BroadcastReciever
{
void onRecieve()
{
// here I want to show the Information
}
}
发布于 2012-12-20 12:00:05
你不能覆盖Android的呼叫屏幕,而且有充分的理由,事情可能会被欺骗!
也就是说,对话框很可能是在用户拿起之前显示某些内容的最佳解决方案。制作Dialog最简单的方法是使用DialogFragments。但是,由于无法从接收方显示对话框,因此您需要启动一个活动。因此,您的onReceive()
代码应该如下所示:
void onReceive(Context context, Intent intent)
{
Intent showDialogIntent = new Intent (context, DialogActivity.class);
showDialogIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startIntent (showDialogIntent);
}
然后,当您的对话框启动时,它的onCreate()
方法将生成DialogActivity并将其显示给用户。
https://stackoverflow.com/questions/13964997
复制相似问题