TouchIDがあるiOS機器でアクセスガイドをボタンクリックせずにオンオフするオートメーションなど

iOSでゲームをするときに使用したいアクセスガイド。
しかし、アクセスガイドの設定はホームボタンやトップボタンをトリプルクリックしなければならず、解除もトリプルクリックしてパスコードを入力するか、クリックしてTouchIDで指紋を読ませる(iPad Air4やmini6ではダブルクリックしてから読ませる)必要があるなど切替が面倒だし、ボタンの寿命も気になるところです。
そこで、AssistiveTouchの設定とショートカットアプリからオートメーションを作成してボタンを押さずに済ませよう、という話です。
その性質上TouchIDがある機種限定です。以下はデレステを対象のアプリとして説明します。

・AssistiveTouchとTouchIDを組み合わせればホームボタンのタップは不要

設定画面のアクセシビリティ→タッチ→AssistiveTouchと移動し、AssitiveTouchを確認します。

f:id:mitoka_mochimono:20220124002144p:plain



AssitiveTouchをONにすると仮想ホームボタンが表示されますが、シングルタップのところが「ホーム」になっていることを確認します。
この状態でアクセスガイドをオンにしたあと、仮想ホームボタンをタップ→ホームボタンorトップボタンに指をあててTouchIDに指紋を読ませる、とするとアクセスガイドを解除できます。
これはあらかじめTouchIDのあるボタンに指をあてておいてから仮想ホームボタンをタップしてもOKです。
私は常に仮想ホームボタンが表示されているのも邪魔なので、アプリを終了させたら非表示になるようにします。

・集中モードを有効にする

iOS15では集中モードが導入され、アプリを登録しておくことでそのアプリの起動中は通知を制限したりすることができます。

f:id:mitoka_mochimono:20220124002300p:plain

f:id:mitoka_mochimono:20220124002339p:plain




「集中モード」→「ゲーム」と遷移し、自動的にオンにするのところから"スケジュールまたはオートメーションを追加"をクリックします。
"App"を選び、デレステをクリックすると追加されます。

・集中モードをトリガーにしたオートメーションを作成する

ショートカットアプリを開き、左側メニューの「オートメーション」から新規オートメーションを作成します。

f:id:mitoka_mochimono:20220124002358p:plain



下にスライドすると集中モードの項があるのでこれを選び、「オンになったとき」を選んで右上の次へを選びます。検索ウィンドウより「アクセスガイド」と入力し、これを選びます。更に「AssistiveTouch」も入力し、これも選択します。

(もし表示されない場合は、「すべてのショートカット」にて追加をクリックし、アクセスガイドやAssitiveTouchを表示するショートカットを作成してみてください。)

f:id:mitoka_mochimono:20220124002423p:plain



「実行の前に尋ねる」をオフにして完了を選んで完成です。同様に"ゲーム"集中モードがオフになったときのオートメーションとして、AssistiveTouchをオフにする("オン"の青文字をクリックすると切替が可能)オートメーションを作成します。

以上により「デレステが起動する」→「"ゲーム"集中モードが起動する」→「オートメーションが実行され、アクセスガイドが開始され仮想ホームボタンが表示される」とアクセスガイドの開始を自動化できます。
アクセスガイドの終了だけはオートメーション化できないので仮想ホームボタンとホームorトップボタンの指紋読み込みで終了させ、アプリを閉じれば「"ゲーム"集中モードが終了する」→「オートメーションが実行され、仮想ホームボタンが非表示になる」と仮想ホームボタンの非表示を自動化できます。

・iOS14では

f:id:mitoka_mochimono:20220124002508p:plain

新規オートメーション作成時に「App」の項を選び、対象のAppでデレステを選択します。以降は同様に設定すればよいのですがアクセスガイドを開始するオートメーションについては「実行の前に尋ねる」をオフにするとうまく動作しません。(仮想ホームボタンは表示されるが、アクセスガイドの開始に失敗する)
よって、「実行の前に尋ねる」はオンにする必要があります。デレステを開くと上から出てくるポップアップをタップし、「実行」をクリックすればオートメーションが実行されます。