簡體   English   中英

Android 采樣頻率 (Hz) 和采樣周期 (µs) (HIGH_SAMPLING_RATE_SENSORS) 之間是否存在轉換因子

[英]Is there a conversion factor between Android sampling frequency (Hz) and sampling period (µs) (HIGH_SAMPLING_RATE_SENSORS)

我正在使用mSensorManager.registerListener(this, mLinearAccelerometer, SAMPLINGPERIOD)檢索傳感器數據

Android 12 引入了對傳感器數據的速率限制。 如果您調用 registerListener() 方法,傳感器采樣率被限制為 200 Hz 如果您的應用程序嘗試以更高的速率收集運動傳感器數據而未聲明新權限HIGH_SAMPLING_RATE_SENSORS ,則會發生 SecurityException。

現在,我有點困惑,因為在 registerListener 中,我們必須以µs 而不是 Hz為單位定義采樣周期。

如果我使用 SAMPLINGPERIOD < 5000 的值,則會發生上述異常: java.lang.SecurityException:要使用 4999 微秒的采樣率,應用程序需要聲明正常權限 HIGH_SAMPLING_RATE_SENSORS。

這是否意味着 200 Hz 的采樣率相當於 registerListener 中使用的 5'000 微秒的采樣周期? 還是這取決於傳感器?

謝謝!

也許,我剛剛找到了答案:5'000 µs 是 0.005 秒,即我們每秒有 200 個事件 (1/0.005),即 200 Hz。

是的,SENSOR_DELAY_FASTEST 需要新的 HIGH_SAMPLING_RATE_SENSORS 權限。 其他常量不需要它。 如果您的代碼使用靈活的整數定義作為 SAMPLINGPERIOD,則一旦低於 5'000 µs,您就需要獲得許可。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM