Android Upgrade Party для обновлений ОС

Upgrade Party — это ознакомительный поток, освещающий новые функции для пользователей Android при каждом крупном обновлении ОС.

Крупное обновление операционной системы Android может оказаться неутешительным опытом для ваших пользователей. Поток Upgrade Party повышает вовлеченность пользователей и помогает им понять, как ориентироваться в своей недавно обновленной ОС.

После обновления до последней версии ОС пользователи получают push-уведомление, приветствующее их в новой ОС и демонстрирующее поток карт с новыми функциями.

Производители устройств могут включить функцию Upgrade Party для своих устройств на базе ОС Android, отправив форму «Запрос на активацию Android Upgrade Party» .

Настройте вечеринку по обновлению

Вы можете настроить Upgrade Party следующими способами:

  • Удалите ненужные функции.
  • Обновите язык в текстовых блоках.
  • Измените анимацию, цвета и шрифты в соответствии с вашим брендом.

Чтобы настроить поток, ознакомьтесь с рекомендациями в Руководстве по стилю вечеринки по обновлению и включите информацию о настройке в ответ на форму.

Руководство по стилю обновления приглашения

Используйте это руководство по стилю, чтобы изменить внешний вид Upgrade Invite в соответствии с вашим собственным брендом (экраны, цвета, шрифты). Мы настоятельно рекомендуем сохранять размеры и структуру, близкие к оригинальному дизайну.

Процесс приглашения на обновление включает в себя следующие три компонента:

  • Вводный экран
  • Экран функций
  • Экран Outro
Рисунок 1. Три типа экранов в потоке приглашения на обновление

Анимация на каждом экране помогает объяснить каждую функцию.

Вводный экран

Вводный экран содержит короткую анимацию, которая приветствует пользователя и побуждает его начать процесс, показанный на начальном экране.

Макет
Рисунок 2. Каркасная схема для вводного экрана Upgrade Invite

Анимация устройства всегда состоит из:

  • Белый фон и разноцветные фигуры
  • Рамка устройства
  • Содержимое пользовательского интерфейса
Стайлинг

Если вы решите адаптировать стиль Material You , вы можете использовать цвета и формы по умолчанию, показанные в примере.

Рисунок 3. Цветовая схема по умолчанию для потока приглашения на обновление.

Если вы используете собственный фирменный цвет, убедитесь, что он хорошо сочетается с фоном пользовательского интерфейса.

Движение

Вариант 1: С часами на главном экране

  1. На экране появляются цифры.
  2. Цифры движутся к центру, уменьшаясь в размере. Появляется рамка мобильного телефона.
  3. Телефон уменьшается в размерах. Фигуры начинают проникать на экран.
  4. Анимация завершена. Фигуры продолжают плавно двигаться.
Рисунок 4. Каркасная схема анимации вступительного экрана «Приглашение на обновление» с часами.
Рисунок 5. Пример анимации для вступительного экрана с часами.

Вариант 2: Отсутствие часов на главном экране

  1. На экране появляется мобильный телефон.
  2. Телефон движется к центру, увеличиваясь в размерах. Фигуры начинают проникать на экран.
  3. Телефон достигает максимального размера, а фигуры продолжают двигаться.
Рисунок 6. Каркасная схема анимации вступительного экрана «Приглашение на обновление» без часов.
Рисунок 7. Пример анимации для вступительного экрана без часов.

Экран функций

Каждый экран функций отображает определенную функцию новой ОС.

Макет
Рисунок 8. Каркасная схема для экранов функции «Приглашение на обновление».

Анимация устройства всегда состоит из:

  • Красочный фон
  • Рамка устройства
  • Содержимое пользовательского интерфейса
Стайлинг
  • Выберите цвет фона, который хорошо сочетается с содержимым пользовательского интерфейса и общим внешним видом.
  • Внутри экранов установите легко читаемые размеры шрифта. При необходимости установите более крупные размеры шрифта.
Движение

Запишите анимацию потока каждой функции, включая сенсорные взаимодействия. Экспортируйте записи как файлы Lottie .

Экран Outro

Экран outro завершает поток. Он показывает пользователям, что они прошли все экраны.

Макет
Рисунок 9. Каркасная схема для завершающего экрана «Приглашение на обновление».

Анимация устройства всегда состоит из:

  • Полукруг на фоне (плюс анимированные фигуры)
  • Рамка устройства
  • Содержимое пользовательского интерфейса
Стайлинг
  • Выберите цвет фона, который хорошо сочетается с содержимым пользовательского интерфейса и общим внешним видом.
  • Используйте форму полукруга.
Движение

Следуйте стандартной последовательности анимации заставки:

  1. Мобильный телефон немного поднимается.
  2. На заднем плане появляется круг.
  3. Из-за мобильного телефона появляются какие-то фигуры.
  4. Фигуры вылетают из фона, словно конфетти.
Рисунок 10. Каркасная схема для анимации завершающего экрана «Приглашение на обновление».
Рисунок 11. Пример анимации финального экрана.

Запустите вечеринку по обновлению с помощью SDK

По умолчанию ОС Android отправляет пользователям push-уведомление, демонстрирующее поток карт с последними функциями, как только они обновляются. Если вы предпочитаете запускать поток из собственного push-уведомления или приложения, используйте 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.

isEligibleForUpgradeParty

Task<Boolean> isEligibleForUpgradeParty();

Возвращает объект Task , который асинхронно проверяет, имеет ли пользователь право на Upgrade Party. Полученное логическое значение указывает, имеет ли пользователь право или нет.

invokeUpgradeParty

Task<Void> invokeUpgradeParty();

Вызывает Upgrade Party 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);
             }
           });
   }

Тестирование процесса Upgrade Party

Выполните следующие действия, чтобы протестировать процесс Upgrade Party, который видят ваши пользователи при обновлении ОС Android:

  1. На тестовом устройстве Android перейдите в Настройки > Google > Отладка Upgrade Party .
  2. Выберите Report Upgrade , а затем Open Upgrade Party . Это запустит соответствующий поток, основанный на версии ОС устройства. Например, Android 12 Upgrade Party воспроизводится на устройстве под управлением ОС Android 12.