いまの英語力を整理フィリピン(バギオ)留学決めました。日本語訳したものです。機械翻訳を行った後、誤訳が見受けられた際には修正を加えています。#起動時のエクスペリエンスは、ユーザーがアプリに対して抱く印象を大きく左右します。使用しているデバイスや、最後にアプリを開いてからの経過時間にかかわらず、起動時のエクスペリエンスは迅速かつシームレスでなければなりません。以下のガイドラインを参考にして、快適なローンチエクスペリエンスを設計してください。開発者向けのガイダンスについては、「アプリの起動に対応する」を参照してください。システムは、アプリが起動した瞬間に起動画面を表示し、すぐにアプリの最初の画面に切り替えます。起動画面の役割は、アプリが高速で応答性が高いという印象を人々に与えつつ、初期コンテンツのロードを可能にすることです。起動画面からシームレスに移行するためには、最初のアプリ画面に似たプレーンな画面をデザインし、それ自体が注目されないようにします。詳しくは、「起動画面」を参照してください。アプリが縦向きと横向きの両方をサポートしている場合は、デバイスの現在の向きを使って起動する必要があります。つの方向でしか動作しない場合は、常にその方向で起動し、必要に応じてデバイスを回転させるようにします。しないといけない理由がない限り、ランドスケープモードのアプリは、デバイスが左右どちらに回転したかに関わらず、正しい向きで起動しなければなりません。詳しくは、「適応性とレイアウト」を参照してください。人々はアプリがただ動くことを期待しています。大多数のユーザーのためにアプリを設計し、異なる設定を必要とする少数のユーザーには、ニーズに合わせて設定を調整してもらいます。同期サービスから設定情報を得るようにしましょう。設定情報の提供を求めなければならない場合は、アプリを最初に開いたときに情報の提供を促し、後からアプリの設定で情報を変更できるようにします。契約書と免責事項を表示させます。アプリ内にこれらの項目を含める必要がある場合は、ユーザーエクスペリエンスを妨げないようにバランスよく統合してください。アプリの中で、以前の場所にたどり着くために手順を辿らせないようにしましょう。アプリの状態を保存・復元して、中断した場所から続けられるようにしましょう。再起動には時間がかかり、アプリの信頼性が低く、使いにくいと思われてしまいます。アプリにメモリやその他の問題があり、システムが起動していないと実行できない場合は、その問題に対処する必要があります。発売後すぐに評価を求めたり、ユーザーがアプリを使用している間に頻繁に評価を求めたりすることは、迷惑であり、有益なフィードバックの数が減る可能性があります。熟慮されたフィードバックを促すために、評価を求める前に、アプリについて意見を形成する時間を与えましょう。評価を求めるプロンプトを拒否する方法を常に提供し、アプリの評価を強制することはありません。#オンボーディングでは、新しいユーザーを迎え入れたり、戻ってきたユーザーと再会したりすることができます。素早く、楽しく、教育的なオプションのオンボーディング体験は、ユーザーの邪魔になることなく、アプリを最大限に活用するのに役立ちます。設定するだけではなく、アプリを楽しんでもらうためのオンボーディングを提供します。人々は、アプリについて詳しく知る機会を与えられたことに感謝しますが、同時にアプリが動作することも期待しています。オンボーディングエクスペリエンスに、セットアップやライセンスの詳細を含めないようにしましょう。詳細は、「起動」を参照してください。システムが起動画面をアプリの初期画面に置き換えたら、すぐにアプリを楽しんでもらいます。チュートリアルやイントロを提供する必要がある場合は、それらをスキップする方法を提供し、再訪ユーザーには自動的に表示しないようにします。ユーザーが困ったときには、積極的に助けを求めましょう。ゲームでは、一時停止したときやキャラクターが進んでいないときに、役立つヒントをさりげなく表示することができます。最初のチュートリアルで何かを見逃してしまった場合に備えて、チュートリアルを何度も再生できるようにしておきましょう。初心者のためにガイダンスを提供するのは良いことですが、教育は優れたアプリデザインの代わりにはなりません。何よりもまず、アプリを直感的に操作できるようにしましょう。あまりにも多くのガイダンスが必要な場合は、アプリのデザインを見直してください。説明書を読むよりも、実際にやってみて学ぶ方がずっと楽しく、効果的です。アニメーションやインタラクティブ機能を使って、徐々に、そして文脈に沿って教えていきましょう。インタラクティブに見える静的なスクリーンショットの表示は避けましょう。#コンテンツの読み込み中に、空白や静止した画面が表示されると、アプリがフリーズしているように見え、混乱や不満を招き、ユーザーがアプリから離れてしまう可能性があります。最低限、アクティビティスピナーを表示して、何かが起こっていることを伝えます。どのくらい待たされるかがわかるように、進行状況を明示するとよいでしょう。期待していた画面が表示される前に、コンテンツの読み込みを待たせるのはやめましょう。画面を表示し、コンテンツがまだ提供されていないことを示すために、プレースホルダーのテキスト、グラフィック、またはアニメーションを使用します。コンテンツが読み込まれたら、これらのプレースホルダー要素を交換します。可能な限り、アニメーションの再生中や、ユーザーがレベルやメニューをナビゲートしている間などに、今後のコンテンツをバックグラウンドでプリロードします。ゲームプレイのヒントを表示したり、楽しいビデオシーケンスや面白いプレースホルダグラフィックスを表示したりすることを検討してください。標準的な進行状況の表示は、通常は問題ありませんが、時に文脈に合わないと感じることがあります。アプリやゲームのスタイルに合わせてアニメーションやエレメントをカスタマイズすることで、より没入感のある体験をデザインすることができます。その他のガイダンスについては、「進行状況インジケータ」を参照してください。#モダリティとは、ユーザーの現在のコンテキストとは別の一時的なモードでコンテンツを表示し、終了するためには明示的なアクションを必要とするデザイン手法です。コンテンツをモーダルに提示することで、以下のことが可能になります。自己完結的なタスクや密接に関連した選択肢に集中できるようにする重要な情報を確実に受け取り、必要に応じて行動することができる。アプリの特定の状況で使用するアラート、アクティビティビュー(またはシェアシート)、アクションシートが用意されています。以降では以下の表示スタイルがサポートされています。#シートのプレゼンテーションスタイルは、コンテンツを部分的に覆うカードとして表示され、覆われていない部分はすべて暗くなり、コンテンツとのインタラクションができなくなります。親ビューまたは前のカードの上端が現在のカードの背後に表示され、カードを開いたときに中断したタスクを思い出しやすくなります。カードを閉じるには、以下の方法があります。画面上部から下に向かってスワイプするカードの内容が一番上までスクロールしているときに、画面上の任意の場所から下にスワイプするボタンをタップするシートは、複雑なタスクを実現しない非没入型のモーダルコンテンツに使用します。#フルスクリーンの表示スタイルは、画面全体を覆います。前のビューが完全に覆われるので、視覚的な混乱を最小限に抑えることができます。人はボタンをタップしてフルスクリーンモーダルビューを解除します。フルスクリーンモーダルビューを使用するのは、ビデオ、写真、カメラビューなどの没入型コンテンツや、ドキュメントのマークアップや写真の編集など、フルスクリーン表示が有効な複雑なタスクの場合です。現在のコンテキストモーダルビュースタイルを使用して、モーダルコンテンツを分割ビューペインやポップオーバーなどのフルスクリーンではないビューに表示している場合は、コンパクトな環境でモーダルコンテンツを表示するときは、シートを使用するように変更する必要があります。モーダルな体験は、人々の注意を現在のタスクとは異なる選択やタスクの実行に向けさせることが重要な場合にのみ作成します。モーダルな体験は、人々を現在の状況から離脱させ、解除するためのアクションを必要とするため、明確なメリットがある場合にのみ使用することが重要です。通常、アラートが表示されるのは、何か問題が発生したときです。アラートはエクスペリエンスを中断し、解除するためにはタップが必要なので、人々がその中断が正当なものであると感じることが重要です。詳しくは、「アラート」をご覧ください。アプリの中にアプリを作らないようにしましょう。モーダルタスクが複雑すぎると、モーダルコンテキストに入ったときに中断したタスクを見失う可能性があります。ビューの階層を含むモーダルタスクの作成には注意が必要です。人々は道に迷い、自分の手順を辿る方法を忘れてしまうからです。モーダルタスクがサブビューを含む必要がある場合は、階層を通る単一のパスと、完了までの明確なパスを提供します。ボタンを使用することは避けてください。使用するとよいでしょう。ボタンを含めることで、モーダルビューが支援技術でアクセスできるようになり、解除のジェスチャーの代わりになります。解除ジェスチャーやボタンを使ってビューを閉じるかどうかにかかわらず、その操作によってユーザーが作成したコンテンツが失われる可能性がある場合は、状況を説明し、解決する方法を示すアクションシートを提示してください。ポップオーバーの中にカードを表示することはできますが、ポップオーバーの上には何も表示してはいけません(場合によっては警告を除く)。まれに、ポップオーバーの中で人々がアクションを起こした後にカードを表示する必要がある場合がありますが、カードを表示する前にポップオーバーを閉じてください。モーダルタスクに入ると、それまでのコンテクストから切り替わるので、新しいコンテクストを明確にするのがよいでしょう。ビューの他の部分に、タスクをより詳しく説明したり、ガイダンスとなるテキストを表示することもできます。モーダルビューにナビゲーションバーが含まれている場合、アプリのナビゲーションバーと同じ外観を使用する必要があります。アプリと調和し、一時的なコンテキストシフトの認識を高める遷移スタイルを使用してください。デフォルトのトランジションは、モーダルビューを画面の下部から垂直にスライドさせ、解除されると元に戻します。アプリ全体で一貫したモーダル遷移スタイルを使用してください。#アプリのナビゲーションは、期待を裏切るまで気づかれない傾向にあります。あなたの仕事は、アプリケーションの構造と目的をサポートし、注目を集めることなく、ナビゲーションを実装することです。ナビゲーションは、自然で親しみやすいものでなければなりません。インターフェースを支配したり、コンテンツからフォーカスを外したりしてはいけません。つの主なスタイルがあります。別の目的地に行くには、元の場所に戻るか、最初から別の選択肢を選ぶ必要があります。設定」や「メール」などはこのナビゲーションスタイルを採用しています。#複数のコンテンツカテゴリーを切り替えて表示します。このナビゲーションを採用しています。#コンテンツの中を自由に移動したり、コンテンツ自体がナビゲーションを決定する。ゲーム、書籍、その他の没入型アプリケーションは、一般的にこのナビゲーションスタイルを採用しています。アプリの中には、複数のナビゲーションスタイルを組み合わせているものがあります。フラットなナビゲーションを採用しているアプリでは、各カテゴリー内に階層的なナビゲーションを実装している場合があります。アプリの中で自分がどこにいるのか、次の目的地に行くにはどうすればいいのかを常に把握しておく必要があります。ナビゲーションのスタイルにかかわらず、コンテンツへのパスが論理的で予測可能であり、簡単に辿れることが重要です。つの画面を複数の文脈で見る必要がある場合は、アクションシート、アラート、ポップオーバー、モーダルビューなどの使用を検討してください。詳しくは、「アクションシート、アラート、ポップオーバー、モーダル」を参照してください。タップ、スワイプ、スクリーンの数が最小限で済むように情報構造を整理します。最小限の摩擦で簡単にインターフェースを移動できるようにしましょう。画面の横からスワイプすると前の画面に戻れるようにするなどです。可能な限り、ページコントロール、タブバー、セグメントコントロール、テーブルビュー、コレクションビュー、スプリットビューなどの標準的なナビゲーションコントロールを使用してください。ユーザーはこれらのコントロールに慣れ親しんでおり、アプリをどのように操作すればよいか直感的にわかるでしょう。ナビゲーションバーのタイトルは、階層内の現在の位置を示し、戻るボタンで前の位置に簡単に戻ることができます。具体的な方法については、「ナビゲーションバー」を参照してください。タブバーを使うと、現在の位置に関係なく、カテゴリー間をすばやく簡単に切り替えることができます。具体的な方法については、「タブバー」を参照してください。スプリットビューは、タブバーと同様のクイックナビゲーションを提供するとともに、大きなディスプレイを有効に活用できます。詳しくは、「分割表示」をご覧ください。ページコントロールは、利用可能なページの数と現在アクティブなページを明確に伝えます。天気」アプリでは、ページコントロールを使用して、場所ごとの天気ページを表示しています。具体的な方法については、「ページコントロール」を参照してください。ヒントセグメント化されたコントロールやツールバーでは、ナビゲーションはできません。セグメント化されたコントロールを使用して、情報をさまざまなカテゴリに整理します。ツールバーは、現在のコンテキストを操作するためのコントロールとして使用します。これらの要素の詳細については、「セグメント化されたコントロールとツールバー」を参照してください。#ユーザーのプライバシーは最も重要です。アプリを信頼してもらうためには、必要とするプライバシー関連のデータやリソース、およびそれらの使用方法について透明性を確保することが重要です。フレームワークを使ってユーザーの許可を求める必要があります。詳しくは、「ユーザーのプライバシーとデータ利用」をご覧ください。お客様の製品ページに情報を表示できるように、お客様のプライバシー慣行および収集するプライバシー関連データに関する詳細を提供する必要があります。いつでも管理することができます。ユーザーは、アプリをダウンロードする前に十分な情報を得た上で判断するために、商品ページのプライバシーに関する詳細情報を使用します。#ユーザーデータや保護されたリソースを使用する前に、人々の許可を得る必要があります。明らかな必要性がない場合、個人情報やデバイス機能へのアクセスを要求されると、人々が疑うのは当然のことです。理想的には、人々がアクセスを必要とするアプリの機能を実際に使用するまで、許可を要求するのを待ちます。位置情報の要求については、位置情報ボタンを使用することで、人々がその場で位置情報を共有できるようになります。ガイダンスについては、「位置情報ボタンを使用する」を参照してください。アプリが情報を必要とする理由が明らかな場合は、起動時の要求に悩まされる可能性は低くなります。ユーザーがアプリを起動したらすぐにアプリのトラッキングを行いたい場合は、トラッキングデータを収集する前に、システムが提供するアラートを表示する必要があります。システムは、個人情報や保護されたリソースへのアクセス要求を人々に表示する標準的なアラートを提供します。ユーザーは、アプリがアイテムを必要とする理由の説明を提供し、システムはこの説明をアラートに表示します。ユーザーは、「設定」>「プライバシー」で説明を確認し、選択を更新することもできます。標準的なアラートでは、アプリ名の後、人々が許可または拒否するために使用するボタンの前に、お客様のコピー(目的文字列または使用説明文字列と呼ばれます)が表示されます。端的で具体的、かつ理解しやすい、簡潔で完全な文章を目指します。大文字小文字を区別し、受動態を避け、最後にピリオドを入れてください。開発者向けのガイダンスとしては、「保護されたリソースへのアクセスを要求する」と「アプリのトラッキングの透明性」を参照してください。このアプリは、いびきの音を検出するために夜間に記録します。アプリがデータを収集する方法と理由を明確に説明する能動的な文章です。良い体験をするためには、マイクへのアクセスが必要です。曖昧で定義されていない正当性を示す受動的な文章です。マイクアクセスをオンにします。正当な理由を示さない命令文です。ボタンが用意されており、タスクに必要な時に位置情報へのアクセスをアプリに一時的に許可することができます。合わせて変えることができますが、一目でわかる方法で位置情報の共有というアクションを伝えることができます。位置情報ボタンは、アプリにデバイスの位置情報を要求する一時的な権限を与えます。あなたのアプリに認証ステータスがない場合、位置情報ボタンをタップすると、標準のアラートで「一度だけ許可」を選択した場合と同じ効果が得られます。ユーザーが以前に「アプリ使用中」を選択していた場合、位置情報ボタンをタップしてもアプリのステータスは変わりません。(Swift)を参照してください。ユーザーがアプリを開いて位置情報ボタンを初めてタップしたとき、システムは標準的なアラートを表示します。このアラートは、ボタンを使用することで、アプリによる位置情報へのアクセスがどのように制限されるかを理解してもらうためのもので、共有開始時に表示される位置情報インジケーターを思い出してもらいます。回だけ許可したいときに、位置情報ボタンをタップするだけです。回限りの許可は、ユーザーがアプリの使用をやめると失効しますが、ボタンの動作に対する理解を再度確認する必要はありません。メッセージや投稿に位置情報を添付したり、お店を探したり、その場所で出会った建物や植物、動物を特定したりすることができます。許可を頻繁に与えていることがわかっている場合は、位置情報ボタンを使用して、アラートに反応しなくても位置情報を共有することで利益を得られるようにすることを検討してください。具体的には、以下のことができます。機能に合わせてシステムが提供するタイトルを選択する位置情報のグリフを塗りつぶしたものか、アウトライン化したものかを選択する背景色、タイトルとグリフの色を選択するボタンのコーナー半径を調整する位置情報ボタンを認知・信頼してもらうために、他の属性はカスタマイズできないようになっています。このシステムでは、コントラストの低い色の組み合わせや半透明の多さなどの問題を警告することで、ロケーションボタンの読みやすさを確保しています。このような問題を修正するだけでなく、ボタンにテキストが収まるようにする責任もあります。ボタンのテキストは、すべてのアクセシビリティのテキストサイズで、また他の言語に翻訳されたときにも、切り捨てられることなく収まるようにする必要があります。重要カスタマイズした位置情報ボタンに一貫した問題があることがシステムによって確認された場合、人々がボタンをタップしても、アプリケーションはデバイスの位置情報にアクセスできません。このようなボタンは、アプリ固有の他のアクションを実行できますが、位置情報ボタンが期待通りに動作しないと、人々はアプリに対する信頼を失う可能性があります。カタログまたはカスタムオーディオカタログと照合することで、音声認識を可能にします。使用して次のような機能を実現できます。再生中の音楽のジャンルに対応したグラフィックでアプリケーション体験を向上させる音声と同期したクローズドキャプションや手話を提供することで、聴覚障がい者がメディアコンテンツにアクセスできるようにするオンライン学習や小売業などで、アプリ内の体験をバーチャルコンテンツと同期させるアプリが認識する音声サンプルを得るためにデバイスのマイクが必要な場合は、そのアクセスを要求する必要があります。他のタイプの許可申請と同様に、なぜアクセスを求めるのかを理解してもらうことが重要です。ガイダンスについては、「アクセス許可の申請」を参照してください。有効になっている機能のマイクにアクセスする許可を得た後は、以下のガイドラインに従ってください。認識のためにあなたのアプリケーションが音声を録音することを許可するとき、人々はマイクがオンのままであることを期待していません。プライバシーを守るために、必要なサンプルを得るために必要な時間だけ録音してください。保存できる場合は、ユーザーがこのアクションを最初に承認する方法を提供します。アプリの両方で、認識された曲のソースとしてあなたのアプリが表示されますが、どのアプリが自分のライブラリにコンテンツを保存できるかをコントロールできることを人々は高く評価します。#理想的には、ユーザーは文脈に基づいて許可を求める理由をすでに知っていますが、追加の詳細を提供することが不可欠な場合は、アラートが表示される前にカスタムメッセージを表示できます。人々はプレアラートメッセージを遅延戦術と解釈する可能性があるため、メッセージをすぐに消去してシステムアラートを表示させることが重要です。つのアクションのみを提供し、システムアラートを表示しなければなりません。アクションのタイトルには「続行」のような言葉を使い、「許可」など、カスタム画面内で許可を与えたり他のアクションを実行していると思わせるような言葉は使わないでください。#アプリのトラッキングはデリケートな問題です。場合によっては、トラッキングの利点を明確に説明するカスタムメッセージを表示することが理にかなっていることもあります。人はアラートを読まずに素早くタップして消してしまうことがあります。却下される可能性があります。拒否される原因となるカスタムメッセージのデザインには、いくつかの禁止事項があります。インセンティブを提供すること、リクエストのような画面を表示すること、アラートの画像を表示すること、アラートの後ろの画面に注釈を入れることなどです(下図)。(iv)を参照してください。#アプリの中には、設定や構成を選択する方法を提供する必要があるものもありますが、ほとんどのアプリでは、設定を行わないようにしたり、遅らせたりすることができます。成功するアプリは、多くの人がすぐに使いこなせると同時に、便利な調整方法を提供しています。多くの人が期待する機能を持つようにアプリを設計すると、設定の必要性が減ります。ユーザー、デバイス、環境に関する情報が必要な場合は、ユーザーに尋ねるのではなく、可能な限りシステムに問い合わせてください。地域の選択肢を提示するために郵便番号を入力してもらう代わりに、現在地を使用する許可を得る。ユーザーが自分の情報へのアクセスを拒否した場合は、潔く手動入力に戻します。アプリのメイン画面には、必須のオプションや頻繁に変更されるオプションを配置するとよいでしょう。変更されないオプションには、二次画面が適しています。「設定」アプリは、システム全体の構成を変更するための中心的な場所ですが、そこに行くにはアプリを離れる必要があります。アプリ内で直接設定を変更する方がはるかに便利です。位置情報サービスに移動」など、ユーザーを「設定」に誘導するテキストが含まれている場合は、その場所を自動的に開くボタンを用意します。