当我的应用活动在主页按钮或后退按钮进入后台时,某些监听器代码(如requestLocationUpdates或线程)仍在运行,为什么?
答案 0 :(得分:0)
关于线程的问题:
总是在5运行方法中循环,你可以通过像isRunning这样的布尔控制 和一个由!isPaused控制的内部循环用于exmpl
如果你想"暂停"线程所以设置isPaused为true,如果你想杀死它,设置isRunning为false(isPaused为true)
在运行循环中让线程休眠100ms,这样他每100 + ms唤醒一次,检查它是否仍然暂停
答案 1 :(得分:-1)
您可以在类中实现这两个回调方法(其中扩展了Activity)并编写代码以在活动隐藏时以及在按下后退按钮(或其他按钮)时处理执行
Mammal mammal = list.get(i);
if(mammal instanceof TreeLemur){
TreeLemur lemur = (TreeLemur)mammal;
lemur.setAge(12);
}
答案 2 :(得分:-1)
在调用onpause方法时添加代码以暂停位置。这是我正在使用的。 locationManager
是LocationManager
@Override
protected void onPause() {
if(locationManager != null){
locationManager.removeUpdates(GPSTracker.this);
}
super.onPause();
}