OS アップデートに対する Android Upgrade Party

アップグレード パーティーは、Android ユーザーが OS のメジャー アップグレードを受けるたびに新機能を紹介するディスカバリ フローです。

Android オペレーティング システムのメジャー アップグレードは、ユーザーにとって圧倒的なエクスペリエンスになる可能性があります。アップグレード パーティー フローはユーザー エンゲージメントを高め、新しく更新された OS の操作方法をユーザーが理解できるようにします。

最新の OS バージョンにアップグレードすると、ユーザーは新しい OS への歓迎と新機能を含むカード フローを紹介するプッシュ通知を受け取ります。

Android OS のアップグレード パーティーを有効にするには、 「Android アップグレード パーティーのアクティブ化のリクエスト」フォームを使用して登録します。

アップグレード パーティー エクスペリエンスをカスタマイズする

アップグレード パーティー エクスペリエンスは次の方法でカスタマイズできます。

  • 無関係な機能を削除します。
  • テキスト ブロック内の言語を更新します。
  • ブランドに合わせてアニメーション、色、フォントを変更します。

フローをカスタマイズするには、アップグレード パーティー スタイル ガイドのガイドラインを確認し、 Android アップグレード パーティーのアクティブ化のリクエストフォームにカスタマイズ情報を含めてください。

アップグレード招待スタイルガイド

このスタイル ガイドを使用して、独自のブランド (画面、色、フォント) に合わせて Upgrade Invite の外観を変更します。サイズと構造を元のデザインに近づけることを強くお勧めします。

アップグレード招待フローには、次の 3 つのコンポーネントがあります。

  • イントロ画面
  • 特集画面
  • アウトロ画面
図 1.アップグレード招待フローの 3 つの画面タイプ

各画面上のアニメーションは、各機能の説明に役立ちます。

イントロ画面

イントロ画面には、ユーザーを歓迎し、イントロ画面に表示されるフローの開始を促す短いアニメーションが含まれています。

レイアウト
図 2.アップグレード招待の導入画面のワイヤーフレーム レイアウト

デバイスのアニメーションは常に次のもので構成されます。

  • 白い背景とカラフルな形
  • デバイスフレーム
  • UIコンテンツ
スタイリング

マテリアルスタイルを適用することを選択した場合は、例に示されているデフォルトの色と形状を使用できます。

図 3.アップグレード招待フローのデフォルトの配色。

独自のブランドカラーを使用する場合は、それが UI の背景とうまく調和するようにしてください。

モーション

オプション 1:ホーム画面に時計を表示する

  1. 数字が画面に入ります。
  2. 数字は中心に向かって小さくなりながら移動します。携帯電話フレームが表示されます。
  3. 電話機のサイズが小さくなります。図形が画面に入り始めます。
  4. アニメーションが完成しました。形は緩やかに動き続けます。
図 4.時計付きの Upgrade Invite イントロ画面アニメーションのワイヤーフレーム レイアウト。
図 5.時計付きのイントロ画面のアニメーションの例。

オプション 2:ホーム画面に時計を表示しない

  1. 携帯電話が画面に入ります。
  2. 電話機は大きくなりながら中央に移動します。図形が画面に入り始めます。
  3. 携帯電話は最大サイズに達し、形状は動き続けます。
図 6.時計なしの Upgrade Invite イントロ画面アニメーションのワイヤーフレーム レイアウト。
図 7.時計のないイントロ画面のアニメーションの例。

特集画面

各機能画面では、新しい OS の機能が強調表示されます。

レイアウト
図 8.アップグレード招待機能画面のワイヤーフレーム レイアウト。

デバイスのアニメーションは常に次のもので構成されます。

  • カラフルな背景
  • デバイスフレーム
  • UIコンテンツ
スタイリング
  • UI コンテンツおよび全体的な外観に適した背景色を選択してください。
  • 画面内では、読みやすいフォントサイズを設定してください。必要に応じて、より大きなフォント サイズを設定します。
モーション

タッチ操作を含む各機能のフローのアニメーションを記録します。録音をLottie ファイルとしてエクスポートします。

アウトロ画面

アウトロ画面で流れは完了です。これは、ユーザーがすべての画面を通過したことを示します。

レイアウト
図 9.アップグレード招待アウトロ画面のワイヤーフレーム レイアウト。

デバイスのアニメーションは常に次のもので構成されます。

  • 背景の半円 (アニメーション化された図形)
  • デバイスフレーム
  • UIコンテンツ
スタイリング
  • UI コンテンツおよび全体的な外観に適した背景色を選択します。
  • 半円形を使用します。
モーション

標準的なアウトロ画面のアニメーション フローに従います。

  1. 携帯電話が少し上に動きます。
  2. 背景に円が表示されます。
  3. 携帯電話の後ろから形が浮かび上がります。
  4. 紙吹雪のように背景から形が飛び出します。
図 10.アップグレード招待アウトロ画面アニメーションのワイヤーフレーム レイアウト。
図 11.アウトロ画面アニメーションの例。

SDK を使用してアップグレード パーティーをトリガーする

デフォルトでは、Android OS はアップグレードするとすぐに、最新機能を備えたカード フローを紹介するプッシュ通知をユーザーに送信します。独自のプッシュ通知またはアプリからフローをトリガーしたい場合は、Android SDK を使用してください。

前提条件

アプリのビルド ファイルで次の値が使用されていることを確認してください。

  • minSdkVersion 14 以降
  • compileSdkVersion 28以降

アプリを設定する

  1. 提供された Zip ファイルからライブラリを抽出し、リポジトリに配置します。
  2. Google Growth SDK の依存関係をモジュールのアプリレベルのGradleファイル (通常はapp/build.gradle ) に追加します。

     dependencies {
         implementation files('<PATH_TO_BINARY>/play-services-growth-16.1.0-eap04.aar')
     }
    
  3. 次のライブラリを依存関係として含めます。

    com.google.android.gms:play-services-base:18.0.1
    com.google.android.gms:play-services-basement:18.0.0
    com.google.android.gms:play-services-tasks:18.0.1
    

APIを使用する

  1. クライアントを初期化するには、 UpgradePartyクラスを使用し、 activityパラメーターを設定します。

     import com.google.android.gms.growth.UpgradeParty;
     UpgradeParty.getClient(activity);
    

結果として得られるUpgradePartyClient API 機能を公開します。

アップグレードパーティーの対象です

Task<Boolean> isEligibleForUpgradeParty();

ユーザーがアップグレード パーティーの参加資格があるかどうかを非同期的に検証するTaskオブジェクトを返します。結果のブール値は、ユーザーが資格があるかどうかを示します。

アップグレードパーティの呼び出し

Task<Void> invokeUpgradeParty();

アップグレード パーティActivityを呼び出します。結果として得られるTaskオブジェクトは、アクティビティの開始時にエラーが発生したかどうかを示します。

エラー

どちらの API メソッドも、 com.google.android.gms.common.api.ApiExceptionタイプの例外を除いて失敗する可能性があります。このような場合、呼び出し元は後で再試行することが期待されます。

予想される一般的なステータス コードは次のとおりです。

  • INTERNAL_ERROR :基礎となるロジックのフローにおけるエラーを表します。
  • TIMEOUT :リクエストをタイムリーに処理できなかった場合に表示されます。
  • API_NOT_CONNECTED : API が利用できないことを意味します (たとえば、 UpgradePartyモジュールがまだ準備ができていません)。
  • DEVELOPER_ERROR :呼び出し側パッケージがUpgradePartyクラスへのアクセスを許可されていない場合に表示されます。

SDKの例

SDK を呼び出すアプリの次の例を参照してください。

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import com.google.android.gms.growth.UpgradeParty;
import com.google.android.gms.growth.UpgradePartyClient;

public class SampleActivity extends Activity {

 @Override
 protected void onCreate(Bundle savedInstanceState) {
   super.onCreate(savedInstanceState);
   final UpgradePartyClient client = UpgradeParty.getClient(this);

   // Hide the invocation button initially
   View startUpgradePartyButton = findViewById(R.id.__some_button__);
   startUpgradePartyButton.setVisibility(View.GONE);

   // Register an onClick handler to invoke the Upgrade Party Activity
   startUpgradePartyButton
       .setOnClickListener(
           view -> {
             client
                 .invokeUpgradeParty()
                 .addOnCompleteListener(
                     task -> {
                       if (!task.isSuccessful()) {
                         // Do something with error, see task.getException()
                       }
                     });
           });
   }

   // Check if eligible for an Upgrade Party
   client
       .isEligibleForUpgradeParty()
       .addOnCompleteListener(
           task -> {
             if (!task.isSuccessful()) {
               // Do something with error, see task.getException()
             } else {
                  // Show/Hide invocation button, based on the result
                  int visibility =
                        task.getResult() ? View.VISIBLE : View.GONE;
                  startUpgradePartyButton..setVisibility(visibility);
             }
           });
   }

アップグレード パーティー フローをテストする

ユーザーが Android OS をアップグレードするときに表示されるアップグレード パーティー フローをテストするには、次の手順に従います。

  1. テスト Android デバイスで、 [設定] > [Google] > [アップグレード パーティのデバッグ]に移動します。
  2. [アップグレードのレポート]を選択し、 [アップグレード パーティを開く]を選択します。これにより、デバイスの OS バージョンに基づいて、関連するフローが開始されます。たとえば、Android 12 アップグレード パーティーは、Android 12 OS を実行しているデバイスでプレイされます。