2013-02-21 52 views
1

在我的android應用程序中,我成功地隨時隨地開啓/關閉gps。但是當我打開gps時,我正在努力在狀態欄中隱藏gps圖標。我該怎麼做?打開/關閉GPS狀態欄中沒有顯示圖標

注:我也成功通過全屏幕隱藏整個狀態欄。但我只想隱藏gps圖標。

回答

2

你不能這樣做。狀態欄圖標由系統控制,並且在GPS打開時它不允許第三方應用程序隱藏它。這也是出於安全原因。任何流氓應用程序都可能在用戶不知情的情況下使用用戶的位置祕密執行惡意操作,如果他/她沒有指示GPS處於活動狀態。

1

你爲什麼要隱藏GPS圖標?

我認爲這是一個壞主意,因爲用戶想知道他們的GPS是否激活。

這將允許應用程序窺探用戶的位置,而不會意識到這一事實,這不是一個好的做法。這就是爲什麼你的應用需要獲得訪問手機位置的權限。

+0

背後的原因是用戶總是因電池排水問題而關閉GPS。所以我只想在需要的時候打開/關閉,而且對他來說一定是不可知的。 – spr 2013-02-21 07:45:40

+0

如果用戶希望其GPS不活動,則不應在未經他/她許可的情況下進行。您可以使用其他位置提供商,即使它們不夠精確。 – 2013-02-21 07:48:56

+0

是否有可能使用網絡提供商在不可到達的區域(即移動中無塔訪問)跟蹤位置。如果不是,那麼解決方案是什麼? – spr 2013-02-21 07:52:17

0

,如果您有SDK源文件,很容易:

修改NotificationManagerService.java 在基法enqueueNotificationInternal,添加標記(數據庫文件或創建文件/數據/),當GPS應用程序試圖發送通知,阻止它(參考包名)。

,但如果你沒有一個....

對不起,我不知道。

0

我也得到了同樣的問題,當我要求的GPS給位置更新,那麼它會顯示GPS圖標,因此,如果您刪除那些呼籲像locationmanager.removeupdates(LocationListener的)更新手段,那麼它會刪除狀態欄中的GPS圖標