SDK справка
Запуск и жизненный цикл
Копировать страницу
Lia.init, Lia.ready, Lia.session и Lia.close, и каждое событие Lia отправляет вашей странице.
#Lia.init()
Вызовите его сначала. Он отвечает, кто является игроком и все о том, как ваше приложение отображается, и заполняет SDK's свойства и CSS переменных.
const me = await Lia.init();Решается с:
| Поле | Тип | Что это |
|---|---|---|
player | объект | { id, name }: игрок'id в вашем приложении, и их Lia имя пользователя. См. Игроки. |
session | строка | Токен сессии для вашего сервера, lias_…. |
exp | число | Когда сессия завершена, в миллисекундах с 1970 (15 минут после открытия). |
mode | строка | "test" или "live". |
language | строка | Человек'язык в Lia, например "en". |
rtl | логическое значение | Читается ли язык справа налево. |
platform | строка | "ios" или "android". |
theme | строка | "light" или "dark". |
themeParams | объект | Lia'цвета (bg_color, text_color…). |
display | строка | "sheet", "full" или "fullscreen". |
isFullscreen | логическое значение | От края до края или нет. |
viewport | объект | { height, expanded } |
safeArea | объект | { top, bottom, left, right } в пикселях |
contentSafeArea | объект | { top, bottom, left, right } в пикселях |
startParam | строка или null | Что ваше приложение было открыто. |
link | строка | Ваше приложение'пригласительная ссылка, без startParam. |
sound | логическое значение | Хочет ли человек ваше приложение'звуки. |
notifications | объект | { allowed, available }: разрешили ли они ваши уведомления, и может ли ваше приложение запрашивать. |
Ошибки: not_in_lia, not_ready (Lia все еще открывает приложение; попробуйте позже), timeout.
#Lia.ready()
Сообщает Lia вашей странице, что она нарисована, поэтому она убирает свой загрузчик. Вызовите его, когда ваш первый экран на странице. Возвращает ничего.
Lia.init().then(function (me) {
renderHome(me);
Lia.ready();
});#Lia.session()
Новый токен сеанса для вашего сервера. Сеансы длятся 15 минут, поэтому получите новый до вызовов, которые должен доверять ваш сервер.
const { session, exp } = await Lia.session();Решается с { session, exp }. Ошибки: not_open (человек не'не открыли ваше приложение в Lia еще; звоните init() первым, timeout.
#Lia.close()
Закрывает ваше приложение. Решает с null. Если вы включили подтверждение закрытия, это закрывается без вопросов.
#Lia.on(event, listener)
Слушает один из Lia'события. Возвращает функцию, которая прекращает слушание.
const stop = Lia.on("theme", function (data) { redraw(data.colorScheme); });
// later
stop();Бросает bad_listener если listener не't функцию. Слушатель, который вызывает ошибку, не'не останавливать других.
#Lia.off(event, listener)
Останавливает слушателя, добавленного с помощью Lia.on.
#Lia.onPause(listener)
То же самое Lia.on("pause", listener). Возвращает функцию, которая прекращает прослушивание.
#Lia.onResume(listener)
То же самое Lia.on("resume", listener).
#События
| Событие | Данные | Когда |
|---|---|---|
"pause" | ни одного | Lia перешел в фоновый режим, или один из Lia'ваш экраны (ваша зарплата, реклама, диалог) покрыли ваше приложение. Остановите таймеры и звук. |
"resume" | ни одного | Снова назад. |
"theme" | { theme, colorScheme } | Человек переключил Lia между светлым и темным. theme является новыми цветами. Переменные CSS уже обновлены. |
"viewport" | { height, expanded, isStateStable } | Ваша страница'высота изменилась (лист поднят, нижние кнопки показаны). |
"fullscreenChanged" | { isFullscreen, contentSafeArea } | Ваше приложение переключилось в полноэкранный режим или из него. |
"languageChanged" | { language, rtl } | Человек изменил Lia'язык. |
"startParam" | { startParam } | Уведомление или приглашение для вашей приложения было открыто, когда оно уже было открыто. |
"notificationsChanged" | { allowed } | Человек разрешил или заблокировал ваше приложение'уведомления. |
"soundChanged" | { on } | Человек приостановил или возобновил ваше приложение из Lia's ⋯ меню. |
"charge" | { chargeId, productId } | Платеж был подтвержден, когда не Lia.pay() ожидал (после перезагрузки). Также Lia.onCharge. |
"ad" | { state, format } | Реклама'этап: "loading", "showing" или "closed". Также Lia.onAd. |
"banner" | { state, position, height, reason? } | Баннер's "loading", "shown", "failed" или "hidden". Также Lia.onBanner. |
"nativeAd" | { state, placement, height? } | Нативная реклама's "loading", "showing" или "closed". Также Lia.onNativeAd. |
"safeAreaChanged" | { safeArea, contentSafeArea } | Прикрепленный баннер или нативная карточка взял или вернул край: Lia добавляет отступы вокруг него, поэтому ваша безопасная зона там — 0. CSS переменные уже обновлены. |
"mainButtonClicked" | ни одного | Основная кнопка нажата. Также Lia.mainButton.onClick. |
"secondaryButtonClicked" | ни одного | Вторая кнопка была нажата. |
"backButtonClicked" | ни одного | Заголовок'кнопка возврата была нажата. |
"settingsButtonClicked" | ни одного | Настройки были выбраны в меню ⋯. |
"accelerometerChanged" | { x, y, z } | Чтение, во время работы акселерометра. |
"gyroscopeChanged" | { x, y, z } | Чтение, во время работы гироскопа. |
"deviceOrientationChanged" | { alpha, beta, gamma } | Чтение, во время ориентации. |
"accelerometerStarted", "accelerometerStopped" | ни одного | Датчик запущен или остановлен. Также для gyroscope и deviceOrientation. |
Демо SDK обновляет свои собственные свойства (Lia.colorScheme, Lia.viewport, Lia.language, Lia.soundOn и остальное) перед запуском ваших слушателей.
Автоматически переведено. Английский — источник истины. Читать на английском