2012-11-21(水) [長年日記]
■ 「自宅」の設定がなかなか決まらない #Taskerあるある
TaskerでAndroidの自動化を始めてやっと一週間というところだが、案の定というか、おそらくほとんどのTasker利用者がはまるであろう「自宅(またはオフィス)にいるときの設定」がなかなか決まらない。
ネットで調べても人それぞれに要求が違うせいか、奇怪なほど複雑な設定を推す人もいれば、GPSでゆるく設定している人もいて、「これ!」という決定版はない感じ。ちなみにGPSは一番確実で楽なのは確かだけど、屋内に入ると精度が出ないし、なにより電池食いなので特に小型端末では避けたい所存。WiFiもできれば必要なときしか入れたくない。
となると位置情報として頼れるのは携帯基地局しかないわけで「Cell Near」という近所の基地局を列挙して、それが見えるときだけタスクを動かすというコンテキストがあるのでそれを使う。もっとも携帯基地局は守備範囲が広いため自宅のはるか遠くで反応してしまうから、これは「Near Home」とかプロファイル名をつけてWiFiをONにするだけの仕事をさせる。
あとは別途「WiFi Near」というコンテキストで自宅のWiFiに反応するプロファイル「At Home」を作って、Bluetoothを切ったり着信音量を自宅向けにしたりする。ここまではわりといい感じで、外出先から自宅に入ると何もしなくても自宅用の設定になる。まさにTaskerの真骨頂という感じで、自分の手柄でもないのに「ふふん」と鼻高々な気分になる。
問題は「自宅を出る」というコンテキストで、上記プロファイルの「Exit Task」に逆の設定をしてやってもあまりうまくいかないんだよなぁ。別途自宅を出たときのプロファイルを作ってやらないといけないのだろうか。管理が面倒だから似たような用途のプロファイルはあんまり分割したくないんだけど。すでに2分割されてるわけだし。
Tasker攻略の道は長い(たぶん)。
奥が深い症候群…
多分 Wi-Fi Near じゃなく Wi-Fi Connect を使えば望みの動作になるんじゃないかと思います。
WiFi near でも多分望みの動作はするんですが、Exit認識するのに時間がかかる仕様です。
http://tasker.dinglisch.net/userguide/en/faqs/faq-problem.html#e
定番の手段はこんな感じかな。
1. Cell Near + Wifi Near の Profile で Wifi On と At Home profile の Activate をする
2. At Home profile の context を Wifi Connect で判別して自宅用設定をTask実行
3. At Home profile / Wifi Connect の Exit Task で自宅用設定をOff (ないし概ね自動的に元に戻ります)
4. Cell Near + Wifi Near profile の Exit Task で Wifi off と Home profile の deactivate
Wifi Near は Wifi off でも Toggle Wifi がチェックされていると自動的にOnにして実施されますが、Cell Near と組み合わされた場合は Cell Near が Active にならない限り Scan されません。
http://tasker.dinglisch.net/userguide/en/loctears.html
Cell NearとWiFi Nearの間にそんな関係があったとは!(マニュアル読めって話だよね……)
しかしながら、WiFi Connectはすでに試してみたもののけっこう不安定で、いちど何かの拍子に切れると復帰しない(Homeを離れた状況になってしまう)ので、なんか使い物にならないなーと判断したのでした。試しに今朝から教えてもらった設定にしてみてるけど、頻繁にAt Home、Near Homeともに外れてます。端末の特性によるものなのかなぁ。SONYだしな……
llamaだと、この辺はうまく動くみたいです。
http://www.wizforest.com/llama/05.html
Taskerも買ったのだけど、自分にはllamaの方がしっくり来るみたいです。
rtime-rec 使って自動で出勤記録がほぼ出来てます。
llamaって、位置情報に特化したTaskerみたいなアプリなんですねぇ。しかし位置情報以外のトリガーもよく使うからTaskerも手放せないし、かといって両方入れるのはなんか気に食わないし……。
でもちょっと余裕ができたら試してみます、ありがとう!
Wifi Connect は Wifi が切れるとProfileが外れるけど再接続すると再度有効になるので手元の環境だとさほど問題なく使えてるし、再接続するならExit TaskでSleepはさめば改善するかもしれませんが、再接続時に復帰しないとなると電波と端末の相性問題なのかなあ。切断に関してはTaskでNet>WifiSleepをNeverにしたら良くなりませんかね。電池を食っちゃうかもですが。
WiFiSleepって設定にある「スリープ時のWiFi接続」を変更するものかな? だったらここはすでに「使用する」になってるからTaskで変えても意味ないんだよね。うーん。