ytgame
Пространство имен верхнего уровня для SDK YouTube Playables.
Это переменная глобального масштаба в текущем окне. Вы НЕ ДОЛЖНЫ переопределять эту переменную.
Это переменная глобального масштаба в текущем окне. Вы НЕ ДОЛЖНЫ переопределять эту переменную.
| Пространства имен | |
|---|---|
ads | Функции и свойства, связанные с рекламой. |
engagement | Функции и свойства, связанные с вовлечением игроков. |
game | Функции и свойства, связанные с типичным игровым поведением. |
health | Функции и свойства, связанные со здоровьем игры. |
system | Функции и свойства системы YouTube. |
| Перечисления | |
|---|---|
Sdk Error Type | Типы ошибок, которые выдает SDK YouTube Playables. |
| Классы | |
|---|---|
Sdk Error | Объект ошибки, который генерирует SDK YouTube Playables. |
| Переменные | |
|---|---|
IN_ PLAYABLES_ ENV | Запускается ли игра в среде Playables. |
SDK_ VERSION | Версия SDK YouTube Playables. |
Перечисления
Const SdkErrorType
SdkErrorTypeПеременные
Const IN_PLAYABLES_ENV
IN_PLAYABLES_ENV : booleanytgame , чтобы убедиться, что SDK действительно загружен.- Пример
const inPlayablesEnv = typeof ytgame !== "undefined" && ytgame.IN_PLAYABLES_ENV;
// An example of where you may want to fork behavior for saving data. if (ytgame?.IN_PLAYABLES_ENV) { ytgame.game.saveData(dataStr); } else { window.localStorage.setItem("SAVE_DATA", dataStr); }
Const SDK_VERSION
SDK_VERSION : string- Пример
// Prints the SDK version to console. Do not do this in production. console.log(ytgame.SDK_VERSION);
ytgame.SdkError
Extends
Error Объект ошибки, который генерирует SDK YouTube Playables.
Объект
Объект
SdkError является дочерним элементом Error и содержит дополнительное поле. | Строители | |
|---|---|
constructor | |
| Характеристики | |
|---|---|
error Type | Тип ошибки. |
message | |
name | |
stack ? | |
Характеристики
errorType
errorType : SdkErrorTypeytgame.ads
Функции и свойства, связанные с рекламой.
| Функции | |
|---|---|
request Interstitial Ad | Запрашивает показ промежуточной рекламы. |
request Rewarded Ad | Запрашивает показ рекламы с вознаграждением для определенного типа вознаграждения. |
Функции
запросМежстраничнаяреклама
requestInterstitialAd ( ) : Promise < void > Запрашивает показ промежуточной рекламы.
Этот API не гарантирует показ рекламы. Не используйте его для вознаграждения игроков за просмотр рекламы.
Этот API не гарантирует показ рекламы. Не используйте его для вознаграждения игроков за просмотр рекламы.
- Пример
try { await ytgame.ads.requestInterstitialAd(); // Ad request successful, do something else. } catch (error) { // Handle errors, retry logic, etc. // Note that error may be undefined. }
| Возвраты | |
|---|---|
Promise < void > | Обещание, которое выполняется при успешном запросе или отклоняется/выбрасывает исключение при неудачном запросе. |
requestRewardedAd
requestRewardedAd ( rewardId : string ) : Promise < boolean > Запрашивает показ рекламы с вознаграждением для определенного типа вознаграждения.
Гарантий относительно показа рекламы не предоставляется.
Гарантий относительно показа рекламы не предоставляется.
- Пример
try { const isRewardEarned = await ytgame.ads.requestRewardedAd("reward-123"); // Handle reward being earned or not. } catch (error) { // Handle errors, retry logic, etc. // Note that error may be undefined. }
| Параметры | |
|---|---|
rewardId : string | Обязательно. Идентификатор, однозначно определяющий тип награды, которую можно получить. Для каждого типа награды необходимо использовать уникальный идентификатор и повторно использовать этот же идентификатор каждый раз, когда предлагается конкретный тип награды. Например, вы можете сделать идентификатор читаемым или UUID. Вы можете включить его в качестве жестко закодированного идентификатора в код игры для конкретной награды. Наши единственные требования — предоставить идентификатор, и чтобы он не содержал никаких пользовательских данных. Например:
|
| Возвраты | |
|---|---|
Promise < boolean > | Промис, который разрешается при успешном запросе, принимая значение true, если пользователь выполнил условия для получения вознаграждения, или false, если нет. Промис отклоняется/выбрасывает исключение при неудачном запросе. |
ytgame.engagement
Функции и свойства, связанные с вовлечением игроков.
| Перечисления | |
|---|---|
Content Type | Возможные типы контента. |
| Интерфейсы | |
|---|---|
Content | Объект контента, который игра отправляет на YouTube. |
Score | Объект счёта, который игра отправляет на YouTube. |
| Функции | |
|---|---|
open YTContent | Запрашивает у YouTube открытие контента, соответствующего указанному идентификатору контента. |
send Score | Отправляет результат на YouTube. |
Перечисления
Const ContentType
Функции
openYTContent
openYTContent ( content : Content ) : Promise < void > Запрашивает у YouTube открытие контента, соответствующего указанному идентификатору контента.
Как правило, в веб-версии контент откроется в новой вкладке. На мобильных устройствах видео откроется в мини-плеере, а текущий открытый плеер заменит на плейбл.
Как правило, в веб-версии контент откроется в новой вкладке. На мобильных устройствах видео откроется в мини-плеере, а текущий открытый плеер заменит на плейбл.
- Пример
// Open a video. async function showVideo(videoID: string) { try { await ytgame.engagement.openYTContent({ id: videoID, contentType: ytgame.engagement.ContentType.VIDEO, }); // Request successful, content may have opened. } catch (error) { // Handle errors, retry logic, etc. // Note that error may be undefined. } } // Open a Playable. async function openDifferentPlayable(playableID: string) { try { await ytgame.engagement.openYTContent({ id: playableID, contentType: ytgame.engagement.ContentType.PLAYABLE, }); // Request successful, content may have opened. // On mobile, the new Playable will replace the current one. } catch (error) { // Handle errors, retry logic, etc. // Note that error may be undefined. } }
| Параметры | |
|---|---|
content : Content | Контент для открытия на YouTube. |
| Возвраты | |
|---|---|
Promise < void > | Promise, который разрешается при успешном выполнении и отклоняется/выбрасывает исключение ytgame.SdkError при неудачном выполнении. |
sendScore
sendScore ( score : Score ) : Promise < void > Отправляет результат на YouTube.
Счёт должен отражать один из аспектов прогресса в игре. Если аспектов несколько, разработчик должен выбрать один для обеспечения согласованности. Счёт будет отсортирован, и наивысший результат будет отображаться в пользовательском интерфейсе YouTube, поэтому любой внутриигровой интерфейс рекордов должен соответствовать данным, передаваемым через этот API.
Счёт должен отражать один из аспектов прогресса в игре. Если аспектов несколько, разработчик должен выбрать один для обеспечения согласованности. Счёт будет отсортирован, и наивысший результат будет отображаться в пользовательском интерфейсе YouTube, поэтому любой внутриигровой интерфейс рекордов должен соответствовать данным, передаваемым через этот API.
- Пример
async function onScoreAwarded(score: number) { try { await ytgame.engagement.sendScore({ value: score }); // Score sent successfully, do something else. } catch (error) { // Handle errors, retry logic, etc. // Note that error may be undefined. } }
| Параметры | |
|---|---|
score : Score | Результат, который нужно отправить на YouTube. |
| Возвраты | |
|---|---|
Promise < void > | Promise, который разрешается при успешном выполнении и отклоняется/выбрасывает исключение ytgame.SdkError при неудачном выполнении. |
ytgame.engagement.Content
Объект контента, который игра отправляет на YouTube.
| Характеристики | |
|---|---|
content Type ? | Тип контента для открытия. |
id | Идентификатор контента, который мы хотим открыть. |
Характеристики
Optional тип содержимого
contentType ?: ContentTypeVIDEO . идентификатор
id : stringytgame.engagement.Score
Объект счёта, который игра отправляет на YouTube.
| Характеристики | |
|---|---|
value | Значение оценки, выраженное целым числом. |
Характеристики
ценить
value : numberytgame.game
Функции и свойства, связанные с типичным игровым поведением.
| Функции | |
|---|---|
first Frame Ready | Уведомляет YouTube о том, что в игре начали отображаться кадры. |
game Ready | Уведомляет YouTube о том, что игра готова к взаимодействию с игроками. |
load Data | Загружает игровые данные с YouTube в виде сериализованной строки. |
save Data | Сохраняет игровые данные на YouTube в виде сериализованной строки. |
Функции
firstFrameReady
firstFrameReady ( ) : void Уведомляет YouTube о том, что в игре начали отображаться кадры.
Игра ОБЯЗАТЕЛЬНО должна вызывать этот API. В противном случае игра не будет показана пользователям.
Игра ОБЯЗАТЕЛЬНО должна вызывать этот API. В противном случае игра не будет показана пользователям.
firstFrameReady() ДОЛЖНА быть вызвана перед gameReady() .- Пример
function onGameInitialized() { ytgame.game.firstFrameReady(); }
готовый к игре
gameReady ( ) : void Уведомляет YouTube о том, что игра готова к взаимодействию с игроками.
Игра ОБЯЗАТЕЛЬНО должна вызывать этот API, когда с ней можно взаимодействовать. Игра НЕ ДОЛЖНА вызывать этот API, когда еще отображается экран загрузки. В противном случае игра не пройдет процесс сертификации YouTube.
Игра ОБЯЗАТЕЛЬНО должна вызывать этот API, когда с ней можно взаимодействовать. Игра НЕ ДОЛЖНА вызывать этот API, когда еще отображается экран загрузки. В противном случае игра не пройдет процесс сертификации YouTube.
- Пример
function onGameInteractable() { ytgame.game.gameReady(); }
загрузка данных
loadData ( ) : Promise < string > Загружает игровые данные с YouTube в виде сериализованной строки.
Игра должна обрабатывать любые преобразования строки во внутренний формат.
Игра должна обрабатывать любые преобразования строки во внутренний формат.
- Пример
async function gameSetup() { try { const data = await ytgame.game.loadData(); // Load succeeded, do something with data. } catch (error) { // Handle errors, retry logic, etc. // Note that error may be undefined. } }
| Возвраты | |
|---|---|
Promise < string > | Promise, который завершается при успешной загрузке и отклоняется с ошибкой ytgame.SdkError при неудачной загрузке. |
сохранитьДанные
saveData ( data : string ) : Promise < void > Сохраняет игровые данные на YouTube в виде сериализованной строки.
Строка должна быть допустимой, корректно сформированной строкой UTF-16 и иметь максимальный размер 3 МиБ. Игра должна обрабатывать любые преобразования между строкой и внутренним форматом. При необходимости используйте
Строка должна быть допустимой, корректно сформированной строкой UTF-16 и иметь максимальный размер 3 МиБ. Игра должна обрабатывать любые преобразования между строкой и внутренним форматом. При необходимости используйте
String.isWellFormed() для проверки корректности строки.- Пример
async function saveGame() { try { ytgame.game.saveData(JSON.stringify(gameSave)); // Save succeeded. } catch (error) { // Handle errors, retry logic, etc. // Note that error may be undefined. } }
| Параметры | |
|---|---|
data : string | |
| Возвраты | |
|---|---|
Promise < void > | Promise, который разрешается при успешном сохранении и отклоняется с ошибкой ytgame.SdkError при неудачном сохранении. |
ytgame.health
Функции и свойства, связанные со здоровьем игры.
| Функции | |
|---|---|
log Error | В YouTube зафиксирована ошибка. |
log Warning | В YouTube отправлено предупреждение. |
Функции
logError
logError ( ) : void В YouTube зафиксирована ошибка.
Примечание: Данный API работает по принципу "максимальные усилия" и имеет ограничения по количеству запросов, что может привести к потере данных.
Примечание: Данный API работает по принципу "максимальные усилия" и имеет ограничения по количеству запросов, что может привести к потере данных.
- Пример
function onError() { ytgame.health.logError(); }
logWarning
logWarning ( ) : void В YouTube отправлено предупреждение.
Примечание: Данный API работает по принципу "максимальные усилия" и имеет ограничения по количеству запросов, что может привести к потере данных.
Примечание: Данный API работает по принципу "максимальные усилия" и имеет ограничения по количеству запросов, что может привести к потере данных.
- Пример
function onWarning() { ytgame.health.logWarning(); }
ytgame.system
Функции и свойства системы YouTube.
| Функции | |
|---|---|
get Language | Возвращает язык, установленный в настройках YouTube пользователя, в виде языкового тега BCP-47 . |
is Audio Enabled | Возвращает значение, указывающее, включен ли звук игры в настройках YouTube. |
on Audio Enabled Change | Устанавливает функцию обратного вызова, которая будет запускаться при срабатывании события изменения настроек звука на YouTube. |
on Pause | Устанавливает функцию обратного вызова, которая будет запускаться при срабатывании события паузы игры на YouTube. |
on Resume | Устанавливает функцию обратного вызова, которая будет запускаться при срабатывании события возобновления игры на YouTube. |
Функции
getLanguage
getLanguage ( ) : Promise < string > Возвращает язык, установленный в настройках YouTube пользователя, в виде языкового тега BCP-47 .
Не используйте другие функции для определения языка или региональных настроек пользователя, а также не сохраняйте его языковые предпочтения в облаке. Вместо этого используйте эту функцию, чтобы обеспечить единообразие пользовательского опыта на YouTube.
Не используйте другие функции для определения языка или региональных настроек пользователя, а также не сохраняйте его языковые предпочтения в облаке. Вместо этого используйте эту функцию, чтобы обеспечить единообразие пользовательского опыта на YouTube.
- Пример
const localeTag = await ytgame.system.getLanguage(); // `localeTag` is now set to something like "en-US" or "es-419".
| Возвраты | |
|---|---|
Promise < string > | Promise, который завершается при успешном получении языка и отклоняется с ошибкой ytgame.SdkError при неудаче. |
isAudioEnabled
isAudioEnabled ( ) : boolean Возвращает значение, указывающее, включен ли звук игры в настройках YouTube.
Игра ДОЛЖНА использовать это для инициализации состояния игрового звука.
Игра ДОЛЖНА использовать это для инициализации состояния игрового звука.
- Пример
function initGameSound() { if (ytgame.system.isAudioEnabled()) { // Enable game audio. } else { // Disable game audio. } }
| Возвраты | |
|---|---|
boolean | Логическое значение, указывающее, включен ли звук. |
onAudioEnabledChange
onAudioEnabledChange ( callback : ( ( isAudioEnabled : boolean ) => void ) ) : ( ( ) => void ) Устанавливает функцию обратного вызова, которая будет запускаться при срабатывании события изменения настроек звука на YouTube.
Игра ОБЯЗАТЕЛЬНО должна использовать этот API для обновления состояния звука в игре.
Игра ОБЯЗАТЕЛЬНО должна использовать этот API для обновления состояния звука в игре.
- Пример
ytgame.system.onAudioEnabledChange((isAudioEnabled) => { if (isAudioEnabled) { // Enable game audio. } else { // Disable game audio. } });
| Параметры | |
|---|---|
callback : ( ( isAudioEnabled : boolean ) => void ) | Функция обратного вызова, которая должна быть запущена. |
| Возвраты | |
|---|---|
( ( ) => void ) | Функция для отмены установки обычно не используемого механизма обратного вызова. |
onPause
onPause ( callback : ( ( ) => void ) ) : ( ( ) => void ) Устанавливает функцию обратного вызова, которая будет срабатывать при возникновении события паузы в игре на YouTube. У игры есть короткий промежуток времени для сохранения любого состояния перед выбыванием.
Функция onPause вызывается для всех типов пауз, в том числе при выходе пользователя из игры. Нет гарантии, что игра возобновится.
Функция onPause вызывается для всех типов пауз, в том числе при выходе пользователя из игры. Нет гарантии, что игра возобновится.
- Пример
ytgame.system.onPause(() => { pauseGame(); }); function pauseGame() { // Logic to pause game state. }
| Параметры | |
|---|---|
callback : ( ( ) => void ) | Функция обратного вызова, которая должна быть запущена. |
| Возвраты | |
|---|---|
( ( ) => void ) | Функция для отмены установки обычно не используемого механизма обратного вызова. |
onResume
onResume ( callback : ( ( ) => void ) ) : ( ( ) => void ) Устанавливает функцию обратного вызова, которая будет запускаться при срабатывании события возобновления игры на YouTube.
После паузы возобновление игры не гарантируется.
После паузы возобновление игры не гарантируется.
- Пример
ytgame.system.onResume(() => { resumeGame(); }); function resumeGame() { // Logic to resume game state. }
| Параметры | |
|---|---|
callback : ( ( ) => void ) | Функция обратного вызова, которая должна быть запущена. |
| Возвраты | |
|---|---|
( ( ) => void ) | Функция для отмены установки обычно не используемого механизма обратного вызова. |