为什么在onPause中调用onResume和stopLocationUpdates中的startLocationUpdates?

问题描述 投票:0回答:1

关于receive location updates的文档指出,startLocationUpdates()应该在onResume()stopLocationUpdates()中调用onPause(),为什么不在onStart()onStop()

打电话给onResume()onPause()有什么好处?

android google-maps google-maps-api-3 android-location
1个回答
0
投票

这是一个“建议”,不是强制性的。这样做的好处是避免在您不使用/不需要位置时请求位置更新(因此消耗电池),因为活动在后台。

这取决于你的用例,你可以在onStart / onStop上进行,但是如果你在onPause-> onStop过渡期间没有使用这些位置,最好放入onPause。

如果您查看下面的图像,当活动进入前景时会调用onPause,然后暂停onStop。

关于背景/不可见的一个小差异:如果您有一个带有主题对话框的活动,则会调用onPause,但不会调用onStop。

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.