我有一个服务,它有一个从URL下载图像并返回Uri的方法。 当具有所有预期功能时,该服务将变得更加复杂。因此, 我在一个线程中调用它的方法。
我的问题是如何警告服务已完成它的活动。
我可以更改类isFinished变量,但活动必须不断检查 因为它的价值。
我只是希望服务告诉活动它已完成工作且资源已完成 可供使用。
我在调用stopSelf()并且活动是的服务的行中想到了一些东西 通过“onServiceDisconnected”发出警告,但这似乎并非“政治正确”。
提前致谢
答案 0 :(得分:1)
有两种方法可以做到这一点。 1.您可以通过触发意图来开始您的活动。 2.当您的接收者接收到意图并且在此方法中调用了接收方法时,您可以在应用中广播意图并为其编写接收器,您可以使用意图开始您的活动。
...欢呼声
答案 1 :(得分:-2)
public class MyActivity extends Activity{
public MyActivity() {
...
MyThread thread = new MyThread(this);
thread.start();
}
public void onFinishedThread(...) {
}
}
class MyThread extends Thread {
MyActivity activity;
public MyThread(MyActivity activity) {
this.activity = activity;
}
public void run() {
// do work
...
this.activity.onFinishedThread(...);
}
}