2014-11-22 277 views
33

Google Fit應用程序在安裝時會測量您正在行走或正在運行的持續時間,以及的所有時間的步數。然而,奇怪的是,使用它似乎並沒有耗盡電池。其他應用程序,如Moves似乎記錄了很多步驟相當準確地聲明它使用大量的電源,因爲它不斷監測GPS和加速度計。Google Fit應用程序如何在不消耗電量的情況下始終測量步數?

我想幾種可能性:

  • 喚醒電話每分鐘左右,然後分析傳感器幾秒鐘,然後再睡覺。不過,這些記錄似乎很準確,所以醒來必須頻繁。
  • 實際上始終打開加速度計,並且只有在加速度計測量數據緩衝區滿後才進行分析。不過,我認爲加速度計有一個小緩衝區來存儲最新的測量結果。
  • 使用GPS到估計步數而不是實際計算它。然而,情況並非如此,因爲它甚至可以在室內工作。

該應用仍然感覺神奇。在沒有明顯的電池消耗的情況下統計整個時間。

+0

我懷疑像你的第二點是正確的,除了它們可能只是將緩衝區內容存儲到文件而沒有任何處理(使處理器空閒)。處理很可能在更大的時間間隔內完成(或者在您查看數據之前)。 – free3dom 2014-11-22 22:43:07

回答

66

感謝您提出這個問題!

電池是我們最關心的問題之一,我們努力優化Google Fit的電池使用情況並提供神奇的體驗。 Google Fit使用混合傳感器(加速計,步進計數器,顯着運動計數器),機器學習和啓發式技術來獲取正確的數據。我們的算法與第一個選項非常相似,再加上一點魔力。

我們定期輪詢加速度計,並使用機器學習和啓發式方法正確識別活動和持續時間。 對於具有硬件步驟計數器的設備,我們使用這些步驟計數器來監視步驟計數。對於較舊的設備,我們使用檢測到的活動來預測適當的步驟數量。 我們的算法合併這些活動,步驟和有時位置關聯並進一步提高準確性。

我們不調查GPS來估計步驟或檢測活動。

- Google Fit Team的工程師。

+1

這是一個非常有趣的應用程序。對行人使用陀螺儀傳感器聽起來合理(每一步z峯)。但單車作品也相當準確。 GPS信息是否真的不用於騎車?只需使用陀螺儀傳感器和軟件即可獲得距離? – Patrick 2016-02-10 14:01:46

+0

對於我來說,一些較舊的設備無法檢測到使用Google fit Api的步驟數量的任何想法爲什麼? – 2016-09-06 02:43:49

+0

這是可用的Android API? – 2018-01-07 16:37:54

9

在Nexus 5(2013年末發佈的Android 4.4 KitKat)等一些非常近期的手機中,有一個專用的低功耗CPU核心可用作計步器。由於該內核的功耗非常低,並且可以自行計算步數,而無需整個CPU或GPS,因此總體電池使用量大大降低。在最近的iPhone手機,也有類似的微控制器稱爲M7協處理器在iPhone 5S和M8在iPhone 6

點擊此處瞭解詳情:

https://developer.android.com/about/versions/kitkat.html

http://nexus5.wonderhowto.com/how-to/your-nexus-5-has-real-pedometer-built-in-heres-you-use-0151267/

http://www.androidbeat.com/2014/01/pedometer-nexus5-hardware-count-steps-walked/

1

看起來解決方案看起來像設備相關的設備,其中一個協處理器或「更微型」的核心可用於低功耗操作,一旦緩衝區滿或類似條件,它會默認這個。對於低功耗內核不可用的設備,似乎喚醒設備可能會觸發JIT操作,該操作在應用程序被調用時應該完成。

1

儘管Nexus 5內置了專用的「低功耗」計步器,但並不像您想象的那樣「低功耗」。

當我開啓Google健身活動檢測功能後,我的Nexus 5電池續航時間減少了約25%。

此外,計步器不顯示在電池使用狀態。據推測,因爲這是一件硬件事情。

5

有一個3歲的HTC OneX我可以說沒有專門的硬件,Google Fit只是以非常聰明的方式使用標準傳感器。我來自Runtastic計步器:使用時有明顯的電池消耗,因爲它需要全部的加速度計功率,所以不可能一直保持它。另一方面,如果你堅持不動,搖動手機,Runtastic會擺脫這種震動,而Google fit顯然沒有任何作用。當你實際走路或跑步時,它仍然可以完美運行。魔法。

1

我不知道其他手機在那裏,但谷歌飛度真的耗盡我的Nexus 5的電池壽命。禁用它絕對提高了我的電池壽命。

0

谷歌適合嘗試學習使用pedo步驟模式,並嘗試創建自己的個人行走模式及其集羣。這消除了每次接收傳感器數據都需要進行大量數學計算的需要。與其他軟件pedo應用程序相比,這使得Google適用於更高的能效。話雖如此,這裏準確性因素有所妥協。在功率精度的權衡之間,谷歌似乎更加關注功率因數。

此時最省電的檢測發生在三星旗艦店&其他高端機型上。感謝三星的專用硬件芯片!無論您的軟件pedo算法效率如何,但它很難超越專用硬件單元優勢。我還聽說Google爲Ped即將推出的Nexus設備帶來了專用硬件設備。

相關問題