如何在服务中显示文本或图形,而不需要活动



我有一个ServiceBroadcastReceiver,并希望显示文本时,它得到一些消息。

这个Service类似于电视遥控器,所以我不想使用通知或吐司。我想在右上角显示输入的数字,就像传统电视一样。

Network Meter可以在后台绘制网络速度图,所以这在技术上应该是可行的。但是,我不知道如何开始。

任何帮助都是值得感激的。谢谢你!

您可以尝试使用WindowManager

WindowManager wm = (WindowManager) mContext.getSystemService("window");
WindowManager.LayoutParams params = new WindowManager.LayoutParams();
params.type = WindowManager.LayoutParams.TYPE_PHONE;
params.format = PixelFormat.RGBA_8888;
params.flags = LayoutParams.FLAG_NOT_TOUCH_MODAL 
                | LayoutParams.FLAG_NOT_FOCUSABLE
                | LayoutParams.FLAG_NOT_TOUCHABLE;
params.gravity = Gravity.LEFT | Gravity.TOP;
params.x = 20;
params.y = 20;
params.width = 40;
params.height = 40;
wm.addView(yourView, params);

最新更新