2013-01-16 50 views
2

我們需要創建一個應用程序,該應用程序適用於員工的時間跟蹤以及位置跟蹤。 我們只想爲Android編程,但我們沒有任何Android技能。爲Android創建位置跟蹤應用程序:native還是phonegap?

因此phonegap是一個很好的選擇。 但有幾個問題,我無法在網上找到明確的答案。

  • 如果手機處於待機模式,phonegap-app是否仍可發送位置數據?這仍然是phonegap標準還是我需要使用插件?

  • 智能手機將非常簡單和便宜。是否有更高的風險,手機應用程序被Android關閉以釋放內存,然後是原生應用程序?

總而言之,可以推薦投入時間學習Android,還是留在我們的語言JS會更好?

回答

1

使用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米之間,具體取決於設備。 希望這有助於!

+0

謝謝Dpa99c,很高興聽到它對您有用,但我們最終決定 - 經過長時間的討論 - 聘請自由職業者在本地實施。他的策略是使用Android服務,即使應用程序由操作系統關閉,第二個輕量級的Android服務也會保持活躍狀態​​,這會重新激活第一個Android服務以防止其關閉。 – VintageOnRails

+0

Hi @VintageOnRails你知道在應用程序關閉後讓應用程序保持活躍狀態​​的Android服務的名稱。 –