ytgame
Der Namespace der obersten Ebene für das YouTube Playables SDK.
Dies ist eine global gültige Variable im aktuellen Fenster. Sie DÜRFEN diese Variable nicht überschreiben.
Dies ist eine global gültige Variable im aktuellen Fenster. Sie DÜRFEN diese Variable nicht überschreiben.
| Namespaces | |
|---|---|
ads
|
Die Funktionen und Eigenschaften im Zusammenhang mit Anzeigen. |
engagement
|
Die Funktionen und Eigenschaften im Zusammenhang mit der Spielerinteraktion. |
game
|
Die Funktionen und Eigenschaften, die sich auf allgemeine Spielverhaltensweisen beziehen. |
health
|
Die Funktionen und Eigenschaften, die sich auf die Spielgesundheit beziehen. |
system
|
Die Funktionen und Eigenschaften, die sich auf das YouTube-System beziehen. |
| Aufzählungen | |
|---|---|
Sdk
|
Die Arten von Fehlern, die das YouTube Playables SDK ausgibt. |
| Klassen | |
|---|---|
Sdk
|
Das Fehlerobjekt, das vom YouTube Playables SDK ausgegeben wird. |
| Variablen | |
|---|---|
IN_
|
Gibt an, ob das Spiel in der Playables-Umgebung ausgeführt wird. |
SDK_
|
Die YouTube Playables SDK-Version. |
- Weitere Informationen
Aufzählungen
Const SdkErrorType
SdkErrorType
Variablen
Const IN_PLAYABLES_ENV
IN_PLAYABLES_ENV: boolean
ytgame, um sicherzustellen, dass das SDK tatsächlich geladen wird.
- Beispiel
-
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
- Beispiel
-
// Prints the SDK version to console. Do not do this in production. console.log(ytgame.SDK_VERSION);
ytgame.SdkError
Erweitert
Error
Das Fehlerobjekt, das vom YouTube Playables SDK ausgegeben wird.
Das Objekt
Das Objekt
SdkError ist ein untergeordnetes Element von Error und enthält ein zusätzliches Feld.
| Konstruktoren | |
|---|---|
constructor
|
|
| Properties | |
|---|---|
error
|
Die Art des Fehlers. |
message
|
|
name
|
|
stack
|
|
Properties
errorType
errorType:
SdkErrorType
ytgame.ads
Die Funktionen und Eigenschaften im Zusammenhang mit Anzeigen.
| Funktionen | |
|---|---|
request
|
Fordert die Auslieferung einer Interstitial-Anzeige an. |
request
|
Fordert an, dass eine Anzeige mit Prämie für einen bestimmten Prämientyp ausgeliefert wird. |
Funktionen
requestInterstitialAd
requestInterstitialAd(): Promise<void>
Fordert an, dass eine Interstitial-Anzeige ausgeliefert wird.
Es wird nicht garantiert, dass die Anzeige ausgeliefert wird. Verwenden Sie diese API nicht, um Spieler für das Ansehen einer Anzeige zu belohnen.
Es wird nicht garantiert, dass die Anzeige ausgeliefert wird. Verwenden Sie diese API nicht, um Spieler für das Ansehen einer Anzeige zu belohnen.
- Beispiel
-
try { await ytgame.ads.requestInterstitialAd(); // Ad request successful, do something else. } catch (error) { // Handle errors, retry logic, etc. // Note that error may be undefined. }
| Ausgabe | |
|---|---|
Promise<void>
|
Ein Promise, das bei einer erfolgreichen Anfrage aufgelöst wird oder bei einer nicht erfolgreichen Anfrage abgelehnt oder ausgelöst wird. |
requestRewardedAd
requestRewardedAd(rewardId: string): Promise<boolean>
Fordert an, dass eine Anzeige mit Prämie für einen bestimmten Prämientyp ausgeliefert wird.
Es wird nicht garantiert, dass die Anzeige ausgeliefert wird.
Es wird nicht garantiert, dass die Anzeige ausgeliefert wird.
- Beispiel
-
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. }
| Parameter | |
|---|---|
rewardId: string
|
Erforderlich. Eine Kennung, die den einlösbaren Prämietyp eindeutig identifiziert.
Sie müssen für jede Art von Prämie eine eindeutige ID verwenden und diese ID jedes Mal wiederverwenden, wenn diese bestimmte Art von Prämie angeboten wird. Sie können beispielsweise die ID lesbar oder als UUID festlegen. Sie können diese als fest codierte ID im Spielcode für die jeweilige Prämie einfügen. Die einzige Anforderung ist, dass Sie eine ID angeben und diese keine Nutzerdaten enthält. Beispiel:
|
| Ausgabe | |
|---|---|
Promise<boolean>
|
Ein Promise, das bei einer erfolgreichen Anfrage mit dem Wert „true“ aufgelöst wird, wenn der Nutzer die Bedingungen für den Erhalt einer Prämie erfüllt hat, oder mit dem Wert „false“, wenn dies nicht der Fall ist. Das Promise wird bei einer nicht erfolgreichen Anfrage abgelehnt oder es wird ein Fehler ausgegeben. |
ytgame.engagement
Die Funktionen und Eigenschaften im Zusammenhang mit der Spielerinteraktion.
| Aufzählungen | |
|---|---|
Content
|
Die möglichen Arten von Inhalten. |
| Schnittstellen | |
|---|---|
Content
|
Das Inhaltsobjekt, das das Spiel an YouTube sendet. |
Score
|
Das Score-Objekt, das das Spiel an YouTube sendet. |
| Funktionen | |
|---|---|
open
|
Fordert YouTube auf, Inhalte zu öffnen, die der angegebenen Content ID entsprechen.
|
send
|
Es wird eine Punktzahl an YouTube gesendet. |
Aufzählungen
Const ContentType
Funktionen
openYTContent
openYTContent(content: Content): Promise<void>
Fordert YouTube auf, Inhalte zu öffnen, die der angegebenen Content-ID entsprechen.
In der Regel werden die Inhalte im Web in einem neuen Tab geöffnet. Auf Mobilgeräten wird ein Video im Miniplayer geöffnet und das aktuell geöffnete Playable wird durch ein anderes Playable ersetzt.
In der Regel werden die Inhalte im Web in einem neuen Tab geöffnet. Auf Mobilgeräten wird ein Video im Miniplayer geöffnet und das aktuell geöffnete Playable wird durch ein anderes Playable ersetzt.
- Beispiel
-
// 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. } }
| Parameter | |
|---|---|
content:
Content
|
die Inhalte, die auf YouTube geöffnet werden sollen. |
| Ausgabe | |
|---|---|
Promise<void>
|
Ein Promise, das bei Erfolg aufgelöst und bei einem Fehler mit einem ytgame.SdkError abgelehnt oder ausgelöst wird.
|
sendScore
sendScore(score: Score): Promise<void>
Sendet einen Wert an YouTube.
Der Wert sollte eine Dimension des Fortschritts im Spiel darstellen. Wenn es mehrere Dimensionen gibt, muss der Entwickler eine Dimension auswählen, die konsistent ist. Die Punktzahlen werden sortiert und der höchste Highscore wird in der YouTube-Benutzeroberfläche angezeigt. Die Benutzeroberfläche für den höchsten Highscore im Spiel sollte also mit den über diese API gesendeten Daten übereinstimmen.
Der Wert sollte eine Dimension des Fortschritts im Spiel darstellen. Wenn es mehrere Dimensionen gibt, muss der Entwickler eine Dimension auswählen, die konsistent ist. Die Punktzahlen werden sortiert und der höchste Highscore wird in der YouTube-Benutzeroberfläche angezeigt. Die Benutzeroberfläche für den höchsten Highscore im Spiel sollte also mit den über diese API gesendeten Daten übereinstimmen.
- Beispiel
-
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. } }
| Parameter | |
|---|---|
score:
Score
|
Die Punktzahl, die an YouTube gesendet werden soll. |
| Ausgabe | |
|---|---|
Promise<void>
|
Ein Promise, das bei Erfolg aufgelöst und bei einem Fehler mit einem ytgame.SdkError abgelehnt oder ausgelöst wird.
|
ytgame.engagement.Content
Das Inhaltsobjekt, das das Spiel an YouTube sendet.
| Properties | |
|---|---|
content
|
Die Art des Inhalts, der geöffnet werden soll. |
id
|
Die ID der Inhalte, die wir öffnen möchten. |
Properties
Optional contentType
contentType?:
ContentType
VIDEO ausgegangen.
id
id: string
ytgame.engagement.Score
Das Score-Objekt, das das Spiel an YouTube sendet.
| Properties | |
|---|---|
value
|
Der als Ganzzahl ausgedrückte Punktwert. |
Properties
Wert
value: number
ytgame.game
Die Funktionen und Eigenschaften, die sich auf allgemeine Spielverhaltensweisen beziehen.
| Funktionen | |
|---|---|
first
|
Benachrichtigt YouTube, dass das Spiel mit der Anzeige von Frames begonnen hat. |
game
|
Benachrichtigt YouTube, dass das Spiel für die Interaktion mit Spielern bereit ist.
|
load
|
Lädt Spieldaten von YouTube in Form eines serialisierten Strings. |
save
|
Speichert Spieldaten in YouTube in Form eines serialisierten Strings. |
Funktionen
firstFrameReady
firstFrameReady(): void
Benachrichtigt YouTube, dass das Spiel mit der Anzeige von Frames begonnen hat.
Das Spiel MUSS diese API aufrufen. Andernfalls wird das Spiel Nutzern nicht angezeigt.
Das Spiel MUSS diese API aufrufen. Andernfalls wird das Spiel Nutzern nicht angezeigt.
firstFrameReady() MUSS vor gameReady() aufgerufen werden.
- Beispiel
-
function onGameInitialized() { ytgame.game.firstFrameReady(); }
gameReady
gameReady(): void
Benachrichtigt YouTube, dass das Spiel für die Interaktion mit Spielern bereit ist.
Das Spiel MUSS diese API aufrufen, wenn es interaktiv ist. Das Spiel DARF diese API nicht aufrufen, wenn noch ein Ladebildschirm angezeigt wird. Andernfalls besteht das Spiel die YouTube-Zertifizierung nicht.
Das Spiel MUSS diese API aufrufen, wenn es interaktiv ist. Das Spiel DARF diese API nicht aufrufen, wenn noch ein Ladebildschirm angezeigt wird. Andernfalls besteht das Spiel die YouTube-Zertifizierung nicht.
- Beispiel
-
function onGameInteractable() { ytgame.game.gameReady(); }
loadData
loadData(): Promise<string>
Lädt Spieldaten von YouTube in Form eines serialisierten Strings.
Das Spiel muss die Analyse des Strings in ein internes Format übernehmen.
Das Spiel muss die Analyse des Strings in ein internes Format übernehmen.
- Beispiel
-
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. } }
| Ausgabe | |
|---|---|
Promise<string>
|
Ein Promise, das abgeschlossen wird, wenn das Laden erfolgreich war, und mit einem ytgame.SdkError abgelehnt wird, wenn es fehlgeschlagen ist.
|
saveData
saveData(data: string): Promise<void>
Speichert Spieldaten in YouTube in Form eines serialisierten Strings.
Der String muss ein gültiger, wohlgeformter UTF-16-String mit einer maximalen Größe von 3 MiB sein. Das Spiel muss das Parsen zwischen dem String und einem internen Format übernehmen. Verwenden Sie bei Bedarf
Der String muss ein gültiger, wohlgeformter UTF-16-String mit einer maximalen Größe von 3 MiB sein. Das Spiel muss das Parsen zwischen dem String und einem internen Format übernehmen. Verwenden Sie bei Bedarf
String.isWellFormed(), um zu prüfen, ob der String wohlgeformt ist.
- Beispiel
-
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. } }
| Parameter | |
|---|---|
data: string
|
|
| Ausgabe | |
|---|---|
Promise<void>
|
Ein Promise, das aufgelöst wird, wenn das Speichern erfolgreich war, und mit einem ytgame.SdkError abgelehnt wird, wenn es fehlgeschlagen ist.
|
ytgame.health
Die Funktionen und Eigenschaften, die sich auf die Spielgesundheit beziehen.
| Funktionen | |
|---|---|
log
|
Es wird ein Fehler an YouTube gemeldet. |
log
|
Es wird eine Warnung an YouTube gesendet. |
Funktionen
logError
logError(): void
Protokolliert einen Fehler bei YouTube.
Hinweis:Diese API ist „Best Effort“ und ratenbegrenzt, was zu Datenverlusten führen kann.
Hinweis:Diese API ist „Best Effort“ und ratenbegrenzt, was zu Datenverlusten führen kann.
- Beispiel
-
function onError() { ytgame.health.logError(); }
logWarning
logWarning(): void
Es wird eine Warnung an YouTube gesendet.
Hinweis:Diese API ist nicht garantiert und die Ratenbegrenzung kann zu Datenverlusten führen.
Hinweis:Diese API ist nicht garantiert und die Ratenbegrenzung kann zu Datenverlusten führen.
- Beispiel
-
function onWarning() { ytgame.health.logWarning(); }
ytgame.system
Die Funktionen und Eigenschaften, die sich auf das YouTube-System beziehen.
| Funktionen | |
|---|---|
get
|
Gibt die Sprache zurück, die in den YouTube-Einstellungen des Nutzers festgelegt ist, in Form eines BCP-47-Sprachentags.
|
is
|
Gibt zurück, ob der Spiel-Audio in den YouTube-Einstellungen aktiviert ist. |
on
|
Legt einen Callback fest, der ausgelöst wird, wenn das Ereignis „Audioeinstellungen ändern“ von YouTube ausgelöst wird.
|
on
|
Legt einen Callback fest, der ausgelöst wird, wenn ein Ereignis zum Pausieren des Spiels von YouTube ausgelöst wird.
|
on
|
Legt einen Callback fest, der ausgelöst wird, wenn auf YouTube ein Ereignis zum Fortsetzen des Spiels ausgelöst wird.
|
Funktionen
getLanguage
getLanguage(): Promise<string>
Gibt die Sprache zurück, die in den YouTube-Einstellungen des Nutzers festgelegt ist, in Form eines BCP-47-Sprachtags.
Verwende keine anderen Funktionen, um die Sprache oder das Gebietsschema des Nutzers zu ermitteln, und speichere die Spracheinstellung des Nutzers nicht in der Cloud-Speicherung. Verwenden Sie stattdessen diese Funktion, um für eine einheitliche Nutzererfahrung auf YouTube zu sorgen.
Verwende keine anderen Funktionen, um die Sprache oder das Gebietsschema des Nutzers zu ermitteln, und speichere die Spracheinstellung des Nutzers nicht in der Cloud-Speicherung. Verwenden Sie stattdessen diese Funktion, um für eine einheitliche Nutzererfahrung auf YouTube zu sorgen.
- Beispiel
-
const localeTag = await ytgame.system.getLanguage(); // `localeTag` is now set to something like "en-US" or "es-419".
| Ausgabe | |
|---|---|
Promise<string>
|
Ein Promise, das abgeschlossen wird, wenn die Sprache abgerufen wurde, und das bei einem Fehler mit einem ytgame.SdkError abgelehnt wird.
|
isAudioEnabled
isAudioEnabled(): boolean
Gibt zurück, ob die Spielaudio in den YouTube-Einstellungen aktiviert ist.
Das Spiel SOLLTE diese Einstellung verwenden, um den Status der Spielaudio zu initialisieren.
Das Spiel SOLLTE diese Einstellung verwenden, um den Status der Spielaudio zu initialisieren.
- Beispiel
-
function initGameSound() { if (ytgame.system.isAudioEnabled()) { // Enable game audio. } else { // Disable game audio. } }
| Ausgabe | |
|---|---|
boolean
|
Ein boolescher Wert, der angibt, ob die Audioausgabe aktiviert ist. |
onAudioEnabledChange
onAudioEnabledChange(callback: ((isAudioEnabled: boolean) => void)): (() => void)
Legt einen Callback fest, der ausgelöst wird, wenn das Ereignis „Audioeinstellungen ändern“ von YouTube ausgelöst wird.
Das Spiel MUSS diese API verwenden, um den Audiostatus des Spiels zu aktualisieren.
Das Spiel MUSS diese API verwenden, um den Audiostatus des Spiels zu aktualisieren.
- Beispiel
-
ytgame.system.onAudioEnabledChange((isAudioEnabled) => { if (isAudioEnabled) { // Enable game audio. } else { // Disable game audio. } });
| Parameter | |
|---|---|
callback: ((isAudioEnabled: boolean) => void)
|
Die Callback-Funktion, die ausgelöst werden soll. |
| Ausgabe | |
|---|---|
(() => void)
|
Eine Funktion zum Aufheben der Festlegung des Callbacks, die normalerweise nicht verwendet wird. |
onPause
onPause(callback: (() => void)): (() => void)
Legt einen Callback fest, der ausgelöst wird, wenn ein Ereignis zum Pausieren des Spiels von YouTube ausgelöst wird. Das Spiel hat ein kurzes Zeitfenster, um den Status zu speichern, bevor es entfernt wird.
onPause wird bei allen Arten von Pausen aufgerufen, auch wenn der Nutzer das Spiel beendet. Es gibt keine Garantie dafür, dass das Spiel fortgesetzt wird.
onPause wird bei allen Arten von Pausen aufgerufen, auch wenn der Nutzer das Spiel beendet. Es gibt keine Garantie dafür, dass das Spiel fortgesetzt wird.
- Beispiel
-
ytgame.system.onPause(() => { pauseGame(); }); function pauseGame() { // Logic to pause game state. }
| Parameter | |
|---|---|
callback: (() => void)
|
Die Callback-Funktion, die ausgelöst werden soll. |
| Ausgabe | |
|---|---|
(() => void)
|
Eine Funktion zum Aufheben der Festlegung des Callbacks, die normalerweise nicht verwendet wird. |
onResume
onResume(callback: (() => void)): (() => void)
Legt einen Callback fest, der ausgelöst wird, wenn ein Ereignis zum Fortsetzen des Spiels von YouTube ausgelöst wird.
Nach dem Pausieren wird das Spiel nicht garantiert fortgesetzt.
Nach dem Pausieren wird das Spiel nicht garantiert fortgesetzt.
- Beispiel
-
ytgame.system.onResume(() => { resumeGame(); }); function resumeGame() { // Logic to resume game state. }
| Parameter | |
|---|---|
callback: (() => void)
|
Die Callback-Funktion, die ausgelöst werden soll. |
| Ausgabe | |
|---|---|
(() => void)
|
Eine Funktion zum Aufheben der Festlegung des Callbacks, die normalerweise nicht verwendet wird. |