ytgame
Lo spazio dei nomi di primo livello per l'SDK YouTube Playables.
Si tratta di una variabile con ambito globale nella finestra corrente. NON DEVI eseguire l'override di questa variabile.
Si tratta di una variabile con ambito globale nella finestra corrente. NON DEVI eseguire l'override di questa variabile.
Spazi dei nomi | |
---|---|
ads
|
🧪 API DI ANTEPRIMA PUBBLICA: SOGGETTO A MODIFICHE SENZA PREAVVISO. |
engagement
|
Le funzioni e le proprietà relative al coinvolgimento dei giocatori. |
game
|
Le funzioni e le proprietà relative ai comportamenti generici dei giochi. |
health
|
Le funzioni e le proprietà relative alla salute del gioco. |
system
|
Le funzioni e le proprietà relative al sistema di YouTube. |
Enumerazioni | |
---|---|
Sdk
|
I tipi di errori generati dall'SDK YouTube Playables. |
Corsi | |
---|---|
Sdk
|
L'oggetto errore generato dall'SDK YouTube Playables. |
Variabili | |
---|---|
IN_
|
Indica se il gioco è in esecuzione o meno nell'ambiente Playables. |
SDK_
|
La versione dell'SDK YouTube Playables. |
Enumerazioni
Const
SdkErrorType
SdkErrorType
Variabili
Const
IN_PLAYABLES_ENV
IN_PLAYABLES_ENV: boolean
ytgame
per assicurarti che l'SDK sia effettivamente caricato.
- Esempio
-
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
- Esempio
-
// Prints the SDK version to console. Do not do this in production. console.log(ytgame.SDK_VERSION);
ytgame.SdkError
Error
L'oggetto errore generato dall'SDK YouTube Playables.
L'oggetto
L'oggetto
SdkError
è un elemento secondario di
Error
e contiene un campo aggiuntivo.
Costruttori | |
---|---|
constructor
|
Proprietà | |
---|---|
error
|
Il tipo di errore. |
message
|
|
name
|
|
stack
|
Proprietà
errorType
errorType:
SdkErrorType
ytgame.ads
🧪 API PREVIEW PUBBLICA: SOGGETTO A MODIFICHE SENZA PREAVVISO.
Le funzioni e le proprietà relative agli annunci.
Le funzioni e le proprietà relative agli annunci.
Funzioni | |
---|---|
request
|
Richiede la visualizzazione di un annuncio interstitial. |
Funzioni
requestInterstitialAd
requestInterstitialAd(): Promise<void>
Experimental
Richiede la visualizzazione di un annuncio interstitial.🧪 API PREVIEW PUBBLICA: SOGGETTO A MODIFICHE SENZA PREAVVISO.
Non fornisce alcuna garanzia sulla visualizzazione dell'annuncio.
- Esempio
-
try { await ytgame.ads.requestInterstitialAd(); // Ad request successful, do something else. } catch (error) { // Handle errors, retry logic, etc. // Note that error may be undefined. }
Resi | |
---|---|
Promise<void>
|
una promessa che si risolve in una richiesta andata a buon fine o rifiuta/lancia un'eccezione in caso di richiesta non andata a buon fine. |
ytgame.engagement
Le funzioni e le proprietà relative al coinvolgimento dei giocatori.
Interfacce | |
---|---|
Content
|
L'oggetto dei contenuti inviato dal gioco a YouTube. |
Score
|
L'oggetto punteggio inviato dalla partita a YouTube. |
Funzioni | |
---|---|
open
|
Chiede a YouTube di aprire i contenuti corrispondenti all'ID video fornito.
|
send
|
Invia un punteggio a YouTube. |
Funzioni
openYTContent
openYTContent(content: Content): Promise<void>
Chiede a YouTube di aprire i contenuti corrispondenti all'ID video fornito.
In genere, il video si aprirà in una nuova scheda sul web e nel miniplayer sui dispositivi mobili.
In genere, il video si aprirà in una nuova scheda sul web e nel miniplayer sui dispositivi mobili.
- Esempio
-
async function showVideo(videoID: string) { try { await ytgame.engagement.openYTContent({ id: videoID }); // Request successful, do something else. } catch (error) { // Handle errors, retry logic, etc. // Note that error may be undefined. } }
Parametri | |
---|---|
content:
Content
|
I contenuti da aprire su YouTube. |
Resi | |
---|---|
Promise<void>
|
una promessa che si risolve in caso di successo e rifiuta/lancia un ytgame.SdkError in caso di errore.
|
sendScore
sendScore(score: Score): Promise<void>
Invia un punteggio a YouTube.
Il punteggio deve rappresentare una dimensione dell'avanzamento nel gioco. Se sono presenti più dimensioni, lo sviluppatore deve scegliere una dimensione per garantire la coerenza. I punteggi verranno ordinati e il punteggio più alto verrà visualizzato nell'interfaccia utente di YouTube, pertanto qualsiasi interfaccia utente del punteggio più alto in-game deve essere in linea con quanto viene inviato tramite questa API.
Il punteggio deve rappresentare una dimensione dell'avanzamento nel gioco. Se sono presenti più dimensioni, lo sviluppatore deve scegliere una dimensione per garantire la coerenza. I punteggi verranno ordinati e il punteggio più alto verrà visualizzato nell'interfaccia utente di YouTube, pertanto qualsiasi interfaccia utente del punteggio più alto in-game deve essere in linea con quanto viene inviato tramite questa API.
- Esempio
-
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. } }
Parametri | |
---|---|
score:
Score
|
la partitura da inviare a YouTube. |
Resi | |
---|---|
Promise<void>
|
una promessa che si risolve in caso di successo e rifiuta/lancia un ytgame.SdkError in caso di errore.
|
ytgame.engagement.Content
L'oggetto dei contenuti inviato dal gioco a YouTube.
Proprietà | |
---|---|
id
|
L'ID del video che vogliamo aprire. |
Proprietà
id
id: string
ytgame.engagement.Score
L'oggetto punteggio inviato dalla partita a YouTube.
Proprietà | |
---|---|
value
|
Il valore del punteggio espresso come numero intero. |
Proprietà
value
value: number
ytgame.game
Le funzioni e le proprietà relative ai comportamenti generici dei giochi.
Funzioni | |
---|---|
first
|
Invia una notifica a YouTube che indica che il gioco ha iniziato a mostrare frame. |
game
|
Comunica a YouTube che il gioco è pronto per essere utilizzato dai giocatori.
|
load
|
Carica i dati di gioco da YouTube sotto forma di stringa serializzata. |
save
|
Salva i dati di gioco su YouTube sotto forma di stringa serializzata. |
Funzioni
firstFrameReady
firstFrameReady(): void
Invia una notifica a YouTube che indica che il gioco ha iniziato a mostrare frame.
Il gioco MUST chiamare questa API. In caso contrario, il gioco non viene mostrato agli utenti.
Il gioco MUST chiamare questa API. In caso contrario, il gioco non viene mostrato agli utenti.
firstFrameReady()
MUST essere chiamato prima di
gameReady()
.
- Esempio
-
function onGameInitialized() { ytgame.game.firstFrameReady(); }
gameReady
gameReady(): void
Invia una notifica a YouTube che indica che il gioco è pronto per essere utilizzato dai giocatori.
Il gioco MUST chiamare questa API quando è possibile interagire con esso. Il gioco NON DEVE chiamare questa API quando è ancora visualizzata una schermata di caricamento. In caso contrario, il gioco non supera la procedura di certificazione di YouTube.
Il gioco MUST chiamare questa API quando è possibile interagire con esso. Il gioco NON DEVE chiamare questa API quando è ancora visualizzata una schermata di caricamento. In caso contrario, il gioco non supera la procedura di certificazione di YouTube.
- Esempio
-
function onGameInteractable() { ytgame.game.gameReady(); }
loadData
loadData(): Promise<string>
Carica i dati di gioco da YouTube sotto forma di stringa serializzata.
Il gioco deve gestire qualsiasi analisi tra la stringa e un formato interno.
Il gioco deve gestire qualsiasi analisi tra la stringa e un formato interno.
- Esempio
-
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. } }
Resi | |
---|---|
Promise<string>
|
Una promessa che viene completata quando il caricamento è riuscito e rifiuta con un ytgame.SdkError se non è riuscito.
|
saveData
saveData(data: string): Promise<void>
Salva i dati di gioco su YouTube sotto forma di stringa serializzata.
La stringa deve essere una stringa UTF-16 valida e ben formattata e non deve superare i 3 MiB. Il gioco deve gestire qualsiasi analisi tra la stringa e un formato interno. Se necessario, utilizza
La stringa deve essere una stringa UTF-16 valida e ben formattata e non deve superare i 3 MiB. Il gioco deve gestire qualsiasi analisi tra la stringa e un formato interno. Se necessario, utilizza
String.isWellFormed()
per verificare se la stringa è ben formattata.
- Esempio
-
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. } }
Parametri | |
---|---|
data: string
|
Resi | |
---|---|
Promise<void>
|
Una promessa che si risolve quando il salvataggio è riuscito e viene rifiutata con un
ytgame.SdkError in caso di errore.
|
ytgame.health
Le funzioni e le proprietà relative alla salute del gioco.
Funzioni | |
---|---|
log
|
Registra un errore su YouTube. |
log
|
Registra un avviso su YouTube. |
Funzioni
logError
logError(): void
Registra un errore su YouTube.
Nota: questa API è basata sul criterio del massimo impegno e ha un limite di frequenza, il che può comportare la perdita di dati.
Nota: questa API è basata sul criterio del massimo impegno e ha un limite di frequenza, il che può comportare la perdita di dati.
- Esempio
-
function onError() { ytgame.health.logError(); }
logWarning
logWarning(): void
Registra un avviso su YouTube.
Nota: questa API è basata sul criterio del massimo impegno e ha un limite di frequenza, il che può comportare la perdita di dati.
Nota: questa API è basata sul criterio del massimo impegno e ha un limite di frequenza, il che può comportare la perdita di dati.
- Esempio
-
function onWarning() { ytgame.health.logWarning(); }
ytgame.system
Le funzioni e le proprietà relative al sistema di YouTube.
Funzioni | |
---|---|
get
|
Restituisce la lingua impostata nelle impostazioni di YouTube dell'utente sotto forma di
tag lingua BCP-47.
|
is
|
Restituisce se l'audio della partita è attivo nelle impostazioni di YouTube. |
on
|
Imposta un callback da attivare quando viene attivato l'evento di modifica delle impostazioni audio da YouTube.
|
on
|
Imposta un callback da attivare quando viene attivato un evento di messa in pausa del gioco da YouTube.
|
on
|
Imposta un callback da attivare quando viene attivato un evento di ripresa del gioco da YouTube.
|
Funzioni
getLanguage
getLanguage(): Promise<string>
Restituisce la lingua impostata nelle impostazioni di YouTube dell'utente sotto forma di
tag lingua BCP-47.
Non utilizzare altre funzioni per determinare la lingua o la codifica dell'utente o per memorizzare le sue preferenze linguistiche nel salvataggio sul cloud. Utilizza invece questa funzione per garantire un'esperienza utente coerente su YouTube.
Non utilizzare altre funzioni per determinare la lingua o la codifica dell'utente o per memorizzare le sue preferenze linguistiche nel salvataggio sul cloud. Utilizza invece questa funzione per garantire un'esperienza utente coerente su YouTube.
- Esempio
-
const localeTag = await ytgame.system.getLanguage(); // `localeTag` is now set to something like "en-US" or "es-419".
Resi | |
---|---|
Promise<string>
|
Una promessa che viene completata quando l'ottenimento della lingua è riuscito e rifiuta con un ytgame.SdkError in caso di errore.
|
isAudioEnabled
isAudioEnabled(): boolean
Restituisce se l'audio del gioco è abilitato nelle impostazioni di YouTube.
Il gioco DEVE utilizzarlo per inizializzare lo stato dell'audio del gioco.
Il gioco DEVE utilizzarlo per inizializzare lo stato dell'audio del gioco.
- Esempio
-
function initGameSound() { if (ytgame.system.isAudioEnabled()) { // Enable game audio. } else { // Disable game audio. } }
Resi | |
---|---|
boolean
|
Un valore booleano che indica se l'audio è attivo. |
onAudioEnabledChange
onAudioEnabledChange(callback: ((isAudioEnabled: boolean) => void)): (() => void)
Imposta un callback da attivare quando viene attivato l'evento di modifica delle impostazioni audio da
YouTube.
Il gioco MUST utilizzare questa API per aggiornare lo stato audio del gioco.
Il gioco MUST utilizzare questa API per aggiornare lo stato audio del gioco.
- Esempio
-
ytgame.system.onAudioEnabledChange((isAudioEnabled) => { if (isAudioEnabled) { // Enable game audio. } else { // Disable game audio. } });
Parametri | |
---|---|
callback: ((isAudioEnabled: boolean) => void)
|
la funzione di callback da attivare. |
Resi | |
---|---|
(() => void)
|
una funzione per annullare l'impostazione del callback, in genere non utilizzata. |
onPause
onPause(callback: (() => void)): (() => void)
Imposta un callback da attivare quando viene attivato un evento di messa in pausa del gioco da YouTube. Il
gioco ha un breve intervallo di tempo per salvare qualsiasi stato prima di essere eliminato.
onPause viene chiamato per tutti i tipi di interruzioni, incluso quando l'utente esce dal gioco. Non è garantito che la partita verrà ripresa.
onPause viene chiamato per tutti i tipi di interruzioni, incluso quando l'utente esce dal gioco. Non è garantito che la partita verrà ripresa.
- Esempio
-
ytgame.system.onPause(() => { pauseGame(); }); function pauseGame() { // Logic to pause game state. }
Parametri | |
---|---|
callback: (() => void)
|
la funzione di callback da attivare. |
Resi | |
---|---|
(() => void)
|
una funzione per annullare l'impostazione del callback, in genere non utilizzata. |
onResume
onResume(callback: (() => void)): (() => void)
Imposta un callback da attivare quando viene attivato un evento di ripresa della partita da YouTube.
Dopo essere stata messa in pausa, la partita non riprende necessariamente.
Dopo essere stata messa in pausa, la partita non riprende necessariamente.
- Esempio
-
ytgame.system.onResume(() => { resumeGame(); }); function resumeGame() { // Logic to resume game state. }
Parametri | |
---|---|
callback: (() => void)
|
la funzione di callback da attivare. |
Resi | |
---|---|
(() => void)
|
una funzione per annullare l'impostazione del callback, in genere non utilizzata. |