前半は、AutomationConnectIQ-サンプル2の冒頭部分のコードと同じ。
その後のシミュレーター操作部分のみをここでは記載する。
$time = $sim.CreateTime()
$time.Open()
$time.Time = Get-Date "2020-1-1 13:00:00"
$time.Factor = 3
$time.Action([TimeSimulator+ExecuteType]::Start)
Start-sleep -Seconds 10
if ($time.IsStarted) {
$time.Action([TimeSimulator+ExecuteType]::Stop)
}
# キャプチャをする場合のサンプルコード
$time.Action([TimeSimulator+ExecuteType]::Start)
Start-sleep -Milliseconds 500
$time.Action([TimeSimulator+ExecuteType]::Pause)
$bitmap = $sim.Capture()
$bitmap.Save("ファイル名")
$time.Action([TimeSimulator+ExecuteType]::Stop)
if ($time.IsOpen) {
$time.Close()
}
ウォッチフェイスのテストでよく使うと思うTime Simulationウィンドウの操作クラス
- 1,2行目:操作用オブジェクトの生成とTime Simulationウィンドウのオープン
- 4,5行目:シミュレーション開始時刻とスピードファクターの設定
開始時刻はGet-DateでDateTime型を生成して設定する。 - Action関数で、ウィンドウ内のボタンを押したのと同じ動作を行う。
- 24行目:Time Simulationウィンドウを閉じている。
IsOpenで調べなくてもいいのだが、サンプルとしてIsOpenを記載している。
またActionでStopをしていない場合、Close関数でStop相当の処理も実施している。 - 14~21行目:指定時間でウォッチフェイスのキャプチャをする場合、ここにあるような実装にする。
Startの後、画面が更新されるであろう時間待ちポーズする。
ポーズ後キャプチャ。その後Stopで現在の時間の状態に戻す。
基本的にこのコードの前に画面の内容が変化する操作、例えば言語、バッテリー情報等を設定しておけば、特定の時刻で画面キャプチャが行える。
これを使えば、コード変更時のデグレード確認がそれほど手間なく行えるようになる。
コメント