Google は、黒人コミュニティに対する人種平等の促進に取り組んでいます。取り組みを見る
このページは Cloud Translation API によって翻訳されました。
Switch to English

レポートモード

センサーは、レポートモードと呼ばれるさまざまな方法でイベントを生成できます。各センサータイプには、関連付けられているレポートモードが1つだけあります。 4つのレポートモードが存在します。

継続的

イベントは、 batch関数に渡されたsampling_period_nsパラメータで定義された一定のレートで生成されます。連続レポートモードを使用するセンサーの例は、 加速度計ジャイロスコープです。

変更中

イベントは、測定値が変更された場合にのみ生成されます。 HALレベルでセンサーをアクティブ化(それに対してactivate(..., enable=1)を呼び出す)もイベントをトリガーします。つまり、変更中のセンサーがアクティブになると、HALはただちにイベントを返す必要があります。変更時レポートモードを使用するセンサーの例は、歩数カウンター、近接、心拍センサーのタイプです。

batch関数に渡されたsampling_period_nsパラメータは、連続するイベント間の最小時間を設定するために使用されます。つまり、値がその後変更された場合でも、最後のイベントからsampling_period_nsナノ秒が経過するまでイベントは生成されません。値が変更された場合は、最後のイベント以降、 sampling_period_nsが経過した直後にイベントを生成する必要があります。

たとえば、次のように仮定します。

  • sampling_period_ns = 10 * 10^9 (10秒)でステップカウンターをアクティブにします。
  • 55秒間歩いてから1分間静止します。
  • イベントは、最初の1分間で約10秒ごとに生成され(センサーのアクティブ化のためにt=0時間とt=60秒を含む)、合計7つのイベントが発生します。 t=60秒後にステップ数の値が変化しなかったため、2分目にイベントは生成されません。

ワンショット

イベントを検出すると、センサーは自身を非アクティブ化し、HALを介して単一のイベントを送信します。競合状態を回避するために順序は重要です。 (HALを通じてイベントが報告される前に、センサーを非アクティブにする必要があります)。センサーが再アクティブ化されるまで、他のイベントは送信されません。 顕著な動きは、この種のセンサーの例です。

ワンショットセンサーは、トリガーセンサーと呼ばれることもあります。

sampling_period_nsmax_report_latency_nsに渡されるパラメータbatch機能は無視されます。ワンショットイベントからのイベントは、ハードウェアFIFOに格納できません。イベントは生成されたらすぐに報告する必要があります。

特殊な

イベントが生成されるタイミングの詳細については、個々のセンサータイプの説明を参照してください。