AndroidアプリのTaskerをもっと使いたい!(他のアプリにデータを送るインテント機能の利用)
Category:Lifehack
AndroidアプリのTaskerを使っています。
便利そうな反面、ちょっととっつきにくいのが難点なアプリですが、
ちょっとずつ使えるようになって来ました。
「ボタンひとつでtwitterで定型文を送りたい。」
そんなことがやりたいと思っていました。
はじめは、アプリを作らなきゃいけないかなと思っていました。
Taskerを使って近いものが実現できたので、
ちょっと長い記事になってしまいましたが、手順などをシェアしたいと思います。
Taskerで作るタスクの概要
こんなタスクを作りたいと思います。図ではちょっとわかりにくいかもしれませんが、流れとして、
1.TWEET_TEXTという変数を作る。
2.朝4時以降なら、TWEET_TEXTを「おはようございます。」にする
3.昼12時以降なら、「昼だ!」にする
4.夕方17時30分以降なら、「帰宅なう」にする
5.夜22時30分以降なら、「おやすみなさい」にする
6.バイブレーション鳴らす(不要)
7.Twitterアプリに、TWEET_TEXTの中身を送る
といった流れです。
簡単に言うと、時間によってつぶやく文字を変えてTwitterアプリに送るタスクです。
ここではこのタスクを作る例を紹介します。
タスクの作り方
変数を作る
まず、変数TWEET_TEXTを作ります。はじめに、Taskのタブで中央下の「+」のボタンを押し、出てきたダイアログで、
NewTaskのダイアログでタスク名を付けます。例:「挨拶Tweet」
「TaskEdit」のダイアログになると思いますので、左下の「+」ボタンを押します。
(ここから、タスクの流れを1つずつ作っていくことになります。)
すると、Select Action Categoryというダイアログがでてきて、
なんだかたくさん選べるので、ここでめげずに、「Variable」を選びます。
するとまたたくさん出てきてまた諦めそうになりますが、
「Variable Set」を選びます。
ダイアログが出てきて、設定ができます。
ここで、
Nameに%TWEET_TEXT
Toを空白(もしくはスペース)
を入力します。(他の項目は、わからないので無視)
入力後、左下のチェックマークを押すと、完了です。
これで変数設定ができ、タスクの1つめの項目ができました。
条件分岐(if)を作る
またTaskEditの画面で、左下の「+」ボタンを押します。つぎは、カテゴリの中から、「Task」を選び、その後「If」を選びます。
「If」では条件を決めますが、
ここでは現在時刻から判断してテキスト内容を変更したいので、
変数の%TIMEを使って条件判定します。
朝4時以降であれば、次のように入力します
%TIMEには現在時刻が自動的に入っています。
色々試してみましたが、
例えば朝4時であれば、4
夕方5時30分であれば、17.5
というような数字になっているようです。
また、%TIMEのような特殊な変数は色々用意してあり、
オレンジのタグのようなマークのボタンを押すと、リストがずらーっと出てきて、
選ぶことで入力ができます。
ただ、把握出来ないくらい膨大な量の変数が出てくるので、ちょっと困りますが。。
また、条件の「>」ですが、はじめは「~」となっておりこの部分を押すと、
またリストで選ぶことができます。
「Math:Greater Than」を選ぶと、「>」になってくれます。
これで、条件分岐の入力が完了です。
条件文の中身を作る
条件の中に入ったときの処理を作ります。ここではまたVariable Setを使い、%TWEET_TEXTに「おはようございます!」と入力します。
その後、またIfで「%TIME>11.5」とし、
お昼の時間の動作「%TWEET_TEXT=昼だ!」、
If(%TIME>17.5)で「%TWEET_TEXT=帰宅なう」、
If(%TIME>22.5)で「%TWEET_TEXT=おやすみなさい」、
と作っていきます。
それから大切なのが、Ifを作った分だけ、条件処理の終わりに「End If」を付けなくてはいけません。
このあたりは実にプログラミングっぽいので、慣れている人は感覚的にわかりますが、
そうでなければ、なかなか難しいかもしれません。
Twitterアプリに文字を送る
ここがどうするか難しかったところですが、Androidではアプリ間でデータを共有する、インテントという機能があります。
例えば、画像を見ている時に、共有メニューから直接メールに添付としてメーラーを起動できますが、
そういった機能のことです。
Taskerでもこのインテント(Intent)機能を使って他のアプリにデータを送ることができます。
今まで通り「+」ボタンでタスク作成から、
カテゴリの「Misc」の「Send Intent」を選びます。
またずらーっと設定項目がいっぱい出てきますが、諦めてはいけません。
設定する項目は、
Action : android.intent.action.SEND
Mime Type : text/plain
Extra : android.intent.extra.TEXT;%TWEET_TEXT
Package : com.twitter.android
Class : com.twitter.android.PostActivity
Target : Activity
です。
Extraが2つありますが、1番目のExtraのみの設定でOKです。
また、はじめはDataに%TWEET_TEXTを入れていましたが、どうもうまくいかず、
Extraに入れなきゃいけないようです。
(この辺りはまだよくわかっていないだけかもしれません)
チェックマークを押して、タスク設定完了です。
ほとんどおまじないみたいなものですが、
Androidのアプリ作っている人にとってはわかる内容かもしれません。
以上で、タスクの作成が完了です。
タスクにアイコンをつける
TaskEditの画面で、右下にボタンが2つあるのがわかります。
左はなんだか設定が出来そうなボタンと、
右にもう一つよくわからないボタンがあります。
押すと、「ImageSelect」と出てきて、「Application Icon」とか「Built-In Icon」とか、
なんだかアイコン画像が選べるようです。
ここでは、「Application Icon」を選んでみてください。
しばらくすると、インストールされているアプリのリストが出てきますので、
Twitterアプリを選んで、アイコンを拝借してしまいましょう。
これでアイコンの設定が完了です。
ウィジェット機能で、ホーム画面にタスク実行のショートカットを作る
ホーム画面でウィジェット作成します。ウィジェットのリストの中に、Taskerのアイコンで「Task」というものがあるので、選択
作ってあるタスクのリストが出てくるので、作った「挨拶tweet」を選ぶと、
ホーム上にタスク名でアイコンが出てきます。
アイコンは先ほど設定した画像です。(Twitterから拝借しました)
実行!
実行は、ホーム画面のアイコンを押すだけです。押すと、Twitterの投稿画面が起動し、時間によって文章の違う内容が入力されているので、
そのまま、「ツイート」ボタンでつぶやきます。
アイコン押して、ボタン押してと、はじめやりたかったことよりもちょっと手間ですが、
今思うと、時には定型文に追加でテキスト入力したりするので、これはこれでありかなと思っています。
いろいろ遊べそうなTaskerですが、
なかなか思うようにはいかなかったりで難しい。
もっと情報が増えてくると良いなーと思います。
関連記事
はやし@color_chipsです。 Android版のToodledoがいつの間にか出ていたので、運用しています。 ※「プライベートな」と書いたのは、仕事のタスクはまた別で管理しているから。 Toodledoについては、こんな記事も書きました。 「はまラボ」さんに「Evernote×Toodledo」のテーマで寄稿させて頂きました!:Web/Blog - color pencilsE...
▶read More
はやし@color_chipsです。 nexus7でブログの下書きなどもしています。 Android端末でテキスト書いているときに気になるのが、ソフトウェアキーボード。 色々種類があると思いますが、今のところ僕はGoogle日本語入力がオススメです。 オススメなポイント 多くの設定が可能 日本語変換が優秀 記号入力を履歴から呼び出せる ...
▶read More
いつもお医者さんで処方されるお薬について知ろう
Category:Lifehack
はやし@color_chipsです。 最近は減りましたが、割と体調を崩しやすい体質です。家の目の前が病院だったり、治療する環境には恵まれているので助かっています。 病院で診察してもらって、薬を処方されますよね。 当然お医者さんは症状に効くお薬をだしてくれますが、ただ何も知らず飲むのと、知って飲むのとでは大きく違う気がします。 そこで今回は、いつも処方されるお薬。よく知ってい...
▶read More
はやし@color_chipsです。 仕事でpdfファイルを扱うことが多い人、結構いると思います。メールで受け取ったり、自分で作ったり。最近は電子マニュアル化され、電気機器に付属されたCD-ROMに入っていたり。 たいていどんな環境でも見れるので重宝していますが、自分で編集できないのがもどかしい時ってありませんか? (もちろんこの『簡単に編集できない』というのがいいところでもありま...
▶read More