2014-03-25 58 views
2

這裏的情況:my app calls onPause: theLocationManager.removeListener(..)如何禁用位置監聽器,當應用程序在Android 4.4.2的背景

android 4.4.2在頂部欄的gps圖標消失,幾分鐘後它再次出現(應用程序仍然在後臺)。 如果我從最近的列表中刪除應用程序,圖標將消失。

Android 4.1.2沒有這個問題。

任何想法如何disable gps當應用程序去背景?有沒有解決4.4.2的問題?

謝謝!

回答

1

我相信這可能是與活動的銷燬方式發生改變(雖然不完全確定)。我相信你想在onStop()方法中這樣做,以便當這個活動不再可見時,更新停止被請求。

@Override 
public void onStop() { 
    super.onStop(); 
    locationManager.removeUpdates(this); // Assuming the calling class implements a location listener 
} 

這應該有所幫助,無論如何值得一試。

+0

非常感謝!我試圖在onStop方法中實現它,它仍然會發生。 我們正在測試Nexus 4設備。不要認爲是一個設備特定的問題。我會繼續調查! – danielcs

+0

您正在使用的「此」類正在實現位置偵聽器嗎?還要確保您沒有爲應用程序中的其他位置的位置管理器設置更新偵聽器。祝你好運! – user1840255

+0

你絕對使用removeUpdates(this)而不是removeListener() – user1840255