ytgame
Przestrzeń nazw najwyższego poziomu w pakiecie YouTube Playables SDK.
Jest to zmienna o zasięgu globalnym w bieżącym oknie. Nie wolno zastępować tej zmiennej.
Jest to zmienna o zasięgu globalnym w bieżącym oknie. Nie wolno zastępować tej zmiennej.
| Przestrzenie nazw | |
|---|---|
ads
|
Funkcje i właściwości związane z reklamami. |
engagement
|
Funkcje i właściwości związane z zaangażowaniem graczy. |
game
|
Funkcje i właściwości związane z ogólnymi zachowaniami w grze. |
health
|
Funkcje i właściwości związane ze stanem gry. |
system
|
Funkcje i właściwości związane z systemem YouTube. |
| Wyliczenia | |
|---|---|
Sdk
|
Rodzaje błędów, które zgłasza pakiet SDK Pokoju gier na YouTube. |
| Zajęcia | |
|---|---|
Sdk
|
Obiekt błędu zgłaszany przez pakiet SDK Pokoju gier na YouTube. |
| Zmienne | |
|---|---|
IN_
|
Informacja o tym, czy gra jest uruchomiona w środowisku Pokoju gier. |
SDK_
|
Wersja pakietu SDK Pokoju gier na YouTube. |
Wyliczenia
Const SdkErrorType
SdkErrorType
Zmienne
Const IN_PLAYABLES_ENV
IN_PLAYABLES_ENV: boolean
ytgame, aby mieć pewność, że pakiet SDK został wczytany.
- Przykład
-
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
- Przykład
-
// Prints the SDK version to console. Do not do this in production. console.log(ytgame.SDK_VERSION);
ytgame.SdkError
Rozszerza
Error
Obiekt błędu zgłaszany przez pakiet YouTube Playables SDK.
Obiekt
Obiekt
SdkError jest elementem podrzędnym obiektu Error i zawiera dodatkowe pole.
| Zespoły | |
|---|---|
constructor
|
|
| Właściwości | |
|---|---|
error
|
Typ błędu. |
message
|
|
name
|
|
stack
|
|
Właściwości
errorType
errorType:
SdkErrorType
ytgame.ads
Funkcje i właściwości związane z reklamami.
| Funkcje | |
|---|---|
request
|
Żąda wyświetlenia reklamy pełnoekranowej. |
request
|
Wysyła prośbę o wyświetlenie reklamy z nagrodą w przypadku określonego typu nagrody. |
Funkcje
requestInterstitialAd
requestInterstitialAd(): Promise<void>
Wysyła żądanie wyświetlenia reklamy pełnoekranowej.
Nie gwarantuje, że reklama zostanie wyświetlona. Nie używaj tego interfejsu API do nagradzania graczy za oglądanie reklam.
Nie gwarantuje, że reklama zostanie wyświetlona. Nie używaj tego interfejsu API do nagradzania graczy za oglądanie reklam.
- Przykład
-
try { await ytgame.ads.requestInterstitialAd(); // Ad request successful, do something else. } catch (error) { // Handle errors, retry logic, etc. // Note that error may be undefined. }
| Zwroty | |
|---|---|
Promise<void>
|
obietnica, która jest spełniana w przypadku udanego żądania lub odrzucana/zgłasza wyjątek w przypadku nieudanego żądania. |
requestRewardedAd
requestRewardedAd(rewardId: string): Promise<boolean>
Wysyła żądanie wyświetlenia reklamy z nagrodą w przypadku określonego typu nagrody.
Nie gwarantuje, że reklama została wyświetlona.
Nie gwarantuje, że reklama została wyświetlona.
- Przykład
-
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. }
| Parametry | |
|---|---|
rewardId: string
|
Wymagane. Identyfikator, który w niepowtarzalny sposób określa typ nagrody, którą można odebrać.
Musisz użyć unikalnego identyfikatora dla każdego typu nagrody i ponownie wykorzystywać ten sam identyfikator przy każdym oferowaniu tego konkretnego typu nagrody. Możesz na przykład ustawić identyfikator w formacie czytelnym lub UUID. Możesz umieścić ten identyfikator w kodzie gry jako identyfikator zakodowany na stałe dla konkretnej nagrody. Wymagamy tylko podania identyfikatora, który nie może zawierać danych użytkownika. Przykład:
|
| Zwroty | |
|---|---|
Promise<boolean>
|
Obietnica, która jest spełniana w przypadku udanej prośby z wartością „prawda”, jeśli użytkownik spełnił warunki otrzymania nagrody, lub „fałsz”, jeśli ich nie spełnił. Obietnica odrzuca lub zgłasza błąd w przypadku nieudanego żądania. |
ytgame.engagement
Funkcje i właściwości związane z zaangażowaniem graczy.
| Wyliczenia | |
|---|---|
Content
|
Możliwe typy treści. |
| Interfejsy | |
|---|---|
Content
|
Obiekt treści, który gra wysyła do YouTube. |
Score
|
Obiekt wyniku, który gra wysyła do YouTube. |
| Funkcje | |
|---|---|
open
|
Wysyła do YouTube prośbę o otwarcie treści odpowiadających podanemu identyfikatorowi treści.
|
send
|
Wysyła wynik do YouTube. |
Wyliczenia
Const ContentType
Funkcje
openYTContent
openYTContent(content: Content): Promise<void>
Prośba do YouTube o otwarcie treści odpowiadających podanemu identyfikatorowi treści.
Zwykle spowoduje to otwarcie treści w nowej karcie w internecie. Na urządzeniu mobilnym film otworzy się w mini odtwarzaczu, a element Playable zastąpi obecnie otwarty element Playable.
Zwykle spowoduje to otwarcie treści w nowej karcie w internecie. Na urządzeniu mobilnym film otworzy się w mini odtwarzaczu, a element Playable zastąpi obecnie otwarty element Playable.
- Przykład
-
// 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. } }
| Parametry | |
|---|---|
content:
Content
|
treści, które mają się otworzyć w YouTube. |
| Zwroty | |
|---|---|
Promise<void>
|
Obietnica, która jest spełniana w przypadku powodzenia i odrzucana lub zgłasza błąd ytgame.SdkError w przypadku niepowodzenia.
|
sendScore
sendScore(score: Score): Promise<void>
Wysyła wynik do YouTube.
Wynik powinien odzwierciedlać jeden z wymiarów postępu w grze. Jeśli jest kilka wymiarów, deweloper musi wybrać jeden z nich, aby zachować spójność. Wyniki będą sortowane, a najwyższy z nich będzie wyświetlany w interfejsie YouTube. Interfejs wyników w grze powinien być zgodny z danymi przesyłanymi przez ten interfejs API.
Wynik powinien odzwierciedlać jeden z wymiarów postępu w grze. Jeśli jest kilka wymiarów, deweloper musi wybrać jeden z nich, aby zachować spójność. Wyniki będą sortowane, a najwyższy z nich będzie wyświetlany w interfejsie YouTube. Interfejs wyników w grze powinien być zgodny z danymi przesyłanymi przez ten interfejs API.
- Przykład
-
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. } }
| Parametry | |
|---|---|
score:
Score
|
wynik do wysłania do YouTube. |
| Zwroty | |
|---|---|
Promise<void>
|
Obietnica, która jest spełniana w przypadku powodzenia i odrzucana lub zgłasza błąd ytgame.SdkError w przypadku niepowodzenia.
|
ytgame.engagement.Content
Obiekt treści, który gra wysyła do YouTube.
| Właściwości | |
|---|---|
content
|
Typ treści do otwarcia. |
id
|
Identyfikator treści, którą chcemy otworzyć. |
Właściwości
Optional contentType
contentType?:
ContentType
VIDEO.
id
id: string
ytgame.engagement.Score
Obiekt wyniku, który gra wysyła do YouTube.
| Właściwości | |
|---|---|
value
|
Wartość wyniku wyrażona jako liczba całkowita. |
Właściwości
value
value: number
ytgame.game
Funkcje i właściwości związane z ogólnymi zachowaniami w grze.
| Funkcje | |
|---|---|
first
|
Informuje YouTube, że gra zaczęła wyświetlać klatki. |
game
|
Powiadamia YouTube, że gra jest gotowa do interakcji z graczami.
|
load
|
Wczytuje dane gry z YouTube w postaci serializowanego ciągu znaków. |
save
|
Zapisuje dane z gry w YouTube w postaci serializowanego ciągu tekstowego. |
Funkcje
firstFrameReady
firstFrameReady(): void
Informuje YouTube, że gra zaczęła wyświetlać klatki.
Gra MUSI wywołać ten interfejs API. W przeciwnym razie gra nie będzie wyświetlana użytkownikom. Metodę
Gra MUSI wywołać ten interfejs API. W przeciwnym razie gra nie będzie wyświetlana użytkownikom. Metodę
firstFrameReady() MUSI wywołać przed gameReady().
- Przykład
-
function onGameInitialized() { ytgame.game.firstFrameReady(); }
gameReady
gameReady(): void
Powiadamia YouTube, że gra jest gotowa do interakcji z graczami.
Gra MUSI wywołać ten interfejs API, gdy będzie można z niej korzystać. Gra NIE MOŻE wywoływać tego interfejsu API, gdy nadal wyświetla się ekran wczytywania. W przeciwnym razie gra nie przejdzie procesu certyfikacji w YouTube.
Gra MUSI wywołać ten interfejs API, gdy będzie można z niej korzystać. Gra NIE MOŻE wywoływać tego interfejsu API, gdy nadal wyświetla się ekran wczytywania. W przeciwnym razie gra nie przejdzie procesu certyfikacji w YouTube.
- Przykład
-
function onGameInteractable() { ytgame.game.gameReady(); }
loadData
loadData(): Promise<string>
Wczytuje dane gry z YouTube w postaci serializowanego ciągu znaków.
Gra musi obsługiwać analizowanie ciągu znaków i przekształcanie go do formatu wewnętrznego.
Gra musi obsługiwać analizowanie ciągu znaków i przekształcanie go do formatu wewnętrznego.
- Przykład
-
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. } }
| Zwroty | |
|---|---|
Promise<string>
|
Obietnica, która jest spełniana, gdy wczytywanie się powiedzie, i odrzucana z wartością ytgame.SdkError, gdy się nie powiedzie.
|
saveData
saveData(data: string): Promise<void>
Zapisuje dane z gier w YouTube w postaci serializowanego ciągu znaków.
Ciąg znaków musi być prawidłowym, dobrze sformatowanym ciągiem znaków UTF-16 o maksymalnym rozmiarze 3 MiB. Gra musi obsługiwać wszelkie analizowanie ciągu znaków i przekształcanie go w format wewnętrzny. W razie potrzeby użyj
Ciąg znaków musi być prawidłowym, dobrze sformatowanym ciągiem znaków UTF-16 o maksymalnym rozmiarze 3 MiB. Gra musi obsługiwać wszelkie analizowanie ciągu znaków i przekształcanie go w format wewnętrzny. W razie potrzeby użyj
String.isWellFormed(), aby sprawdzić, czy ciąg jest prawidłowo sformatowany.
- Przykład
-
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. } }
| Parametry | |
|---|---|
data: string
|
|
| Zwroty | |
|---|---|
Promise<void>
|
Obietnica, która jest spełniana, gdy zapisywanie się powiodło, i odrzucana z wartością ytgame.SdkError, gdy się nie powiodło.
|
ytgame.health
Funkcje i właściwości związane ze stanem gry.
| Funkcje | |
|---|---|
log
|
Rejestruje błąd w YouTube. |
log
|
Rejestruje ostrzeżenie w YouTube. |
Funkcje
logError
logError(): void
Rejestruje błąd w YouTube.
Uwaga: ten interfejs API działa w trybie „najlepsze starania” i ma ograniczone limity, co może powodować utratę danych.
Uwaga: ten interfejs API działa w trybie „najlepsze starania” i ma ograniczone limity, co może powodować utratę danych.
- Przykład
-
function onError() { ytgame.health.logError(); }
logWarning
logWarning(): void
Rejestruje ostrzeżenie w YouTube.
Uwaga: ten interfejs API działa w trybie „best-effort” i ma ograniczone limity, co może powodować utratę danych.
Uwaga: ten interfejs API działa w trybie „best-effort” i ma ograniczone limity, co może powodować utratę danych.
- Przykład
-
function onWarning() { ytgame.health.logWarning(); }
ytgame.system
Funkcje i właściwości związane z systemem YouTube.
| Funkcje | |
|---|---|
get
|
Zwraca język ustawiony w ustawieniach YouTube użytkownika w postaci tagu języka zgodnego ze standardem BCP-47.
|
is
|
Zwraca informację, czy dźwięk z gry jest włączony w ustawieniach YouTube. |
on
|
Ustawia wywołanie zwrotne, które ma być uruchamiane, gdy z YouTube zostanie wysłane zdarzenie zmiany ustawień dźwięku.
|
on
|
Ustawia wywołanie zwrotne, które ma być wywoływane, gdy z YouTube zostanie wyemitowane zdarzenie wstrzymania gry.
|
on
|
Ustawia wywołanie zwrotne, które ma być uruchamiane, gdy z YouTube zostanie wywołane zdarzenie wznowienia gry.
|
Funkcje
getLanguage
getLanguage(): Promise<string>
Zwraca język ustawiony w ustawieniach YouTube użytkownika w postaci tagu języka BCP-47.
Nie używaj innych funkcji do określania języka lub ustawień regionalnych użytkownika ani nie przechowuj jego preferencji językowych w zapisie w chmurze. Zamiast tego używaj tej funkcji, aby zapewnić spójność wrażeń użytkowników w YouTube.
Nie używaj innych funkcji do określania języka lub ustawień regionalnych użytkownika ani nie przechowuj jego preferencji językowych w zapisie w chmurze. Zamiast tego używaj tej funkcji, aby zapewnić spójność wrażeń użytkowników w YouTube.
- Przykład
-
const localeTag = await ytgame.system.getLanguage(); // `localeTag` is now set to something like "en-US" or "es-419".
| Zwroty | |
|---|---|
Promise<string>
|
Obietnica, która zostanie spełniona, gdy pobieranie języka się powiedzie, a w przypadku niepowodzenia zostanie odrzucona z wartością ytgame.SdkError.
|
isAudioEnabled
isAudioEnabled(): boolean
Zwraca informację, czy dźwięk z gry jest włączony w ustawieniach YouTube.
Gra POWINNA używać tej funkcji do inicjowania stanu dźwięku z gry.
Gra POWINNA używać tej funkcji do inicjowania stanu dźwięku z gry.
- Przykład
-
function initGameSound() { if (ytgame.system.isAudioEnabled()) { // Enable game audio. } else { // Disable game audio. } }
| Zwroty | |
|---|---|
boolean
|
wartość logiczna wskazująca, czy dźwięk jest włączony. |
onAudioEnabledChange
onAudioEnabledChange(callback: ((isAudioEnabled: boolean) => void)): (() => void)
Ustawia wywołanie zwrotne, które ma być aktywowane, gdy z YouTube zostanie wyemitowane zdarzenie zmiany ustawień dźwięku.
Gra MUSI używać tego interfejsu API do aktualizowania stanu dźwięku w grze.
Gra MUSI używać tego interfejsu API do aktualizowania stanu dźwięku w grze.
- Przykład
-
ytgame.system.onAudioEnabledChange((isAudioEnabled) => { if (isAudioEnabled) { // Enable game audio. } else { // Disable game audio. } });
| Parametry | |
|---|---|
callback: ((isAudioEnabled: boolean) => void)
|
wywołanie zwrotne, które ma zostać wywołane. |
| Zwroty | |
|---|---|
(() => void)
|
funkcja do anulowania wywołania zwrotnego, która jest zwykle nieużywana. |
onPause
onPause(callback: (() => void)): (() => void)
Ustawia wywołanie zwrotne, które ma być wywoływane, gdy z YouTube zostanie wyemitowane zdarzenie wstrzymania gry. Gra ma krótki czas na zapisanie stanu przed usunięciem.
onPause jest wywoływana w przypadku wszystkich typów wstrzymania, w tym gdy użytkownik opuści grę. Nie ma gwarancji, że gra zostanie wznowiona.
onPause jest wywoływana w przypadku wszystkich typów wstrzymania, w tym gdy użytkownik opuści grę. Nie ma gwarancji, że gra zostanie wznowiona.
- Przykład
-
ytgame.system.onPause(() => { pauseGame(); }); function pauseGame() { // Logic to pause game state. }
| Parametry | |
|---|---|
callback: (() => void)
|
wywołanie zwrotne, które ma zostać wywołane. |
| Zwroty | |
|---|---|
(() => void)
|
funkcja do anulowania wywołania zwrotnego, która jest zwykle nieużywana. |
onResume
onResume(callback: (() => void)): (() => void)
Ustawia wywołanie zwrotne, które ma być wywoływane, gdy z YouTube zostanie wyemitowane zdarzenie wznowienia gry.
Po wstrzymaniu gry nie ma gwarancji, że zostanie ona wznowiona.
Po wstrzymaniu gry nie ma gwarancji, że zostanie ona wznowiona.
- Przykład
-
ytgame.system.onResume(() => { resumeGame(); }); function resumeGame() { // Logic to resume game state. }
| Parametry | |
|---|---|
callback: (() => void)
|
wywołanie zwrotne, które ma zostać wywołane. |
| Zwroty | |
|---|---|
(() => void)
|
funkcja do anulowania wywołania zwrotnego, która jest zwykle nieużywana. |