Quantcast
Channel: MSDN Blogs
Viewing all articles
Browse latest Browse all 35736

Windows 10 にて、SimpleOrientationSensor.OrientationChanged イベントに登録をすると、すぐにイベントハンドラーの呼び出しが行われる

$
0
0

こんにちは、Platform SDK (Windows SDK) サポートチームです。
今回は、Windows.Devices.Sensors 名前空間にある SimpleOrientationSensor クラスの動作が Windows 8.1 と Windows 10 で異なる結果になることをご案内します。

現象
SimpleOrientationSensor.OrientationChanged にイベントハンドラーを登録した際に、以下のように OS 間での動作際が発生します。

- Windows 8.1
SimpleOrientationSensor.OrientationChanged にイベントハンドラーを登録を行った後、デバイスの向きが変更になるまでイベントハンドラーの呼び出しが行われません。

- Windows 10
SimpleOrientationSensor.OrientationChanged にイベントハンドラーを登録を行った後、デバイスの向きが変更に関係なく、一度イベントハンドラーの呼び出しがおこなわれます。その後はデバイスの向きが変更になるまでイベントハンドラーの呼び出しが行われません。


原因
Windows 10 にて、SimpleOrientationSensor クラスの実装が変更となっています。WIndows 8.1 では、以下 2) の条件はございませんでした。Windows 10 では、イベントハンドラーの呼び出し可否を判断として、以下の OR 条件を満たしますと呼び出しを行う仕様となっています。

1) 前回の向きと現在の向きに差異がある
2) 初回報告である


回避策
Windows 8.1 と同じタイミングでのみイベントハンドラーの呼び出しが行われるようにすることはできません。そのため、SimpleOrientationSensor.OrientationChanged に設定されたイベントハンドラーが呼び出されましたら、SimpleOrientationSensorOrientationChangedEventArgs.Orientation  を確認を行い実装をいただく必要があります。


Viewing all articles
Browse latest Browse all 35736

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>