从绑定的前台服务更新UI

时间:2019-02-17 17:43:15

标签: android service udp

由于我是开发Android应用程序的新手,所以我想问一下经验丰富的开发人员如何解决以下问题。

我要构建的应用程序应该执行以下操作: 当应用运行时,它会不断地通过upd包收到各种双打。根据双精度值,它将在主要活动的文本和图像视图中显示某些消息。

到目前为止,我已经设置了前台服务(在额外的线程上运行)来接收双打。该服务绑定到主要活动。 我决定使用绑定服务,因为将来我想将其他活动连接到该服务。

这是我的问题:

  1. 我是否为我打算做的事情选择了正确的配置(绑定前台服务)?

  2. 如何根据udp服务接收到的double值更新我的图像和文本视图?我可以在服务中执行此操作,仅在值更改时才推送更新吗?

非常感谢您的时间和协助。

1 个答案:

答案 0 :(得分:0)

  

我是否为我打算做的事情选择了正确的配置(绑定前台服务)?

对绑定的Service无异议。只要将Activity放在前台,将感兴趣的Service绑定到Activity将确保它保持活动状态。

  

如何根据udp服务接收到的double值更新图像和文本视图?我可以直接在服务中执行此操作,并且仅在值更改时才推送更新吗?

您不应尝试从外部更新View。只有Activity所属的组件(FragmentView)才有权对其进行修改。

相反,只需将数据更改通知感兴趣的组件。

应用内通信的想法: