開発者コンソール

アプリをアップデートするための7つのベストプラクティス

Waqar Aziz Feb 21, 2023
Share:
How to
Blog_Header_Post_Img

Amazonアプリストアでアプリのアップデート版を公開するときには、考慮すべき重要な点がいくつかあります。通常、ほとんどのユーザーはアプリのアップデートをバックグラウンドで受け取ります。ただし、特定のアップデートがパーミッションの更新を必要とする場合や、自動アップデートが無効になっている場合は、アップデートがユーザーに提供されるまでに数日かかることがあります。

ユーザーへのロールアウトを管理しながら安全に行えるよう、アプリをシームレスにアップデートするための7つのベストプラクティスを紹介します。

ヒント1: アプリの公開スケジュールを設定する

デフォルトでは、アプリの新しいバージョンは、Amazonの審査に通過するとすぐに公開されます。ただし、アプリのアップデートが週末にユーザーに公開されると、直後に問題が起きた場合にサポートを受けられない可能性があります。より適切にアプリの公開予定を立てるには、アップデートをユーザーに提供するのに適した日時を指定してください。

schedule app releases

 

アプリの配信スケジュールを設定するには、手順4: 確認と申請に進み、アプリの最新バージョンの公開日を入力します。新しいバージョンが実際に公開され、ユーザーが利用できるようになるまでに、数時間かかる場合があることを考慮してください。

ヒント2: 段階的ロールアウトを介してアプリのアップデート版を公開する

staged rollouts

段階的ロールアウトの機能を活用すると、アプリの次期バージョンを利用できるユーザーの割合を徐々に増やしながら段階的に配信することができます。これにより、バグや問題の影響範囲を制限しながら、管理された環境下で機能強化や新機能のテスト測定が可能になります。

詳細については、段階的ロールアウトに関するテクニカルドキュメントを参照してください。

ヒント3: テスト手順を示す

見つけにくい機能とそのテスト方法を説明してください。たとえば、アプリを起動して使用する前にユーザーのログインが必要な場合は、テスト用の認証情報を記入します。さらに、ユーザーの地域によりテスト時に発生する可能性のある地理的制限を回避するための手順を追加しておきます。

testing instructions

 

テストの詳細を説明するには、手順4: 確認と申請 [テスト手順] セクションに詳しいテスト方法を入力します。テスト手順を入力することで、新しくリリースするアプリの審査が遅れてユーザー離れにつながるのを防ぐことができます。

ヒント4: マルチメディアアプリの要件に従う

すべてのマルチメディアアプリには、アクティビティライフサイクルイベントやオーディオフォーカスイベントメディアセッションデコーダーインスタンスWakeLockなどの適切な処理方法に関して同じ要件があります。 また、これらの要件は、Fire TVのアプリ間のスムーズな連携に不可欠です。アプリ審査の遅れを防ぎ、Fire TVでのアプリのエクスペリエンスを向上させるために、要件を確認してください。

これらのアプリ要件に従うには、マルチメディアに関するドキュメントで詳細を確認してください。

ヒント5: パフォーマンステストを組み込む

デバイスの仕様と機能は、Fire TVやFireタブレットのバージョンによって異なります。すべてのデバイスで最適なエクスペリエンスを提供するには、アプリの新しいバージョンを申請する前に、Fire OSの各バージョンでテストすることが不可欠です。

パフォーマンステストを公開プロセスに組み込むには、以下の特性に注意してください。

  • レイテンシ - デバイスの起動後またはアプリの強制終了後に初めて起動したとき(およびそれ以降の起動時)に、最初のフレームを描画するのに要する時間。
  • メモリ - アプリによるフォアグラウンドメモリおよびバックグランドメモリの使用量。
  • 安定性 - アプリのフリーズやクラッシュの原因となるアプリ内外のイベント。 
  • 滑らかさ - アプリがフォアグラウンドにあるときの総フレーム数に対するフレームドロップ率。
  • 即用性 - アプリの起動からユーザーが操作できる状態になるまでの所要時間。

ヒント6: 機能フラグを実装する

機能フラグ(機能トグルとも呼ばれる)は、アプリの新しいバージョンをデプロイすることなく、実行時に機能のオンとオフを切り替えるための単純なメカニズムです。ロールアウトの制御、A/Bテスト、バグ発見時の新機能無効化など、さまざまな目的に機能フラグを活用できます。 

機能フラグを有効にするにはサーバーでホストされている構成ファイルで機能フラグを変数に設定するか、AWS AppConfig(英語のみ)やFirebase RemoteConfigなどのサードパーティ製機能フラグ管理ツールを使用します。

ヒント7: アプリ内でアップデートを促す

場合によっては、アプリ内でユーザーに最新バージョンへのアップデート(重大なバグの修正や主要機能のアップデートなど)を促すことが必要です。

in-app update prompts

アプリ内でアップデートを促すには、AppDialog(英語のみ)を使用してユーザーにアプリの新しいバージョンについて通知し、Amazonアプリストアのアプリの詳細ページに直接ディープリンクする [アップデート] ボタンを追加します。

次のコードは、Fire OSでアプリの詳細ページにディープリンクを設定する方法を示しています。

Copied to clipboard
// Fire OSでアプリの詳細ページにディープリンクを設定する 
Uri uri = Uri.parse("amzn://apps/android?asin=YOUR_APP_ASIN&intent=app_update"); 
Intent intent = new Intent(Intent.ACTION_VIEW, uri); 
startActivity(intent);

ユーザーにアップデートを促すのは、段階的ロールアウトが完了して公開範囲が100%になってからです。ほとんどの場合、ユーザーが操作をしなくてもアップデートはバックグラウンドで適用されます。この方法は、アプリを古いバージョンのまま何週間も使用しているユーザーにのみ使用してください。アップデートのプロンプトは、ユーザーが消去できるものにする必要があります。

デバイス上のディープリンクを実装するには、テクニカルドキュメントを参照してください。

:強制更新フローのテストをするには、ライブアプリテスト(LAT)を使用してアプリをインストールしテストを実行する必要があります。

まとめ

このブログでは、アプリをアップデートするための以下の7つのベストプラクティスについて説明しました。

  1. アプリの公開スケジュールを設定する
  2. 段階的ロールアウトを介してアプリのアップデート版を公開する
  3. テスト手順を示す
  4. マルチメディアアプリの要件に従う
  5. パフォーマンステストを組み込む
  6. 機能フラグを実装する
  7. アプリ内でアップデートを促す

アプリのアップデートプロセスでこれらを実践すれば、ユーザーが確実にアップデートできるようになります。Amazonアプリストアにアプリを申請する準備ができたら、申請前チェックリストの全項目を確認してください。

関連記事

最近の投稿

日本語版ブログの一覧は、こちらからご覧ください。

日本語の投稿の中には、英語版から翻訳されたものが含まれます。翻訳元のブログを参照したい方は、ページ下部の言語切替バーから [英語] を選択してください。