たまにはAndroidのアプリでも紹介しようという事で「Tasker」を選んでみました。
何をしてくれるアプリかというと、Andoridでの様々な操作を自動化してくれます。
例えば、家にいるならWifiで接続して外に出たなら3Gに切り替えるとか、
マップアプリを開いたときにGPSをONにしてマップアプリを閉じたらGPSをOFF等。
ぱっと検索した印象だと少しでもバッテリーを長持ちさせるっていう使い方をしている人も多い様です。
ちなみにこちらの「Tasker App Factory」をインストールしておくと作ったタスクをAPKにして配布出来ます。
TASKだけになりますけど、便利ですね。
で、本題。
特定のフォルダにあるファイルを全て削除するタスクを作る
スクリーンショットが溜まる機会が多くて、毎度ギャラリーから全選択して消すっていう作業が面倒なんで自動化という流れ。
色々と汎用性もあるだろうし。
流れはこちら↓
A1: Variable Set [ Name:%count To:1 Do Maths:On Append:Off ]
A2: List Files [ Dir:Pictures/Screenshots Match: Include Hidden Files:Off Variable:%file ]
A3: For [ Variable:%count Items:1:%file(#) ]
A4: If [ %file(1) Is Set ]
A5: Delete File [ File:%file(%count) Shred Level:0 Use Root:Off ]
A6: End If
A7: End For
A8: Flash [ Text:処理完了(o´∀`o) Long:Off ]
タスク部分はこれが全て。
アプリ上で見ると↓このような感じです。
では順を追って見ていきましょう。
- 最初に変数である「%count」を作ります。(Do MathsがONになってますが、特に必要ないです。)
- ここで対象となるフォルダを指定して、変数には「%file」を付けました。(変数名は任意ですのでお好きに。)
- 指定したフォルダに入っていたファイルを対象に処理するのでFor文を使います。
- ここでフォルダ内にファイルが一つも無いとエラーがでて気分悪いので「%file(1)」、つまりは一番最初の変数に値が入っていればという条件を付けます。
上の条件がクリアされていれば最低でも一つはファイルがあるので後は削除処理を行います。- IF文の終わり。
- For文の終わり。
- 何もないと寂しかったので完了の通知を出してみることに。(いらない場合は外してOK)
と、このような感じで作成してテスト動作確認して下さい。
あとは、このタスクを何かしらの条件で動く様にしてしまえばOKです。
自分はとあるアプリケーションを実行&終了したらタスクを行うように設定しています。
以上、フォルダ内のファイルを消す動作についてでした。
色々な条件を付けることによってもっと細かい動作をさせることも可能なので色々やってみると面白いかと思います。
※自分の様にスクリーンショットを消そうとした場合・・・ファイル自体は消えるけど作成されたサムネイル情報は残ります。
なので、そこも処理する様にしないと駄目かもしれませんね・・・・単純に気になってしょうが無い。