如何在Android中停止位置更新

如何在Android中停止位置更新,android,progress-bar,Android,Progress Bar,在我的应用程序中,我使用GPS获取坐标。我有一个更新位置的按钮。当我使用GPS更新位置时,我会创建一个进度条。如果我停止使用进度条 mlocManager.removeUpdates(mlocListener); 在进度条的onCancelListener中。。。当我取消它,然后还运行一些后台服务,由于 mlocManager.requestLocationUpdates( LocationManager.GPS_PROVIDER, 0, 0, mlocListener); 为了阻止它,我

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

mlocManager.removeUpdates(mlocListener); 
在进度条的
onCancelListener
中。。。当我取消它,然后还运行一些后台服务,由于

mlocManager.requestLocationUpdates( LocationManager.GPS_PROVIDER, 0, 0, mlocListener);

为了阻止它,我把我的代码放在一个线程中我如何停止线程因为许多函数(如stop、destroy)都已弃用?

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

  • 您有一些具有同步访问权限的变量。当您需要停止线程时,您可以将这个变量设置为某个值,指示线程应该停止

  • 线程在执行变量时读取该变量,如果它看到该变量发生更改,则停止并从
    run()
    method返回

  • UPD:它是通过
    Thread
    类的
    interrupt()
    interrupted()
    方法实现的