【发布时间】:2014-06-05 19:31:40
【问题描述】:
我有一个服务,在这个服务中我创建了一个实现 Runnable 的类 Client。我使用
在我的服务的 onCreate 中调用此客户端clientThread = new Thread(new Client());
clientThread.start();
在客户端类中,我有一个长时间运行的操作,并且有一些我想打印到我的活动的数据。在我的服务中,我有一个向 Activity 发送数据的方法(sendToUI),而 Activity 使用处理程序来接收数据。
现在我的问题是,我的 Client 类如何使用我的服务中的方法 (sendToUI) 将其数据提供给我的 Activity?
提前感谢您的帮助。
更新:我做了一些阅读,发现了一种简单的方法(在我看来)可以解决我的问题。这是我使用的过程。
我在我的 Client 类中添加了一个全局变量,我在 run() 方法中不断更新它。然后我在我的 Client 类中添加了一个方法 (getValue),它返回了全局变量。
我把代码改成了
Client clientthread = new Client();
new Thread(clientthread).start();
为了启动线程。然后我用了
int value = clientthread.getValue();
为了在我的客户端类中检索全局变量的当前值。然后我调用了我的 sendToUi 方法,并将值作为其参数。
【问题讨论】:
标签: android multithreading service android-service