2011-01-14 64 views
0

我知道你不能打開應用程序中的GPS,而無需轉到系統首選項。 但我已經下載了GPS開/關小部件,並且這個小部件完成了這項工作。 我已經對apk進行了反編譯,以查找程序員是如何完成這項工作的,但dex文件並沒有顯示代碼,而是顯示了函數和信息。 他是如何做到這一點的想法?打開GPS開啓/關閉小部件的GPS

+0

哼;我從來沒有注意到這一點,我已經在許多主題現在標記接受的答案:) – Pachanka 2011-01-14 22:46:21

回答

2

使用下面的函數

buildAlertMessageNoGps()和launchGPSOptions()

,以實現自己的目標。

看到 The Link

+0

nope,沒有去偏好 – Pachanka 2011-01-14 22:46:42

0

你可以看一下源代碼,如果他的貼吧。有時候人們將自己的代碼託管在GIT上,並且可以瀏覽他們的整個項目。特別是除非你熟悉使用dalvik反編譯代碼..那麼這是一個棘手的路線。

如果您想切換GPS,只需讓您的小部件激活一個活動,即通過將小部件的狀態通過意圖傳遞給活動來切換GPS。然後讓你的活動解析這個,然後關閉它自己。

但是;我寧願通過一項服務來完成,這是一項沒有UI的活動。這項服務可以與您的應用程序一起啓動,當收到特定的廣播時,執行一些可以通過小部件觸發的功能。

具體而言,您需要查看一種類型的廣播收聽。有基於XML的意圖過濾器,它將立即發送這些特定的廣播到您的應用程序,可以相應地處理。例如,你的小部件是一個帶有標題的切換按鈕。當您切換按鈕時,您是否使用切換按鈕的狀態向小部件代碼發送意向您服務的廣播。然後在服務中,您將控制GPS或手機上任何其他組件的狀態。