集中モードと「ファイル」アプリを利用して、集中モード時に特定のアプリを開くとすぐ閉じるオートメーションを組んでみます.
※価格は記事執筆時のものです. 現在の価格はApp Storeから確認ください.
レビュー時のiOSバージョン : iOS15.1
スポンサーリンク
1.集中モードを用意する
設定アプリの「集中モード」から、今回の目的に使う集中モードを用意します.
デフォルトの「おやすみモード」でももちろん構いません.
通知の許可や各種オプションは好みで設定しておきます.
2.集中モードの状態を記録するテキストを用意する
現時点で集中モードをトリガにする機能はありません.
なので現在の集中モードの状態(オンオフ)を記録したテキストファイルを「ファイル」アプリに保存してこれを読み込むことで代わりにします.
今回はオンを1、オフを0としています、つまりここで用意するテキストファイルの中身は0か1しか書かれていません.
新規作成するにしてもコピペするにしても、テキストファイルはこのいずれかの状態にしておきます.
3.集中モードの状態を記録するオートメーションを組む
次はショートカットアプリのオートメーションと上で用意したテキストファイルを使って、集中モードのオンオフに従ってテキストファイルを上書きするオートメーションを作ります.
トリガーは「集中モード」の項目にあるものから今回使用するものを選びます.
「いつ」については「オンになったとき」「オフになったとき」の両方にチェックを入れます.
アクションの中身は画像の通りです.
予め「ファイル」アプリに保存したテキストファイルを「フォルダからファイルを取得」で読み込みます.
読み込んだ結果は0か1であり、これと「計算式」アクションを使って
fabs(ファイル-1)
を計算します.
fabsは絶対値を返す関数です、なのでマジック変数「ファイル」の値が0ならfabs(0-1)=fabs(-1)=1、逆に1ならfbas(1-1)=fabs(0)=0と、出力が反転するためオンオフが逆になります.
この結果を同じファイルパスに上書き保存すれば完了です.
fabs(ファイル-1)でなく1-ファイルの方が簡単でしたね
本来ならこれで完了、あとは「実行の前に尋ねる」をオフにして終わりなんですが、今回「ファイル」アプリのファイルを書き込みしているため、iOS15の仕様でファイルへのアクセス許可が必要になります.
「アクション」の右下にある再生ボタンをタップしてアクセス許可を行います.
これをしないとオートメーションが働きません.
一回でいいので実行しておきましょう.
4.対象アプリを起動したときのオートメーションを組む
次は対象アプリを起動したときのオートメーションです.
集中モードのオンオフの時と違い、こちらは「開いている」だけチェックが入った状態にします.
「アクション」の中身は画像のとおりです.
「フォルダからファイルを取得」で集中モードオンオフを記録しているテキストファイルを読み込み、結果が1であれば「ホーム画面へ移動」のアクションを入れてホーム画面に戻るようにします.
このif文に入れたマジック変数「ファイル」の種類は「数字」にしておきます.
またこちらもファイルへのアクセス許可が必要となるためこのアクション内でレシピを一回実行しておきます.
これでオートメーションはすべて完了です.
あとは1→オン、0→オフとなるようにテキストファイルを調整したうえで使用します.
間違えていると処理が逆になってしまいます.
〆
集中モードのオンオフをトリガにできるなら「ファイル」アプリを使う必要はないのですが仕方ありません.
逆に言えばトリガにできないものはこのやり方で代用ができます.
またこのやり方だと対象の集中モードオフ時、そのアプリを開くとオートメーションの通知がやってきます(オンの場合は集中モード側で通知のオンオフを制御できるため非表示が可能).
その分だけ通知が積み重なるわけではないのですが邪魔に思う人は必ずいるでしょう.