使用phonegap編寫位置跟蹤應用程序是非常可行的,並且a)在低規格android手機上以高性能的方式工作,b)當手機處於待機模式時,讓應用程序在後臺運行。
爲了讓應用程序在android的後臺運行,需要獲取部分喚醒鎖(請參閱android powermanager)。在phonegap中,你需要使用一個插件來實現這一點。從好的方面來說,有一個existing phonegap plugin來做到這一點。缺點是,爲了使用自定義插件,您將無法使用方便的phonegap build方法來構建應用程序,因此需要通過Eclipse IDE執行手動過程,但這不是一個很麻煩的設置(見here)。
由於android應用程序內存不足而導致應用程序關閉,並且在廉價,低規格的設備上執行響應,只要您仔細編寫JavaScript代碼,這不會成爲問題以最佳方式。我已經使用phonegap實現了一個位置跟蹤應用程序,該應用程序使用自定義地圖並在包括HTC Desire和HTC Wildfire在內的舊版Android設備上進行測試,性能可以接受,部分喚醒鎖定工作 - 我沒有因爲缺乏記憶。
我選擇phonegap over native,因爲我是一個web開發人員,所以對我來說Javascript比我更方便,而不必從頭開始使用Java和android SDK,還因爲我能夠使用相同的JS代碼庫適當的插件來爲iOS生成相同的應用程序。 Phonegap能夠訪問設備上的GPS硬件並在外面進行測試,我發現平均精度在4到8米之間,具體取決於設備。 希望這有助於!
謝謝Dpa99c,很高興聽到它對您有用,但我們最終決定 - 經過長時間的討論 - 聘請自由職業者在本地實施。他的策略是使用Android服務,即使應用程序由操作系統關閉,第二個輕量級的Android服務也會保持活躍狀態,這會重新激活第一個Android服務以防止其關閉。 – VintageOnRails
Hi @VintageOnRails你知道在應用程序關閉後讓應用程序保持活躍狀態的Android服務的名稱。 –