ストリーミングはほとんどのブラウザと
Developerアプリで視聴できます。
-
アクセシブルなシングルAppモード体験の実現
シングルAppモードのAppを使用するユーザに対して、優れた操作性やアクセシビリティを提供する方法をご確認ください。UIAccessibilityやAutomatic Assessment Configurationフレームワークを使用して、必要に応じて制限を適用し、設定Appを開かなくてもアクセシビリティ機能を有効化する方法を紹介します。また、Appにカスタム制限を追加して、iOSのアクセスガイド機能を適切にサポートする方法についても解説します。なお、このときAppは一時的にシングルAppモードになります。
リソース
関連ビデオ
WWDC23
WWDC22
-
ダウンロード
(音楽) こんにちは Drew Haasです Accessibilityチームの エンジニアです 今日はシングルAppモードに ついてお話しします シングルAppモードは iOSとiPadOSのデバイスで 行動を限定することで ユーザーに素晴らしい体験を 提供することができます 名前通り デバイスを 1つのAppにロックします モードによって システムから起動するか Appから起動します 制限されるタイミングを コントロールできる 素晴らしい機能です また このモードに加え オートロックのような 他の制限も追加できます
アクセシビリティの ユースケースを考えましょう アクセシビリティ機能に 依存している人たちが デバイスが制限されていても それらを使用できるように せねばなりません Appのインクルーシブ性を これで保証できます シングルAppモードを 使用する例を見てみましょう レストランやイベントで 客が注文に使うAppを 開発している場合や 医療施設などで 患者が情報の記入に 医療スタッフ間で 共有されるデバイスを 使用する場合などです また教室でのテストに 使用するAppもあります これらはいずれも シングルAppモードを使用して ユーザーが集中できる環境を 作り出します またコードを書かなくても シングルAppモードを 利用できるのを ご存知でしたか? アクセスガイドは どのAppでも シングルAppモードにできる アクセシビリティ機能です まず アクセスガイド について触れ このモード中に Appを使用した際 考慮すべき点について お話しします 次にAPIとフレームワークを 利用してApp内から プログラムでモードを 稼働させる方法を見てみます 最後にシングルAppモード中に 使用するための アクセシビリティAPIについて お話しします このAPIでアクセシビリティ 機能をオンオフし シームレスでアクセシブル な体験を提供できます まずアクセスガイドです 最初にアクセシビリティ設定で オンされているのを確認し ロックしたいAppを開きます サイドボタンを3回押して ショートカットを行います 制限を設定できるアクセスガイド ワークスペースが開きます Startで開始します
これで制限状態になりました 一番前面にあるAppにロックされ メニューで設定した制限が 適応されます 認知障害の方に 役に立つ経験を提供できます アクセスガイドを出るには 再びショートカットを 行うだけです オプションメニューでは タッチ操作や画面の動き キーボード 音量ボタンや サイドボタンなど ハードウェアも 制限することができます このように制御された環境は 認知障害の方に 非常に役に立ちますが その他 大勢の方々も 利用しています アクセシビリティユーザーや 小さい子供を持つ親など デバイスを簡単に制限できる 恩恵が受けられます ここでみなさんの出番です! UIAccessibility APIで アクセスガイド中 みなさんのAppでの体験を カスタマイズできます 認知障害の方が 理解しずらかったり 圧倒されて しまった時のための 制限を設定できます その場合のデザインについて 少しお話しします これらは常に従うべき 原理ですが アクセスガイド中は 特に注意しましょう まずエラーを許すこと アカウントの閉鎖や変更 決済の変更など重要で 取り消せない行動の前に ユーザーに警告して エラーを防ぎましょう App内でタイミングに 頼ることは できるだけ避けるべきです 誰も同じ速さで 情報を処理しません 時間の決まったアラートや 自動アクションは Appを使いにくくします そして決済をする前に ユーザーが確認する機会を 必ず与えてください ワンタップ購入を 含むAppもそうです これらを考慮したAppは アクセシビリティユーザーの 独立心を促進します 例をお見せしましょう Reading Observatoryという Appを開発しており これは1週間にどれだけ 読書したかがわかるAppです 正面には進捗状況と 2つのボタンがあり Account Settingsと Continue Readingボタンです アクセスガイドが稼働中 Account Settingsが ロックされる制限を 足しました Account Settingsで 間違った設定をしないよう この制限があることで Appでユニークな体験が できるようになります また これによって誰かが このAppの一番の目的である 読書から逸れてしまう時間の 減少に役立ちます このためには まず AppDelegateを UIGuidedAccessRestriction Delegateプロトコルに従わせ identifiersを提供して アクセスガイドに それぞれの制限を知らせます ここでは1つだけです また 更なる詳細を 提供する必要があれば ユーザー向けのtitleと オプションのdescriptionを与え オプションメニューに これらの文字列が現れます 最後に guidedAccessRestriction (withIdentifier:didChange) で制限がトグルされた時に コールバックを受け取ります ここでAppが ボタンを無効にしたり 先ほどご紹介した デザイン原理などを 取り入れたりして これらの制限を適応する ロジックを行います 稼働状況の確認は UIAccessibilityの guidedAccessRestriction State(forIdentifier:)です システムが提供する制限と Appによる制限で アクセスガイドは 非常に設定便利で 素晴らしい アクセシビリティ機能です アクセシビリティ設定内に アクセスガイドがあります プログラムを通じで デバイスを制限する シングルAppモードもあります アクセスガイドに 似ていますが 違いはプログラムを通して 制限することです ですので設定や開始 カスタマイズに関して トピックが盛りだくさんです 先ほどのシナリオを 覚えていますか? iPadがレストランの キオスクとして使われたり 医療施設や 学校でのテストなど シングルAppモードが いずれも解決策になります それぞれニーズが 少し違っても 1つのAppにロックすると 役に立ちます ホームにスワイプするのを 防いだり 設定を変えたりSafariでの ブラウズも防ぎます それぞれ必要な制限において どのモードがふさわしいか 見てみましょう
最初のモードは最も基本で 配備が簡単で 単にシングルAppモード と呼ばれています これはずっと1つのAppしか 使用しないときに 最適のモードです 再起動しても Appにロックしたままで 維持に何の手作業も 必要ありません 必要最低限アプローチに 最適です しかし注意点があります デバイスは管理が必要で 管理ツールは数多くの デバイスを同時に シングルAppモードに ロックでき デバイスがたくさんある場合 拡張性のある解決策です Apple Configuratorは シングルAppモードなど いろんな形でデバイスを 管理することができます デバイスを選びAdvancedから Start Single App Modeを選び
最後にAppを選びます すると自動的にAppが開き 前面に出てロックされます
このモードからは出られず 管理ソフトでシングルApp モードを終了しない限り 再起動しても このAppにロックします 自律的シングルAppモードは しばしば制限状態を 出入りするときに ふさわしいモードです 例えば医療施設で 新しい患者がiPadに 必要情報を入力し スタッフに返す時などです つまり制限間に 人手の介入があります これはAppが自動的に 一つのAPIメソッドコールで 出入りを可能にします もちろん これも デバイスの管理が必要で このAPIを使いたいAppは デバイスの設定プロファイルで 許可されていなければならず その特権がない場合は ロックされません これはUIAccessibilityの requestGuidedAccessSession (enabled:)です 見覚えありますか? このAPIはアクセスガイドの ルーツを利用しています コードでプログラムを通して この機能に 出入りします なかなかでしょ? アクセスガイドは他の シングルAppモードの 基盤だからなのです 知らなかったのでは? ではさらに掘り下げて 見てみます 用意ができた時に呼び出す 出入りのためのメソッドが それぞれあります 制限状態に入った時 新患者の登録シートを 開いたり 出た時にその情報を簿記する など違った行動を取ります もちろん念のために completion handlerの結果を 知る必要があります その場合 ユーザーに アラートを与えて 再び試せるよう 体験の継続を阻止すべきです 自律的シングルAppモード が常にオンになっているか isGuidedAccessEnabled で確認します またguidedAccessStatus DidChangeNotificationで さらにコードが必要か 確認します このAPIを使いたいAppは 適切な管理が必要です これには許可済みAppとして AppのバンドルIDを 許可リストに加える 必要もあります 最後は評価モードです これはテスト中に 特定の機能を制限し 不正利益を防ぐのに 最適のモードです 自動修正やスペルチェック シングルAppモードロックで 他のノートやリソースに アクセスできなくなります Automatic Assessment Configurationフレームワークで 最近フレームワークはiOSと macOSで統一されました 他のモードと違い デバイスの管理は不要ですが assessment entitlementを 申し込まねばなりません これに関しては デベロッパの資料を ご参照ください 僕の同僚のJoshが コードの例などたくさん使い Automatic Assessment Configurationフレームワークを 説明している セッションがあります ぜひご覧ください どのモードがふさわしいか わかったら ここで考えてみてください アシスト技術を使用する人々も みなさんのAppを使用します さらに使いやすくできるかも しれません iPadをレストランの キオスクとして使う例で 目の見えないお客様が 来たとしましょう iPadがシングルAppモードに ロックされていたら問題です 設定を開いて アクセシビリティに行き VoiceOverをオンには できません どうすればいいでしょうか?
Apple Configuratorと その他の管理ソフトが シングルAppモードの設定の お手伝いをします 多くのアクセシビリティ機能が 常時作動可能で ボタン3回のアクセシビリティ ショートカットも VoiceOverやズーム 反転カラーや Assistive Touchなど 機能に素早くアクセス できるよう設定できます これらの機能が常にオン またはショートカットに 指定されれば Appを使用する時に これらの技術を 利用してもらえるのです 設定は簡単ですので この機会をお見逃しなく
しかしシングルAppモードに 入る前に設定が必要です シングルAppモードの 途中なら? UIAccessibilityのAPIで コードを使って機能を トグルできます ショートカットの代わりに なって機能をトグルでき キオスクのケース内で ボタンが使用できない場合 これが役に立ちます このAPIはアクセシビリティ 機能を簡単にオフでき ハウスキーピングとリセット をユーザー間に行えます configureForGuidedAccessを UIAccessibilityに呼び出し アクセシビリティ機能を パスインし enabledを指定します ズームとVoiceOver 反転カラー AssistiveTouchと グレースケールに対応します アクセスガイドに カスタム制限があるにしろ シングルAppモードを基に Appを作るにしろ アクセシブルに することは大切です 制限を間違えば逆に 使用が困難になりますので 障害を持つ方の経験を 常に考慮してみてください アクセシビリティを可能にする APIもご紹介しました アクセシブルなAppを 作ってください!
-
-
特定のトピックをお探しの場合は、上にトピックを入力すると、関連するトピックにすばやく移動できます。
クエリの送信中にエラーが発生しました。インターネット接続を確認して、もう一度お試しください。