【问题标题】:Can i show a custom view from within a broadcast receiver in the background?我可以在后台的广播接收器中显示自定义视图吗?
【发布时间】:2019-07-28 13:12:55
【问题描述】:

我有一个在我的应用后台运行的广播接收器 我想在每次触发时在手机上显示一个自定义弹出视图。 (每次调用onReceive方法)

我可以展示一个我自己的自定义视图吗(只是一些带有一些文字的图片) 在广播接收器内的电话顶部? (非常类似于当您在 facebook 中收到消息时,Messenger 正在做的事情)

你有我如何实现的代码示例吗?

这是我的接收器

public class PhoneStateReciver extends BroadcastReceiver {


    @Override
    public void onReceive(Context context, Intent intent) {

        String state = intent.getStringExtra(TelephonyManager.EXTRA_STATE);
        String incomingNumber = intent.getStringExtra(TelephonyManager.EXTRA_INCOMING_NUMBER);

        if(state.equals(TelephonyManager.EXTRA_STATE_RINGING)){
            //Toast.makeText(context,"Ringing State Number is -"+incomingNumber,Toast.LENGTH_SHORT).show();
            getContactList(context, incomingNumber);
        }
        if ((state.equals(TelephonyManager.EXTRA_STATE_OFFHOOK))){
            Toast.makeText(context,"Received State",Toast.LENGTH_SHORT).show();
        }
        if (state.equals(TelephonyManager.EXTRA_STATE_IDLE)){
            Toast.makeText(context,"Idle State",Toast.LENGTH_SHORT).show();
        }


    }
}

【问题讨论】:

  • 如果我的问题没看错,您需要创建一个自定义活动并随时调用它。
  • 这是在活动级别还是在清单级别注册的?
  • 我只想在操作系统之上显示一个带有一些图像和一些文本的正方形,非常类似于当你在 facebook 中收到消息时信使正在做的事情,它会弹出在一切之上

标签: java android


【解决方案1】:

您可以在这种情况下使用小部件 https://www.raywenderlich.com/33-android-app-widgets-tutorial

【讨论】:

  • 是的,但是一个小部件会在后台显示一些东西,我想弹出一些东西,比如在 messenger 中
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-06-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多