如何在Android中停止位置更新

时间:2011-04-28 07:59:15

标签: android progress-bar

在我的应用程序中,我使用GPS获取坐标。我有一个更新位置的按钮。当我使用GPS更新位置时,我创建了一个进度条。如果我停止进度条,我会使用

mlocManager.removeUpdates(mlocListener); 

在进度条的onCancelListener中......当我取消它时,由于

,还会运行一些后台服务
mlocManager.requestLocationUpdates( LocationManager.GPS_PROVIDER, 0, 0, mlocListener);

为了阻止它我把我的代码放在一个线程中。 如何停止线程,因为不推荐使用许多函数(例如stop,destroy)?

1 个答案:

答案 0 :(得分:0)

线程现在基本上以这种方式停止:

  1. 您有一些变量可以同步访问它。当你需要停止线程时,你将这个变量设置为某个值,表示应该停止线程。

  2. 线程在执行变量时读取变量,如果它看到变量发生变化,则只需从run()方法返回。

  3. UPD :使用interrupt()类的interrupted()Thread方法实现。