全然参考にならないAutomateのflow shortcutの構文メモ

自分用メモ。TaskerのShortcutで作成された記述内容から。Ver 1.25.1では以下の内容がショートカット内に記載されていた。

 

 

content://com.llamalab.automate.provider/flows/9/statements/1#Intent;action=com.llamalab.automate.intent.action.START_FLOW;type=vnd.android.cursor.item/vnd.com.llamalab.automate.provider.flow_statement;launchFlags=0x18000000;package=com.llamalab.automate;end

 

 

分解すると、

 

  1. content://com.llamalab.automate.provider/flows/9/statements/1
  2. #Intent;
  3. action=com.llamalab.automate.intent.action.START_FLOW;
  4. type=vnd.android.cursor.item/vnd.com.llamalab.automate.provider.flow_statement;
  5. launchFlags=0x18000000;
  6. package=com.llamalab.automate;
  7. end

 

1.が各フローのスタート位置に記載されているFlow URI。この例では9の1ってフローが対象とされている。9ってのは多分、9番目に作成されたフローって意味で作成順か何かで連番。statement/1はフロー内での1番目のBeginning flowブロックて意味だと思われる。この情報はBeginning Flowブロック内にflow URIとして明示されている。

 

2.はintentの発行を意味する。

3.はintent action。このintentを受け取ることがAutomateは出来るらしい。

4.はMIME Type の記述。

5.はフラグらしいんだが、この0x18000000が何のフラグかは分からなかった。あんまり調べてはいない。

6.はintentを発行する先のパッケージ。明示的intentって奴か。

7.はintent終了を意味する。

 

 

 

何が言いたいか?

1.を変更すれば任意のAutomate flowの呼び出しが可能。やってることはBroadcast intentを発行してAutomateが受けているだけの話。

Taskerで次の記述をすれば問題なく起動できる。

 

 

Action

com.llamalab.automate.intent.action.START_FLOW

 

DATA

content://com.llamalab.automate.provider/flows/9/statements/1

 

MIME type

vnd.android.cursor.item/vnd.com.llamalab.automate.provider.flow_statement

※無くても多分動く。

 

EXTRA

launchFlags=0x18000000

※EXTRAのフラグは無くても問題ないはず。

 

PACKAGE

com.llamalab.automate

 

 

もし、flow URIを直接打ち込むのが苦痛でないならば

Ver. 1.26.0においても任意のflow shortcutを作成できる。ただし、Taskerにて記録したあとに、そのTaskをショートカット登録するという三度手間が要る。

 

とは言え、いざとなればTaskerでパッケージ化して本来ショートカット登録出来ないアプリ(Magic Gesture、あなたなことよ!)でフロー呼び出しするなんておもろいことが出来るかもしれない。

 

 

感想

そこまでするならTaskerで実装したら良くないか????