FRepサポート archive

Category : プログラムの編集 (2)

プログラムの編集

Tags: No Tags

プログラムの編集を利用することで、状況に応じた操作の再生を行うプログラムを作成することができます。複数の操作記録や条件を組み合わせて、より長時間の操作や、再現性の高い操作を作成して利用できます。記録の管理画面でプログラムの項目(黄色ラベルボタン)をタップするか、あるいはプログラム作成ボタンを押すことで、プログラムの編集画面が開きます。

画面の上部(または右上)には記録の管理で選択・作成したプログラムの情報が表示され、左のボタンから順にラベル・表示設定再生・繰り返し設定プレビューをそれぞれ開くことができます。

プログラムのリスト表示FRep プログラムの編集

プログラムは操作記録や条件など複数の項目が並ぶリストとして表示されます。それぞれの項目には#プログラム番号, ラベル, アイコン, 概要, 選択チェックボックスが含まれます。

- #プログラム番号
プログラムは1.番から順に実行されます。ループ条件の範囲や、条件による行き先もプログラム番号で示されます。タップすることで、スキップ状態やブックマークを切り替えることができます(後述)。

- ラベル (灰:操作記録, 緑:条件・制御, 黄:関数)
オプション: 再生プロセスの通知がONの場合には、再生時にラベルが表示されます。ラベルが空の場合、その項目のポップアップ通知は表示されません。

ポップアップUIモードOFF時: タップすることで項目に応じた設定画面が開きます。

- アイコン
操作記録の場合は、記録時のアプリアイコンまたはスクリーンショット(メニュー:画像表示モード ON時)と、右上に再生マークが表示されます。

条件・制御の場合は、項目に応じたアイコンや、設定内容に関するアプリアイコン、また画像認識の場合は認識する画像が表示されます。待機スキップ/園長用パネルを表示 がONの場合は、アイコン右上にオレンジの待機アイコンが表示されます。

ポップアップUIモードOFF時: タップすることで、軌跡を編集画面(操作記録の場合)、設定画面(条件・制御の場合)が開きます。

- アイコン下付マーク
もし項目の再生・実行後に行き先(特定の#プログラム番号, 中断, 完了など 後述)が設定されている場合は、アイコンの左下/右下に該当するマークが表示されます。次へ が指定されている場合、マークは省略されます。
左下(緑マーク): その項目の実行が 完了したとき または条件に 成功したとき の行き先
右下(赤マーク): その項目の条件に 失敗(時間切れ)したとき の行き先

- 概要
再生・待機時間またはタイムアウト時間、その他設定の概要が表示されます。項目の再生順を調整する場合は、この部分を長押ししてから上下にドラッグすることで、項目の順序を変更できます

- 選択チェックボックス
メニュー: 削除, コピーして追加, 切り出し, 有効/スキップ切替, 待機時間を設定 の対象とする項目はチェックをONにしてからメニューを選択します。また、[+]再生 [+]条件 から項目を追加する際には、チェック項目の位置に応じて項目が追加されます

追加する記録を選択操作記録の追加・設定

現在のプログラムに別の操作記録を追加する場合は、[+] 再生 を押して追加する記録を選択します。このとき、チェックされた項目が存在する場合は、その直前の位置に記録が追加されます。追加された項目は独立しており、編集や削除は元の記録やプログラムに影響しません。

記録の数が多い場合は、選択のためのフィルタが表示されます。

左側ボタン: 追加する記録の種類を選択できます。標準では通常の記録およびプログラムが表示されます。明示的に関数を指定することで、関数も追加できます(※)。
アプリアイコン: タップすることで追加する記録のアプリを編集中のプログラムと同じアプリに絞り込みます。
テキストフィルタ: 入力した文字列を含む記録のみに絞り込みます。

また、右端のボタンを押すことで直前のフィルタ条件を呼び出すことができます。

※関数を追加した場合も、独立した項目として追加されるため、追加後の項目の編集や、元の関数の編集はお互いに影響しません。

FRep 操作記録の設定

 

操作記録項目のラベルボタン(灰)を押すことで、設定パネルが現れます。操作のプレビューや編集を行う場合は、アイコンを押して軌跡を編集パネルを開きます。

待機: 操作開始前の待ち時間。右側のボタンを押すとリセットされます。

待機スキップ/延長パネルを表示: ONの場合、待機中にマニュアル制御パネルが表示され、任意のタイミングで待機を省略または延長できます。(詳細は後述)

完了したとき: 実行後の移動先を指定。(詳細は後述)

ラベル: 項目名

 

 

FRep 条件・制御リスト条件・制御の設定

再生に条件や制御を加える場合は、[+] 条件 を押して追加する項目を選択します。ここでは、それぞれの機能と個別の設定を紹介します。共通の設定項目については次節を参照してください。

▼関数呼び出し
あらかじめ保存しておいた関数(プロシージャ)を1つの項目として呼び出すことができます。関数を作成する場合はプログラム編集画面にて、関数として利用する一連の項目をチェックしてからメニューの 切り出し を選択します。切り出された関数は記録の管理関数 タブに保存され、他のプログラムからも呼び出すことができます。

▼ループ/区間
ループ または 区間 の項目をチェックされた項目の最初と最後を囲むように追加します。チェックがない場合は末尾に追加されます。ループでは永久ループ(∞)または指定した回数だけ繰り返しを行います。

繰り返し ~ 回: ループの繰り返し回数 (0で無制限)

折りたたみ / 展開

ループ または 区間 に囲まれた項目は、#プログラム番号をタップして折り畳むことができます。折り畳まれた状態で、移動や内容の一括チェック、削除を行えます。

▼待機
指定した秒数だけ待ちます。

待機: 待ち時間 (秒)

▼アプリ待ち
設定したアプリ情報と、実行中のアプリ情報が一致するまで待ちます。デフォルトでは1秒間隔で6回判定を行い、最大で5秒待ちます。

アプリ(パッケージ): アプリが一致すると成功と判定 (粗い判定)
クラス(より詳細): アプリだけでなくクラス(Activity)も一致すると成功と判定 (より厳密)

▼画面向き
設定した画面の向きと、再生中の画面の向きが一致するまで待ちます。デフォルトでは1秒間隔で6回判定を行い、最大で5秒待ちます。

画面の向き: 0°、90°、180°、270°、0°,180°、90°,270°
※角度の基準0°は機器標準の向き

▼画像認識
現在のスクリーンショットと、指定した画像の領域が一致するまで、または指定した画像を含む領域が見つかるまで待ちます。デフォルトでは10秒間、スクリーンショットの撮影と判定を繰り返します。

※連続して実行される画像認識が割り込み中断によって停止する場合、その画像認識の前に0.5秒程度の待機を追加してください

FRep 画像認識設定認識する画像を選択/現在のリストから選択: 操作記録に含まれるスクリーンショットから画像を選択
認識する画像を選択/画像ファイルから選択: bmpまたはpng形式のファイルからスクリーンショットを選択(※)
※画像ファイルはスクリーンサイズと同一である必要があります。また、画像の向きを指定する必要があります。

- 認識する範囲を指定/範囲を編集: From (左, 上) To (右, 下)

背景または矩形をドラッグ: 認識範囲の位置を調整
ピンチイン/ピンチアウト: 認識範囲の大きさを調整。2点タッチの開始位置によって幅のみ/高さのみ調整できます。

- 認識する範囲を指定/マスク編集: 塗りつぶし/消去, 四角/楕円/正方形/円

1点タッチ/ドラッグ: タッチ位置に対してマスク領域(※)を塗りつぶし/消去
2点タッチ/ドラッグ: 選択した形状でマスク領域(※)を塗りつぶし/消去
マスク領域は画像認識には使用されない部分です

FRep 画像認識 制御設定

認識する画像は、元画像が残っていれば制御設定の画像を編集 ボタンから再編集できます。

完全一致: 領域中の全ての位置の色が一致すると成功
一致ピクセル率: 領域中の同一色の割合が指定の割合より大きい場合に成功
色の類似度: 色の差から算出された類似スコアの割合が指定の割合より大きい場合に成功
検索:完全一致: 指定領域と一致する画像が現在のスクリーンショット内に存在すると成功し、一致した位置を保持 ※複数一致した場合は最初に一致した領域のみを使用
検索:類似度: 指定領域に類似(縁点の分布および色の類似度)する画像が現在のスクリーンショット内に存在すると成功し、一致した位置を保持 ※複数存在した場合は最も色の類似度が高い領域のみを使用/検索範囲の設定を推奨

スクリーンショットを撮る: 新しくスクリーンショットを撮影して判定。OFFにした場合、直前のスクリーンショット(他の画像認識項目やスクリーンショット項目で撮影されたもの)に対して1度だけ判定を行います。

成功時に認識領域中央をタップ: 成功時、指定した画像認識領域または検索で発見した領域の中央位置をタップ (非RootかつAndroid4.0以前の機器ではタッチ情報の取得が必須)

次の待機を省略/成功時: 画像認識に成功した場合、次の待機時間をスキップ
次の待機を省略/失敗時: 画像認識に失敗した場合、次の待機時間をスキップ

右上のテスト ボタンを押すことで、現在の設定を別のスクリーンショット画像に対してテストできます。ファイルリストからディレクトリを選択することで複数の画像を一括テストできます。

下端の 画像を編集 ボタンから、各種条件はそのままに参照する画像や範囲を変更できます。

▼アプリ起動
この項目の再生時に、指定したアプリまたはショートカットをFRepから起動します。

タスク履歴/全てクリア: 既存の同一アプリのタスクを消去してから起動するフラグを指定(デフォルト)
タスク履歴/トップ入れ替え: 既存の同一アプリのタスクのうち最近の同一タスクを入れ替えて起動するフラグを指定

▼アプリ終了
この項目の再生時に、指定したアプリを終了します。次にアプリを起動するとき、前回の状態からは復帰せず、最初から実行されます。終了するアプリが現在のアプリの場合は、ホームアプリに移行します。

強制終了: ホームアプリを含むアプリを強制的に終了

▼キー操作
この項目の再生時に、機能キーを押す操作を実行します。

キー操作: Home, Back, Menu, Enter, PageUp, PageDown, Space, (arrow key), VolumeUp, VolumeDown, VolumeMute, メディア再生, メディア記録, メディア一時停止, メディア停止, 次のメディア, 前のメディア, 早送り, カメラ, フォーカス, Search, (カーソル)Home, (カーソル)End, Tab, ESC, BS, Del.
押下後の待ち時間: 0.3秒~

▼タッチ操作 (非RootかつAndroid4.0以前の機器ではタッチ情報の取得が必要)
この項目の再生時に、指定した位置をタップします。FRep タッチ操作 制御設定

タッチの基準画像を選択/現在のリストから選択: リスト内の操作記録に含まれるスクリーンショットから画像を選択
認識する画像を選択/画像ファイルから選択: jpgまたはpng形式のファイルからスクリーンショットを選択(※)
画像なし(手入力): 設定画面で座標を手入力する場合に選択
※画像ファイルはスクリーンサイズと同一である必要があります。また、画像の向きを指定する必要があります。

タッチする位置を指定: 位置をタップ/スワイプ、または緑の点をドラッグして指定
タッチ操作の種類を指定: タップ/長押し/ダブルタップ/スワイプ(※)を選択
長押し、ダブルタップ、スワイプの実行にはタッチ情報の取得が必要です

(X, Y): 機器標準の向きにおける左上を(0,0)とした座標
操作後の待ち時間: 0.3秒~
画像検索の結果を使用: ONの場合、画像認識の結果を(0,0)として(X,Y)座標が加算された位置をタップ

▼キー入力
この項目の再生時に、指定したキーボード入力を行います。この機能はキータイピングを行うもので、指定した文字列がそのまま入力されるものではありません。特定の対象に文字列を入力する用途の場合は、その対象を選択した上で、この項目にIMEなどの制御を考慮したキー入力内容(確定のためのEnterなどを含む)を指定してください。

キー入力: タイプするキー列(キーボード上の文字に限定)。

▼クリップボード (※Android 4.3では非推奨)
この項目の再生時に、指定した文字列をクリップボードに設定します。

クリップボード: 指定する文字列(文字種の制限なし)

▼スクリーンショット撮影
この項目の再生時に、スクリーンショットを撮影し、指定したフォルダに保存します。

保存先を選択: スクリーンショットの保存先

接頭名: ファイル名の接頭部分。(接頭名)-(日付)-(時刻).png ファイルとして保存されます。
回転/変換せず保存(高速): ONの場合、スクリーンショットの過程に画面の向きによる回転やフォーマット変換を含めずに保存します。
保存しない: ONの場合、撮影したスクリーンショットはファイルに保存されません。撮影と画像認識を分けて登録する(続いてスクリーンショットを撮る:OFF設定の画像認識を行う)ための項目です。

▼バイブ通知
この項目の再生時に、機器をバイブレーションさせます。

タイプ: 振動タイプを1,2いずれかから選択

▼変数, IF文
変数を使用して再生中の状態を保持・条件分岐を行います。詳細はプログラム再生ログ/変数リファレンスを参照してください。

FRep 共通設定共通設定について

操作記録、条件・制御に共通する設定として、実行後の行き先の指定やマニュアル制御パネルの表示、ラベルの設定があります。行き先は#プログラム番号 (特定の番号へ移動), 中断 (中断として再生を終了), 次へ (次の番号へ移動), 完了 (再生完了として終了)のいずれかです。

成功したとき/完了したとき: 判定に成功したときの移動先を指定。デフォルトは 次へ。項目のアイコン左下に緑色のマークで表示されます。

失敗(時間切れ): 指定した秒数の間、判定に成功しなかった場合の移動先を指定。デフォルトは 中断。項目のアイコン右下に赤色のマークで表示されます。

成功/失敗については[変数をセット]を選択することで、それぞれの場合に変数を設定することもできます。

スキップ/延長用パネルを表示: ONの場合、この項目の処理中にマニュアル制御パネルが表示されます。詳細は次節を参照してください。

ラベル: この項目の名前。

ポップアップメニュープログラム編集ポップアップ

ポップアップUIモードがONの場合、リスト内の項目をタップすることで設定、プレビュー、軌跡の編集、間隔の調整、分割、削除のためのメニューが現れます。

設定: 制御設定を開きます。

プレビュー/軌跡の編集: プレビュー画面または軌跡の編集画面を開きます。

操作間隔の調整: 操作間隔の調整を開きます。

軌跡を分割: 軌跡を分割を開きます。

チェック位置にコピー (1項目チェック時): あらかじめチェックした1項目の直前にこの項目をコピーします。

チェック位置に区間内容をコピー (1項目チェックおよび畳んだ区間をタップ時): あらかじめチェックした1項目の直前にこの区間の内容をコピーします。

この項目を削除: リストから項目を削除します。※実際にデータが削除されるのはアプリ変化またはメニューの保存を選択した時です。

FRep ブックマーク/スキップスキップ/ブックマーク,マニュアル制御パネル

#プログラム番号をタップすると、その項目の状態を標準またはスキップに変更できます。長押しすることでブックマークを指定できます。

▼標準
再生時に実行される項目です。

▼[スキップ] (グレーアウト/番号打ち消し線)
再生時に実行されない項目です。削除せずにプログラムの動作から除く場合に利用できます。

▼[ブックマーク] (背景矢印)
下記マニュアル制御パネルで移動先として登録される項目です。

スキップ設定を一括して切り替える際には、設定する項目をチェックしてからメニュー: 有効/スキップ切替 を選択します。

自動分割モードで記録した場合、自動生成されるプログラムの画像認識項目は[スキップ]状態に設定されています。

FRep マニュアル制御パネル

プログラムの再生中、スキップ/延長用パネルを表示: ON が設定されている項目の待機・判定中には、マニュアル制御パネルが現れます。このパネルでは、待機時間のスキップや成功/失敗の指定、判定時間の延長、ブックマーク項目への移動が行えます。

パネルはFRepフローティングパネル同様に2つのボタンから構成され、同様の操作で利用できます。

▼パネル上ボタン [制御操作の選択]
再生中の項目名が表示されます。もし画像認識項目の場合は、ボタン背景に認識する画像が表示されます。タップやフリック操作で、下ボタンに表示される制御の内容が切り替わります。

▼パネル下ボタン [制御操作の実行]
タップすることで表示されている制御内容を実行します。また、ドラッグすることでパネルの位置を移動できます。

Skip(OK): 現在の待機・判定をスキップし、成功判定とする (初期状態)

Skip(NG): 現在の待機・判定をスキップし、失敗判定とする (上ボタンのタップにより切替) FRep マニュアル制御の選択

中断: 再生を中断する (上ボタンのダブルタップにより切替)

(ブックマーク項目): 選択された項目へ移動して再生を継続 (上ボタンをフリックして選択)

判定時間の延長: パネル上ボタンを一度タップまたはフリックすると、上ボタンには一時停止アイコンが表示されます。この状態では待機時間・判定時間(判定回数)が延長され、判定が成功するまで継続されます。この状態を解除するには、再度上ボタンをタップします。

FRep 待機/操作時間を調整操作間隔の調整

待機/操作間隔の時間を指定/加減します。タップして現れるポップアップはタップした項目のみを調整します。複数の項目を一括して調整する場合は対象をチェックし、メニューから操作間隔の調整を選択します。

(符号と時間): 時間と調整内容[延長(+), 短縮(-), 一致(=)]を指定します。

調整対象の条件を指定: ONの場合、調整する対象を下記の条件で絞り込みます。OFFの場合は全ての待機/操作間隔を調整します。

範囲条件セット: 対象とする時間条件をプリセットから指定できます。カスタム (最後の条件を利用)、2秒以上 (2秒以上のみを対象として調整), 2-10秒 (2~10秒のみを対象として調整), 2秒以下 (2秒以下のみを対象として調整), すべて (時間を条件としない)

(下限)秒 ≤ (対象): 下限値より短い待機時間/間隔は調整されず無視されます。

(対象) (上限)秒: 上限値より長い待機時間/間隔は調整されず無視されます。

待機時間, 操作間隔: 待機時間 がONの場合、操作記録の最初の待ち時間および待機項目の待ち時間を対象とします。操作間隔 がONの場合、ストローク間の待ち時間を対象とします。

軌跡を編集FRep 軌跡の編集

操作記録のプレビューおよびタッチ操作の編集を行います。タッチ操作はストローク単位(タッチ開始から全ての指を離すまで)に分割され、緑の点と向きを示す三角形で描画されます。

タッチ操作を編集する場合は、下部のスライダで編集対象とするストローク範囲を指定してから、ドラッグまたは編集メニューを開いて位置や待ち時間、ストローク間の操作間隔の変更、または必要な操作の切り出しや分割を行います。終了/保存する場合は、画像をタップするか戻るキーを押します。保存時、編集された操作記録は元の記録とは別に保存され、また元の記録には[スキップ]が設定されます

▼下部スライダ [表示/編集対象を選択]

スライダは操作記録の時間を幅としており、左右の三角のつまみをドラッグすることで表示/編集対象とするストロークを選択できます。また、右上の操作パネルのうち<<前/次>>を押すことでそれぞれのストロークを選択できます。

選択範囲内の色: 各ストロークは 操作までの待ち時間(青)タッチ操作時間(緑) から構成されます。

▼画像上でのドラッグ操作 [選択ストロークの移動]FRep 軌跡の編集 ストローク選択
画像上でドラッグ操作することで、選択したストロークがドラッグ方向に移動します。
※移動量はタッチデバイスの分解能に依存します。

▼左上タイトルのタップ [選択ストロークの待ち時間調整/切り出し]
左上のアイコンやメッセージをタップすることで編集メニューが開きます

最初の待ち時間を調整: 選択中のストロークのうち、最初の待ち時間のみを設定

範囲内の待ち時間を調整: 選択中のストローク全ての待ち時間を設定

選択中の軌跡を切り出し: 選択中のストロークのみを残す

右上3ボタン操作パネル <<前/中断・再生・停止/次>>
<<前/次>>: 前または次のストロークを選択。先頭の項目で前、または末尾の項目で次を押すと全体を表示します。

中断(四角アイコン): 描画された軌跡を全て消去。

再生(三角アイコン): プレビューの再生を開始。

停止(橙停止アイコン): プレビューの再生を停止。

※再生中に左上のアイコンをタップすることで再生速度を1x(等倍)から2x, 3x, 5x, 10x(10倍)まで変更できます。

メニュー

▼保存
現在の状態を保存します。※画面遷移やスリープ時には自動で保存が行われます。

▼読込
保存された状態を読み込みます。

▼切り出し
一連のチェック項目を関数として保存します。関数はどのプログラムからも関数呼び出しの1項目で呼び出せます。※切り出した関数は記録の管理画面の関数タブに保存されます。

▼削除
チェック項目を削除します。※保存時に実際にデータが削除されます。

▼コピーして追加
チェック項目をコピーして現在のプログラム末尾に追加します。

▼ラベルを消去
チェック項目のラベルを全て空にします。ラベルが空の項目は、再生時のポップアップ通知が省略されます。

▼有効/スキップ切替
チェック項目のスキップ/標準状態を切り替えます。

待機/操作間隔を調整
チェック項目のうち、操作記録の最初の待ち時間、待機項目の待ち時間、および操作に含まれるストローク間の間隔を指定/加算/減算します。

▼すべて選択/選択解除
全ての項目をチェック/チェック解除します。

▼再生ログを表示 (要アンロックキー)
現在のプログラムが最後に再生されたときの終了時の状態を表示します。詳細はこちら

▼画像表示モード
ONにした場合、操作記録の項目についてアプリアイコンの代わりにスクリーンショットを表示します。
※スクリーンショットがない記録の場合はアプリアイコンを表示します。

▼最終マッチをプレビュー表示
ONにした場合、最後の再生時に一致した画像をプレビュー内に表示します。

▼区間をインデント表示
ONにした場合、ループや区間に囲まれた項目をインデント表示します。

▼区間を付加
ONにした場合、項目数の多いプログラムを追加する際、自動的に前後に区間を付加します。

Tips

– 特定の項目について、再生中のポップアップを表示させない場合は、その項目のラベルを空にして保存してください。

– 記録モード: 自動分割 では、記録中、意図的に操作をせずに記録を分割させることで、分割に応じた画像認識・アプリ待ち・画面向き項目を含むプログラムが作成されます。生成された項目のうち、画像認識は[スキップ]設定で登録されているため、必要分だけ解除して利用できます。

アプリ起動 項目がそのアプリのプロセスを増殖させてしまう場合、タスク履歴/トップ入れ替え 設定に切り替えてみてください。ランチャーActivityと実際のメインActivityが異なるアプリの場合にこの問題が発生することがあります。

– 画像認識で(switch ~ case様の)複数の分岐を行いたい場合は、まずスクリーンショット撮影を配置し、続いて複数の画像認識(スクリーンショットを撮る:OFF)を追加し、それぞれの 成功したとき: に分岐先を指定する形で実現できます。もし何度か試行回数が必要な場合は、追加した一式の先頭と末尾の項目をチェックして、ループ開始を追加してください。

– 長いプログラムを作成するときには、次の機能の利用を推奨します。関数 (切り出しメニュー/関数呼び出し項目), 標準/スキップ/ブックマーク切替, 再生ログを表示 メニュー。また、プログラム冒頭に待機項目を追加し、その設定 スキップ/延長用パネルを表示 :ON にしておくことで、再生時にマニュアル制御パネルで任意の項目から再生テストを行えます。Androidの設定 → 開発者向けオプション → タップを表示 もお忘れなく。

タッチ操作にマイナスの座標を指定すると、機器のサイズに座標を足した位置をタップします。例えば(-1,-1)を指定すると右下端をタップする操作になります。

– ポップアップUIモードや削除時の確認設定は記録の管理画面と共通です。変更する場合は記録の管理のメニューから設定してください。

– 画像認識などで外部SDカード内のスクリーンショット画像を参照する場合は、ファイル一覧の「上へ」を何度か押して現れる「切替」ボタンを押して外部SDカードに移動できます。

– ファイル選択リストでソートボタンを長押しすると、ファイル名の省略部分を切り替えられます。

プログラム再生ログ/変数リファレンス

Categories: 変数
Tags: No Tags

プログラムの編集により作成した記録を再生した結果は、アンロックキーを導入することでプログラムの編集画面メニュー「再生ログを表示」から確認することができます。より詳細な再生中の状態を確認するために、アプリ待ちや画像認識結果を変数に格納してくことで、再生ログに表示することができます。

再生ログの表示 (要アンロックキー)

FRep 再生ログ再生結果と再生完了の日時、最後に再生または中断された項目を表示します。プログラムが変数を参照した場合には、参照した変数の内容をリスト表示します。エラー時のみ再生ログを記録オプションがONの場合、再生成功時にはログ情報は上書きされません。

- 日時
再生成功時には緑、失敗・中断時には赤の四角アイコンを表示します。日時は成否に関わらず再生終了時点を示します。

- ラベル 再生結果:最終項目
再生時点でのラベル名と成否、終了直前に実行された項目の番号およびラベルを表示します。

- エラーメッセージ
再生失敗・中断時の原因となったエラーメッセージを表示します。

- 参照変数
プログラム内で設定・参照された変数について、再生終了時点での値を表示します。

 

FRep 変数変数

再生中に得られる値の取得や演算を行い、変数に保存します。変数はプログラム編集の制御項目の設定や、IF分岐に利用できます。保存された変数はFRepサービスが保持し、他のプログラムと共通して使用されます

複数の演算を指定した場合、リストの上から順に実行されます。

リストの左側-ボタンから削除、右側+ボタンから演算を追加できます。中央の演算文を長押しすることでリスト内をドラッグ移動できます。演算内容を編集する場合は中央の演算文をタップします。

演算文の形式

(代入先変数)=(コード):(引数1) (演算子) (引数2)

変数名 [A-Za-z_@][0-9A-Za-z_]+

定義できる変数名は半角英数とアンダーバーから構成されます。ただし、冒頭に数字は使用できません。@で始まる変数は規定のシステム変数のため、引数にのみ使用できます。

frep0, frep1, frep2, frep3, frep4 はTasker Eventプラグインによって再生終了時にTasker一時変数%frep0, %frep1, %frep2, %frep3, %frep4に渡されます。このとき同時に%frepsuccessに1(再生成功時)または0(失敗/割り込み中断時)が指定されます。

型 [(空), 数値, 矩形, 文字列]

値の型は(空)を含め4種類です。変数の型は保持している値で決定されます。

説明 定義例
(空) 値が定義されていない状態
※再生ログ上ではnull表示
var=num:
var=rect:
var=str:
数値 整数、小数、負数
※一部演算子では整数に切り捨てた値が使用される
var=num:0
var=num:0.012
var=num:-0.5
矩形 (left top right bottom) 形式で定義される矩形
各成分は整数または変数
var=rect:(10 20 30 40)
文字列 “文字列内容” 形式で定義
エスケープ文字は(改行)\n (タブ文字)\t (\文字)\\ (“文字)\”
var=str:”line1\nline2″

@システム変数一覧

機器や再生の状況を参照するためのシステム変数です。代入はできません。

変数名 説明
@repeat 数値 現在の繰り返し再生回数(初回0)
@loop 数値 直近のループ項目カウント(初回0)
@lastif 数値 直近のIF項目の成否(成功時1,失敗時0)
@rotation 数値 現在の画面向き(0: 0°, 1:90°, 2:180°, 3:270°)
@cpuusage 数値 現在のCPU使用率(0~100)
@start 数値 再生開始時刻(ms)
@now 数値 現在時刻(ms)
@lastmatch 矩形 直近の画像認識位置(成功時のみ上書)
@screen 矩形 機器のスクリーンサイズ(向きは0°固定)
@clipboard 文字列 クリップボードテキスト内容

変数の特殊参照 var.left, var.x, var.length

一部の型を保持している変数は、その内部値に基づく値を参照できます。

特殊参照 説明
(矩形).left
(矩形).top
(矩形).right
(矩形).bottom
矩形の各成分値(数値)を参照 l=num:r.left
(矩形).x
(矩形).y
矩形の中央座標のx,y値(数値)を参照
x=(left+right)/2
y=(top+bottom)/2
centerx=num:r.x
(矩形).width
(矩形).height
矩形の幅,高さを参照
width=right-left
height=bottom-top
w=num:r.width
(文字列).length 文字列の長さを参照 len=num:s.length
(文字列).asnum
(文字列).asrect
数字による文字列を数値に変換したものを参照
(left top right bottom)文字列を矩形に変換したものを参照
n=num:s.asnum
r
=rect:s.asrect
(数値).asstr
(矩形)
.asstr
値を文字列に変換したものを参照 s=str:n.asstr
s
=str:r.asstr
(数値).asdate
(数値)
.astime
時刻(ms)の数値を日付文字列(yyyy/MM/dd kk:mm:ss)に変換したものを参照
時刻の差分(ms)の数値を時間文字列(hour:min:sec.ms)に変換したものを参照
s=str:@now.asdate
t=num:@now-@start
s
=str:t.astime

 

コード別リファレンス

num: 数値の設定・演算

演算子 引数1 引数2 説明
(なし) 変数, 数値, 空 (なし) 数値を指定 var=num:0
+ – * 変数, 数値 変数, 数値 加算 減算 乗算 var=num:var + 1
/ 変数, 数値 変数, 数値 除算
(引数2が0の場合は引数1の値を返す)
var=num:var / 3
% 変数, 数値 変数, 数値 剰余(引数2が0の場合は0を返す) var=num:var % 3
& | ^ 変数, 数値 変数, 数値 ビット演算AND OR XOR
(引数1,2は整数型に強制)
var=num:var & 7
~ 変数, 数値 変数, 数値 ビット演算ANDNOT
(引数1,2は整数型に強制)
var=num:var ~ 128

 

rect: 矩形の設定・演算

演算子 引数1 引数2 説明
(なし) 変数, 矩形, 空 (なし) 矩形を指定 var=rect:(0 0 100 200)
+ – * 変数, 矩形 変数, 数値, 矩形 加算 減算 乗算
※引数2が矩形の場合、成分ごとに演算。数値の場合、全ての成分に対して同じ演算を行う
var=rect:var + (10 20 10 20)
※(10,20)オフセット移動
/ 変数, 矩形 変数, 数値, 矩形 除算
※引数2が矩形の場合、成分ごとに演算。数値の場合、全ての成分に対して同じ演算を行う
(除算する値が0の場合は該当する引数1の値をそのまま返す)
var=rect:var / (2 2 0 0)
※左上座標のみ半分の値に
& 変数, 矩形 変数, 矩形 交差部分の取得(Intersect) var=rect:var & @screen
※スクリーンサイズに収まるよう切り抜き
| 変数, 矩形 変数, 矩形 両方の矩形を含む最小の矩形を取得(Union) var=rect:var | @lastmatch
※画像認識位置を含むように拡張

str: 文字列の設定・演算

演算子 引数1 引数2 説明
(なし) 変数, 数値, 矩形, 文字列, 空 (なし) 文字列を指定 var=str:”文字列”
+ 変数, 数値, 矩形, 文字列, 空 変数, 数値, 矩形, 文字列 文字列を結合 var=str:var + “\n”
※改行を追加
sub 変数, 文字列 矩形 引数1の文字列を引数2(la ln ca cn)の範囲に従って切り出しln>0の時、行オフセットlaからln行抽出(※laがマイナスの場合、抽出開始行は末尾から-la行遡った位置)cn>0の時、文字オフセットcaからcn文字抽出(※caがマイナスの場合、抽出開始位置は末尾から-ca文字遡った位置) var=str:var sub (1 2 3 4)
※文字列varの2~3行目を抽出し、その4文字目から4文字を抽出var=str:var sub (a 1 0 0)
※文字列varの(a+1)行目を抽出var=str:var sub (0 0 -5 5)
※文字列varの末尾5文字を抽出
idx 変数, 文字列 変数, 文字列 引数1内に引数2の文字列が含まれる場合、その開始位置(冒頭:0)
引数1内に引数2が含まれない場合は-1
var=str:”abcde” idx “cd”
※varには数値2が格納されるvar=str:”abcde” idx “f”
※varには数値-1が格納される
read 変数, 文字列 (空) 引数1に指定されたファイルパスの内容を読み込む(最大1MB) var=str:”/sdcard/test.txt” read
※ファイル内容をvarに格納

 

その他の機能コード

コード 引数1 引数2 説明
toast: 変数, 数値,
矩形, 文字列
(なし) 指定した内容をポップアップ表示 toast:”メッセージ”
clean: (なし) (なし) システム変数を除く全ての変数を消去 clean:

IFFRep IF

変数に格納された値を条件としてプログラムを分岐・中断します。 条件を満たした場合は成功、満たさない場合は失敗に分岐し、成否はシステム変数@lastifに記録(成功:1, 失敗:0)されます。

複数の条件を指定した場合、リストの上から順に判定されます。

リストの左側-ボタンから削除、右側+ボタンから条件を追加できます。中央の条件文を長押しすることでリスト内をドラッグ移動できます。条件を編集する場合は中央の条件文をタップします。

条件文の形式

andまたはor(not):(値1) (比較演算子) (値2)

 

複合条件 and: or: (andnot: ornot:)

複数の条件を組み合わせた判定を行うことができます。and: は直前の条件と共に満たす必要がある条件です。or: は以前の条件が満たされていない場合でも別の条件として引き続き判定する条件です。1つ目の条件はand: or: の判定は行われません。また、and: or: とも入れ子構造にはならず、or: が存在する場合、or: により区切られた条件はリスト内で色分けされます。

andnot: ornot: はそれぞれの条件の判定を逆転した結果を基に動作する and: or: です。

 

比較演算子

比較演算子 値1,2 説明
==
!=
変数, 数値, 矩形, 文字列, 空 内容が同一かどうかを判定 and:var == “文字列”and:@loop == 0
※ループ内初回を判定
> >=
< <=
変数, 数値 数値の大小を判定 and:var > 0
& 変数, 数値, 矩形 数値の場合、ビットAND演算の結果が0でなければ成功矩形の場合、2つの矩形が一部でも重なれば成功 and:var & 5and:r & @lastmatch
※画像認識結果が矩形rと重なる部分があるかどうか判定
]= 変数, 矩形, 文字列 矩形の場合、値1の範囲と値2が一致、または値1の範囲に値2の範囲が完全に含まれると成功文字列の場合、値1の文字列内に値2の文字列が含まれると成功 and:r ]= @lastmatch
※矩形r内で画像認識されたかどうか判定and:var ]= “ok”
※varに文字列okが含まれるか判定

TIPS

- 再生成功時の変数を確認する場合は、あらかじめエラー時のみ再生ログを記録オプションをOFFにして再生します。

- クリップボード内容を変更する場合は、クリップボード項目を追加して▽ボタンから変数を指定します。

page 1 of 1