如何在状态栏中显示/隐藏GPS图标?

时间:2013-02-12 06:51:47

标签: android

每当我调用get lat long函数时,我都需要在状态栏上显示GPS图标。

但现在,gps图标显示在整个应用程序中。

如何在状态栏中显示/隐藏GPS图标?

2 个答案:

答案 0 :(得分:3)

不,使用公共API无法做到这一点。

为此,您不仅需要有根电话,还需要修改services.jar(也可能framework.jar),以便能够隐藏它。简而言之,除非您正在编译自己的Android ROM版本,否则您无法真正做到这一点。

或者,as suggested by Someone Somewhere,您可以完全隐藏状态栏。

但是,如果您想确保在不使用GPS图标时未显示GPS图标,则意味着您尚未调用removeUpdates(),因此系统会让用户知道他们的位置由应用程序监控。要删除图标,只需拨打removeUpdates()上的LocationManager

答案 1 :(得分:0)

如果您只想在一个屏幕上获取GPS数据,可以在onPause()中删除/取消注册将删除状态栏中GPS图标的监听器。此外,您可以在onResume()内再次注册监听器,以便在再次切换到同一屏幕/活动时恢复GPS图标。

您可以查看this示例如何完成。

此外,当您完成GPS工作时取消注册LocationListener总是一件好事,因为它可能会过快地耗尽用户根本不喜欢的电池。