CustomSensor.ReportInterval プロパティ

定義

センサーの現在のレポート間隔を取得または設定します。

public:
 property unsigned int ReportInterval { unsigned int get(); void set(unsigned int value); };
uint32_t ReportInterval();

void ReportInterval(uint32_t value);
public uint ReportInterval { get; set; }
var uInt32 = customSensor.reportInterval;
customSensor.reportInterval = uInt32;
Public Property ReportInterval As UInteger

プロパティ値

UInt32

unsigned int

uint32_t

センサーの現在のレポート間隔。

注釈

レポート間隔はミリ秒単位で指定されます。

レポート間隔は、センサー ドライバーの実装によって異なる既定値に設定されます。 アプリでこの既定値を使用しない場合は、イベント ハンドラーを登録するか GetCurrentReading を呼び出す前に、レポート間隔を 0 以外の値に設定します。 その後、センサーはアプリの要件を満たすためにリソースの割り当てを試みますが、センサーはセンサーを使用して他のアプリのニーズのバランスを取る必要もあります。

イベント ハンドラーが登録された後、または GetCurrentReading が呼び出された後のレポート間隔の変更は、後続のセンサー読み取りの配信に適用される場合があります。

逆に、アプリがセンサーで終了したら、センサーを 0 に設定して、センサーを既定のレポート間隔に明示的に返すようにお勧めします。 これは、特に、ガベージ コレクションの前に無期限にセンサー オブジェクトをアクティブにしておく可能性がある言語を使用する場合に、節電に重要です。

アプリでは、レポート間隔を設定する前に MinimumReportInterval プロパティを参照して、センサーが要求されたレポート間隔を確実に受け入れるようにすることをお勧めします。 サポートされている最小間隔を下回る値を設定すると、例外がトリガーされるか、未定義の結果になります。

アプリはこの値を設定して特定のレポート間隔を要求できますが、ドライバーは内部ロジックに基づいて実際のレポート間隔を決定します。 たとえば、ドライバーは、任意の呼び出し元によって要求される最短のレポート間隔を使用する場合があります。

値を 0 に設定すると、ドライバーは既定のレポート間隔を使用するように要求されます。 特定の間隔を要求する場合と同様に、ドライバーは他のクライアント要求と内部ロジックに基づいて異なる間隔を選択できます。

カスタム センサー プラットフォームでは、現在のレポート間隔に基づいて、カスタム センサーの変更感度が自動的に設定されます。 次の表は、指定された間隔の変更の秘密度の値を指定します。

現在のレポート間隔 (ミリ秒単位で指定)秘密度の変更 (G 力として指定)
1 ミリ秒 – 16 ミリ秒0.01 G
17 ミリ秒 – 32 ミリ秒0.02 G
>= 33 ms0.05 G

適用対象