Получение онбордингов в Android SDK
После того как вы разработали визуальную часть онбординга с помощью конструктора в дашборде Adapty, его можно отобразить в вашем Android-приложении. Первый шаг — получить онбординг, связанный с плейсментом, и его конфигурацию отображения, как описано ниже.
Перед началом убедитесь, что:
- Вы установили Adapty Android SDK версии 3.8.0 или выше.
- Вы создали онбординг.
- Вы добавили онбординг в плейсмент.
Получение онбординга
Когда вы создаёте онбординг с помощью нашего no-code конструктора, он сохраняется как контейнер с конфигурацией, которую приложение должно загрузить и отобразить. Этот контейнер управляет всем процессом: какой контент показывается, как он представляется и как обрабатываются действия пользователя (например, ответы на вопросы викторины или ввод данных в форму). Контейнер также автоматически отслеживает аналитические события, поэтому отдельно реализовывать отслеживание просмотров не нужно.
Для лучшей производительности загружайте конфигурацию онбординга заблаговременно, чтобы изображения успели загрузиться до показа пользователям.
Для получения онбординга используйте метод getOnboarding:
Adapty.getOnboarding("YOUR_PLACEMENT_ID") { result ->
when (result) {
is AdaptyResult.Success -> {
val onboarding = result.value
// the requested onboarding
}
is AdaptyResult.Error -> {
val error = result.error
// handle the error
}
}
}
Параметры:
| Параметр | Наличие | Описание |
|---|---|---|
| placementId | обязательный | Идентификатор нужного плейсмента. Это значение вы указали при создании плейсмента в дашборде Adapty. |
| locale | необязательный по умолчанию: | Идентификатор локализации онбординга. Ожидается языковой код, состоящий из одного или двух подтегов, разделённых символом минус (-). Первый подтег — язык, второй — регион. Пример: Подробнее о кодах локалей и рекомендуемом подходе к их использованию см. в разделе Локализации и коды локалей. |
| fetchPolicy | по умолчанию: .reloadRevalidatingCacheData | По умолчанию SDK пытается загрузить данные с сервера и возвращает кешированные данные в случае сбоя. Мы рекомендуем этот вариант, так как он гарантирует, что пользователи всегда получают актуальные данные. Однако если у ваших пользователей нестабильное интернет-соединение, рассмотрите использование Обратите внимание, что кеш сохраняется при перезапуске приложения и очищается только при его переустановке или принудительной очистке. Adapty SDK хранит онбординги локально в двух слоях: регулярно обновляемый кеш, описанный выше, и резервные онбординги. Для ускорения загрузки используется CDN, а также отдельный резервный сервер на случай недоступности CDN. Система разработана так, чтобы вы всегда получали актуальную версию онбордингов, обеспечивая надёжность даже при слабом интернет-соединении. |
| loadTimeout | по умолчанию: 5 сек | Ограничивает таймаут выполнения метода. При истечении таймаута вернутся кешированные данные или локальный резервный вариант. Обратите внимание, что в редких случаях метод может завершиться с небольшим превышением значения Для Android: вы можете создать |
Параметры ответа:
| Параметр | Описание |
|---|---|
| Onboarding | Объект AdaptyOnboarding с идентификатором и конфигурацией онбординга, Remote Config и рядом других свойств. |
Ускорение загрузки онбординга с помощью онбординга для аудитории по умолчанию
Как правило, онбординги загружаются практически мгновенно, и беспокоиться об ускорении этого процесса не нужно. Однако если у вас много аудиторий и онбордингов, а у пользователей слабое интернет-соединение, загрузка онбординга может занять больше времени, чем хотелось бы. В таких случаях может быть полезно показывать онбординг по умолчанию, чтобы обеспечить плавный пользовательский опыт вместо полного отсутствия онбординга.
Для этого можно использовать метод getOnboardingForDefaultAudience, который загружает онбординг указанного плейсмента для аудитории All Users. Важно понимать, что рекомендуемый подход — загружать онбординг методом getOnboarding, как описано в разделе Получение онбординга выше.
Рассмотрите использование getOnboarding вместо getOnboardingForDefaultAudience, поскольку последний имеет важные ограничения:
- Проблемы совместимости: могут возникнуть трудности при поддержке нескольких версий приложения — придётся либо создавать обратно совместимые дизайны, либо мириться с некорректным отображением в старых версиях.
- Отсутствие персонализации: показывается только контент для аудитории «All Users», без таргетинга по стране, атрибуции или пользовательским атрибутам.
Если скорость загрузки для вашего случая важнее этих ограничений, используйте getOnboardingForDefaultAudience, как показано ниже. В противном случае используйте getOnboarding, как описано выше.
Adapty.getOnboardingForDefaultAudience("YOUR_PLACEMENT_ID") { result ->
when (result) {
is AdaptyResult.Success -> {
val onboarding = result.value
// Handle successful onboarding retrieval
}
is AdaptyResult.Error -> {
val error = result.error
// Handle error case
}
}
}
Параметры:
| Параметр | Наличие | Описание |
|---|---|---|
| placementId | обязательный | Идентификатор нужного плейсмента. Это значение вы указали при создании плейсмента в дашборде Adapty. |
| locale | необязательный по умолчанию: | Идентификатор локализации онбординга. Ожидается языковой код, состоящий из одного или двух подтегов, разделённых символом минус (-). Первый подтег — язык, второй — регион. Пример: Подробнее о кодах локалей и рекомендуемом подходе к их использованию см. в разделе Локализации и коды локалей. |
| fetchPolicy | по умолчанию: .reloadRevalidatingCacheData | По умолчанию SDK пытается загрузить данные с сервера и возвращает кешированные данные в случае сбоя. Мы рекомендуем этот вариант, так как он гарантирует, что пользователи всегда получают актуальные данные. Однако если у ваших пользователей нестабильное интернет-соединение, рассмотрите использование Обратите внимание, что кеш сохраняется при перезапуске приложения и очищается только при его переустановке или принудительной очистке. Adapty SDK хранит онбординги локально в двух слоях: регулярно обновляемый кеш, описанный выше, и резервные онбординги. Для ускорения загрузки используется CDN, а также отдельный резервный сервер на случай недоступности CDN. Система разработана так, чтобы вы всегда получали актуальную версию онбордингов, обеспечивая надёжность даже при слабом интернет-соединении. |