1

我正在开发一个应用程序,当来电屏幕上来电时显示来电者的位置。我成功地从我的算法中获取了位置,但我无法在默认传入屏幕上显示它。

如果我使用 A toast,那么它只会出现 1 或 2 秒,我希望信息应该出现直到接听电话。

我应该使用 Toast、Notification 或其他东西,以及如何使用。

简而言之,在接听电话之前,如何在来电屏幕上显示某些内容

       class IncomingCallREceiver extends BroadcastReciever
       {
               void onRecieve()
              {
                //     here I want to show the Information
               }
        }
4

1 回答 1

1

您无法覆盖 Android 的通话屏幕,并且有充分的理由,事情可能会被欺骗!

话虽如此,对话框很可能是在用户拿起之前显示某些内容的最佳解决方案。制作对话框最简单的方法是使用 DialogFragments。但是,由于无法从接收方显示对话框,因此您需要启动一个 Activity。所以你的onReceive()代码应该是这样的:

void onReceive(Context context, Intent intent)
          {
            Intent showDialogIntent = new Intent (context, DialogActivity.class);
            showDialogIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            startIntent (showDialogIntent);               
          }

然后当您的 DialogActivity 启动时,它的onCreate()方法将创建 Dialog 并将其显示给用户。

于 2012-12-20T04:00:04.883 回答