★イベント→システム→インテント受信(broadcast送信)
※app factoryだと作動しないみたいです※
↑すみません、普通に動きました。
そのうちapp factoryの方で解説します。
さて、今回はインテント受信です。
そもそもインテントってなんだって話ですが
簡単に言うとシステム・アプリや
アプリ内同士で
やりとりされるコードになります。
今回は受信ということなので
アプリ間のやりとりを主とする
MAIN発行のINTENTではなく
端末全体に発行されるインテント
「BROADCAST」についてお話しします。
というのも、Taskerの仕様上
LOGCATでも使わない限り
BROADCAST発行のINTENTしか受信できません。
MAINのインテントは他のアプリや
システム内「だけ」でやりとりされているわけです。
要するに、耳をそば立てても糸電話の内容を
聞き取ることは出来ないのと、
似たようなもんですね。
なので、部外者のTaskerが聞き取るには
「糸電話」でなく周りに聞こえる「メガホン」…
端末全体にIntentを送る必要があります。
要するにこれが全体放送、
つまりは「Broadcast」発行なんですね。
で、ここまでがBroadcastの雑把な説明ですが
それ(broadcast)を受け取るってことは当然
どこかでbroadcastのインテントを
送信しなきゃダメなわけです。
既存のものじゃないインテントを
作って、発行して、受信(トリガーに)する
この三つのステップがいるわけです。
さて、しかしここで困ったことが起こりました。
我々はインテントのことを何も知らないわけです。
カテゴリーは? MIMEタイプは?
データは? フラグは? EXTRAは?
パッケージは? クラスは? となります。
なんか受信できるヤツを適当に作る、といっても
その「適当」がわかりません。
なので、一番最初に重要な話をしておきますね。
INTENTとはシステムメッセージ、つまりは
「特定の文字列」でしかないんです。
なので、ぶっちゃけた話
アクションの欄に書いた文字を全く同じにして
broadcastで送信すれば受信できちゃいます。
さっき言ったカテゴリーもMIMEタイプも
データもフラグもEXTRAも、それどころか
パッケージもクラスの記載も必要ありません。
今回我々が作るのは
ただのトリガーにしかならないIntentなのですから。
…ただ、記載の際には2つ条件があります。
①最後の文字列は大文字にすること
これは簡単ですね。例えばMAIN発行のIntentを見ると
ほとんどが大文字になってると思います。
(android.intent.action.MAINの「MAIN」とか)
②最後の大文字と途中の小文字は「.」で区切ること
これも簡単ですね。んじゃ説明省きます。
以上です。なのでこれを踏まえると、
Intent受送信の記載例はこうなります。
Intent送信(タスク)
アクション 「0.E」
その他全部 記載なし
対象 「broadcast Receiver」
Intent受信(プロファイル)
アクション 「0.E」
その他全部 記載なし
はい、実はこれだけでも動きます。
強いて言えば誤作動が怖いんで
もう少し独特で長めにしておくと
いいんじゃないですかね。
(「nannka.tekitouna.MOZIRETU」とか)
例えば、macrodroidからTaskerにインテントを投げるなら、このように。
───────────────────────
Macrodroid アクション インテント送信側
ターゲット→broadcast
アクション→nanka.tekitouna.MOJI
パッケージ→net.dinglisch.android.taskerm
(taskerで受け取るのでtaskerを指定する)
フラグ→なし
───────────────
Tasker インテント受信側
プロファイル:
インテントを受信した [ アクション:nanka.tekitouna.MOJI カテゴリー:None カテゴリー:None スキーム:* MIME タイプ:* ]
開始 タスク: う
A1: 変数を設定 / Variable Set [
名前: %Aaa
これに: 成功
構造を出力 (JSONなど): オン ]
───────────────
とですね。まあ、とにかくこれで
keymapperからIntent送信
→Taskerやmacrodroidのタスク(マクロ)
作動なんてこともできるようになるんで
一気に自由度が跳ね上がりますね。
(というのも、実はkeymapperだと
「タスクのショートカット」(tasker)や
「マクロのショートカット」(macrodroid)が
うまく作動しないんですよ…)
(だから、intent経由でタスクを
作動させる必要があったんですね。)
新規登録で充実の読書を
- マイページ
- 読書の状況から作品を自動で分類して簡単に管理できる
- 小説の未読話数がひと目でわかり前回の続きから読める
- フォローしたユーザーの活動を追える
- 通知
- 小説の更新や作者の新作の情報を受け取れる
- 閲覧履歴
- 以前読んだ小説が一覧で見つけやすい
アカウントをお持ちの方はログイン
ビューワー設定
文字サイズ
背景色
フォント
組み方向
機能をオンにすると、画面の下部をタップする度に自動的にスクロールして読み進められます。
応援すると応援コメントも書けます