2011-10-08 42 views
0

我有一种服务,它具有从URL下载图像并返回Uri的方法。 当它具有所有预期功能时,该服务将变得更加复杂。因此,我在一个线程中调用它的方法。Android,使用线程启动服务并在完成时发出警告活动

我的问题是如何警告服务完成它的工作的活动。

我可以更改一个类isFinished变量,但活动必须经常检查 的值。

我只希望服务告诉活动它已完成工作,并且资源可用于 。

我想到了一个叫stopSelf()的服务,并且活动是 通过“onServiceDisconnected”发出警告,但是这看起来不是很“政治正确”。

在此先感谢

回答

-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(...); 
    } 
} 
1

有两种方法可以做到这一点。 1.你可以通过发射一个意图来开始你的活动。 2.当接收者接收到意图,并且在此方法中调用接受方法时,您可以在您的应用中广播一个意图并为其编写接收者,您可以使用意向开始您的活动。

欢呼声...

相关问题