0

当我将以下来源放入 onResume

locationmanager.requestLocationUpdates(provider, 10000, 15, locationListener);

它不断调用 onPause() 和 onResume() 然后重复

这出现在 android 2.2 中,但未出现在 android 4.0 中

我该如何解决?

我缺乏解释。我已经在下面的评论中做到了。当 GPS 在 onPause 上关闭时,requestLocationUpdates 在 onResume 上被撤销并重复。不知道为什么,,,如果onPause上没有removeUpdates,就运行onPause,返回onResume然后停止

请帮我

4

2 回答 2

1

在 onPause 方法中(换句话说,当活动在屏幕上不可见时),我们不想耗尽电池,所以我们不再监听位置更新。当活动再次可见时,将调用 onResume 方法。有关更多详细信息,请使用此链接更多信息

locationmanager.removeUpdates(locationListener);

在 onResume 方法中,我们通过指定位置的提供者、通知之间的最短时间(以毫秒为单位)、通知的最小距离(以米为单位)以及最后使用哪个 LocationListener 来处理新的更新来请求位置更新

locationmanager.requestLocationUpdates(provider, 10000, 15, locationListener);

更多信息使用此链接位置侦听器

于 2012-05-05T05:32:10.160 回答
0

对于我和那些追随我的人......这是由添加到清单许可中的一个额外字符引起的。

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATIONx"/>

改为

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>

它为我修好了。

于 2019-04-16T20:29:42.730 回答