Domande frequenti

Questo documento risponde alle domande più comuni su SDK e pubblicazione per Google Play Giochi su PC.

Monetizzazione

  1. Posso utilizzare il flusso di acquisto senza un server di backend?

    Dal punto di vista della sicurezza, Google consiglia di utilizzare un server di backend.

    Per saperne di più, vedi Elaborazione senza un server di backend.

  2. I sistemi di pagamento esistenti basati su API sono consentiti dopo l'integrazione dell'SDK Google Play Games su PC?

    Tutti i pagamenti devono essere gestiti dall'SDK Google Play Giochi su PC utilizzando la fatturazione Google Play. Non puoi utilizzare il tuo metodo di pagamento esistente basato su API nello stesso gioco.

  3. Come possiamo consumare gli acquisti in modalità sviluppatore?

    Consuma l'acquisto in modalità sviluppatore entro 3 minuti, altrimenti l'acquisto verrà rimborsato.

  4. Sono supportati pagamenti ricorrenti o abbonamenti?

    Non nel futuro immediato, anche se puoi fornirci casi d'uso specifici da aggiungere alla nostra roadmap futura.

  5. Che cos'è l'errore di fatturazione nelle mie chiamate di acquisto?

    BillingError è la risposta del risultato del pagamento. LaunchPurchaseFlow restituisce immediatamente un valore senza bloccarsi, ma devi ascoltare il callback per sapere quando ha terminato e per acquisire il risultato.

  6. Come faccio a utilizzare la verifica degli acquisti lato client?

    Ti consigliamo di utilizzare l'acquisto lato server e la relativa procedura di verifica. L'elaborazione degli acquisti dall'app client richiede che il gioco sia presente in una lista consentita. Se il tuo gioco richiede l'accesso, contatta il tuo partner di Google. Per saperne di più, vedi Elaborazione senza un server di backend.

  7. Quali sono i limiti API per l'interrogazione dei dettagli del prodotto?

    Il numero massimo di prodotti su cui è possibile eseguire query in una singola chiamata all'API QueryProductDetails è 50. Se superi questo limite, devi dividere la richiesta in più chiamate.

  8. Quali parametri sono necessari quando si chiama Query Purchases o Launch Purchase Flow in Billing Client?

    La funzione accetta QueryPurchasesContinuation, che è una funzione di callback con la firma std::function<void(QueryPurchasesResult)>. Il callback ti trasmette il risultato con tutti i ProductPurchaseDetails. Queste informazioni sono disponibili nei file di intestazione dell'SDK nel file includes/billing/models.h.

    Il launch_purchase_flow_result risultante ha le funzioni ok() e code(). La funzione ok() restituisce un valore che indica se il flusso ha esito positivo. La funzione code() restituisce l'enum BillingError (includes/billing/enums.h), che ha 10 possibili casi di errore, ad esempio annullamento da parte dell'utente o errore di rete.

  9. È supportato un ordine personalizzato per il flusso di acquisto di avvio nel client di fatturazione?

    Nell'attuale progettazione dell'SDK, non è possibile trasmettere il tuo payload. Tuttavia, puoi fornire qualsiasi combinazione di obfuscated_account_id e obfuscated_profile_id. Puoi non fornirne nessuno, solo uno o entrambi.

    Il campo offer_token è obbligatorio e specifica l'offerta di acquisto che l'utente sta tentando di acquistare nel flusso di pagamento. Per ora, ogni SKU in Google Play ha esattamente un'offerta (ad esempio, acquista un articolo per 10 $). In futuro, il team di fatturazione Google Play fornirà il supporto per più offerte.

    Per garantire l'associazione dei metadati in caso di interruzioni del flusso di acquisto, memorizza i metadati sul server di backend prima di avviare la finestra di dialogo di acquisto e associali all'ID account dell'utente, allo SKU acquistato e al timestamp corrente. Per ulteriori informazioni, consulta Associare un acquisto a dati interni.

  10. Si verifica un errore di timeout se un utente chiude il browser senza pagare durante un flusso di acquisto?

    Sì, si tratta di un problema noto e del comportamento previsto nel flusso basato sul browser. Stiamo lavorando attivamente a una funzionalità di acquisto senza interruzioni (basata su WebView) che manterrà il flusso di pagamento all'interno del gioco e risolverà questo problema di timeout.

  11. Quali sono i prerequisiti per passare dalla fatturazione Google con OAuth alla fatturazione Google nativa con DLL?

    I giochi possono continuare a utilizzare l'accesso OAuth con Google per gestire l'account con cui è stato eseguito l'accesso, ma Google consiglia di interrompere l'utilizzo delle API di fatturazione REST legacy. Il passaggio dalle API di fatturazione REST (con accesso OAuth2) al flusso dell'SDK può essere un'operazione contrassegnata da un flag di funzionalità, quindi entrambi possono coesistere per un periodo di tempo durante il passaggio del gioco.

  12. La chiamata API Launch Purchase Flow viene elaborata tramite un browser web?

    Sì, per ora viene elaborato tramite un browser. Google prevede di completare l'intero flusso senza uscire dal gioco, il che è possibile tramite l'SDK.

  13. Un utente deve accedere separatamente a ogni gioco per effettuare un acquisto?

    L'account in primo piano in Google Play Games viene utilizzato per ogni sessione di gioco, quindi non devi accedere di nuovo. L'account che utilizzi in Google Play Giochi all'inizio della sessione di gioco è l'account da cui vengono emessi i call API. Quando avvii un flusso di acquisto nel browser, devi aver eseguito l'accesso e utilizzare lo stesso account della sessione di gioco. Se l'utente ha eseguito l'accesso con un altro account, il flusso web gli chiede di cambiare account.

  14. Un gioco può supportare contemporaneamente sia l'SDK nativo sia i sistemi di pagamento legacy?

    Il sistema di pagamento funziona secondo un modello a doppio flusso a seconda della versione binaria del gioco. Gli utenti delle build precedenti continuano a utilizzare il flusso esistente, mentre gli utenti delle nuove build passano ai pagamenti basati sull'SDK. Gli utenti di entrambi i flussi di pagamento coesistono durante il periodo di transizione.

Windows App Bundle

  1. Quando invio un WAB utilizzando un launcher di terze parti, il pacchetto del gioco è necessario per la revisione?

    Puoi inviare solo il programma di installazione e non l'intero pacchetto del gioco. Il revisore potrà scaricare il pacchetto del gioco utilizzando il programma di installazione.

  2. Esistono limitazioni alle dimensioni dei file WAB?

    Puoi caricare file WAB di dimensioni massime pari a 10 GB.

  3. Perché il mio gioco non viene installato o visualizzato dopo il caricamento del mio WAB?

    Se il tuo gioco viene integrato senza una versione per PC preesistente (una "prima volta WAB"), il sistema potrebbe inserirlo automaticamente in uno stato di attesa di pubblicazione gestita. Ciò accade perché non esiste una base di riferimento da aggiornare. Per rilasciare completamente il WAB e rendere disponibile l'installazione del gioco, devi andare su Google Play Console ed eseguire manualmente l'azione di pubblicazione richiesta (ad esempio, fare clic su "Pubblica modifiche").

  4. Come faccio a caricare il WAB per i test interni?

    Condividi gli account inclusi nella lista consentita con Google in modo che possa attivarli per i test interni. Una volta ricevuta la lista, Google si assicura che siano inclusi nella procedura di onboarding.

  5. Dove deve essere caricato il pacchetto WAB?

    Puoi caricare il pacchetto WAB nella posizione indicata nella prima domanda. Tuttavia, non puoi pubblicarlo manualmente. Devi fornire al personale del backend di Google un orario UTC preciso (fino all'ora). Google configura quindi il programma delle pubblicazioni e ne garantisce la pubblicazione in tempo.

SDK PC

  1. Quali sono le differenze tra l'API legacy e Google Play Giochi su PC

    SDK?

    • La nostra API precedente offre solo la funzionalità di fatturazione.
    • L'SDK per PC supporta Google Desktop Service (GDS) e tutte le funzionalità del PC.
    • Con l'SDK per PC non è necessario l'accesso con Google basato su browser.
  2. Esiste un modo alternativo per inizializzare l'SDK avviando il gioco direttamente utilizzando il launcher del gioco, senza passare da Google Play Giochi su PC?

    Il gioco deve essere avviato tramite il client Google Play Giochi su PC. Per maggiori dettagli, consulta questo documento per gli sviluppatori.

  3. L'SDK nativo per PC supporta i caratteri multibyte nel file di certificazione PEM?

    Sì, l'SDK supporta i caratteri multibyte per la certificazione.

  4. In che modo l'SDK gestisce l'accesso all'Account Google per più istanze o account?

    Ogni avvio di gioco in Google Play Giochi viene trattato come una "sessione di gioco" e ogni "sessione di gioco" può avere un account associato. Possono essere diversi. Quindi, se avvii il gioco con l'account A, passi all'account B e riavvii, entrambi possono essere eseguiti contemporaneamente.

  5. L'integrazione di Play Install Referrer funziona con l'SDK per PC?

    L'SDK per PC (25.5.409.0 e versioni successive) supporta l'API Play Install Referrer. Per saperne di più, consulta API Play Install Referrer.

Avvio applicazioni

  1. Se un giocatore utilizza un launcher di terze parti anziché il client Google Play, il suo account Play Games Services verrà sincronizzato automaticamente?

    Affinché le funzioni dell'SDK funzionino, il gioco deve essere avviato direttamente tramite il client Google Play Games. Se un altro processo, ad esempio un programma di installazione o un'applicazione di avvio, avvia il gioco, questo processo deve essere avviato dal client Google Play Games. Il gioco deve superare tutti i parametri ricevuti dal client al processo client.

  2. Come faccio a gestire l'inizializzazione se Google Play Games avvia un launcher di giochi di terze parti?

    Non è necessario integrare l'SDK direttamente nel launcher. Tuttavia, devi passare tutti gli argomenti della riga di comando ricevuti dal launcher dal client Google Play Giochi direttamente al processo secondario generato (l'eseguibile del gioco). Se l'inizializzazione non va a buon fine (ad esempio restituendo kActionRequiredShutdownClientProcess), tutti i processi, incluso il launcher, devono essere terminati in modo che Google Play Games possa tentare il recupero e il riavvio automatico del gioco. Per maggiori dettagli, vedi il passaggio 5 della guida alla configurazione.

  3. Come posso gestire gli aggiornamenti e la manutenzione del mio gioco e del launcher dopo che sono in produzione?

    Gli aggiornamenti e la manutenzione successivi devono essere implementati tramite il launcher. Il client Google Play Games non supporta le funzioni di aggiornamento, quindi il launcher deve essere in grado di aggiornare sia il gioco che il launcher stesso.

  4. In che modo il programma di installazione riceve il token di sessione GPG per la riproduzione automatica?

    GPG passa il token di sessione utilizzando l'argomento della riga di comando --g_session_token=<token> al programma di installazione. Per attivare questa opzione, devi impostare acceptsCommandLineArguments="true" nel file play_publishing_config.xml.

    Il programma di installazione è responsabile dell'estrazione di questo token e del suo utilizzo per avviare il gioco. Se la generazione del token non riesce, GPG avvia il programma di installazione senza il token (fallback).

Inizializzazione

  1. Quando avvio un gioco utilizzando l'app Google Play Games, vengono sincronizzati i dati del mio Account Google?

    Dopo aver avviato il gioco tramite il client Google Play Games, l'account viene sincronizzato automaticamente e non è necessario accedere di nuovo tramite la procedura di accesso con Google.

  2. È possibile riutilizzare più volte i parametri di inizializzazione?

    Ciò è possibile finché il client Google Play Games è in esecuzione e le credenziali di accesso sono valide. Tuttavia, in scenari come quello descritto nella guida, tutti i processi avviati dal gioco devono essere terminati quando l'utente chiude il gioco o il gioco esce a causa di un errore di inizializzazione dell'SDK, ad esempio kActionRequiredShutdownClientProcess.

  3. Esiste un modo per creare una scorciatoia per aprire direttamente il gioco?

    Puoi utilizzare il seguente URI per aprire direttamente il gioco:

    googleplaygames://launch/?pid=2&id=com.company.gamename

    L'URI supporta il rilevamento dell'apertura del client Google Play Giochi su PC. Se il client non è aperto, si apre il client Google Play Games prima che venga eseguito il gioco o il launcher. Devi gestire il gioco o il launcher per impedire l'esecuzione di più istanze.

  4. Esiste un modo per verificare l'installazione di Google Play Giochi su PC senza utilizzare l'SDK?

    Puoi verificare lo stato di installazione di Google Play Giochi su PC senza integrare l'SDK controllando la presenza della seguente chiave del Registro di sistema di Windows:

    HKEY_LOCAL_MACHINE\SOFTWARE\Google\Play Games Services

    La presenza di questa chiave indica che i servizi per i giochi di Google Play (necessari per eseguire i giochi su PC) sono installati sul computer. Se la chiave non è presente, devi indirizzare l'utente alla pagina di installazione di Google Play Games su PC per scaricare e installare il client.

Test

  1. Esistono ambienti di test aperti o chiusi simili a quelli del dispositivo mobile?

    Sebbene non sia disponibile una sandbox end-to-end dedicata, riconosciamo la necessità di un ambiente di test simile alla produzione per gli sviluppatori. A breve verrà offerta una soluzione più solida.

  2. Come faccio ad aggiungere nuovi tester?

    Il tuo punto di contatto Google crea un gruppo email per ogni progetto PC, in cui devono essere aggiunti gli Account Google dei tester. Solo i membri di questo gruppo email sono autorizzati a scaricare i pacchetti di test in Google Play Games.

Varie

  1. Posso usare una VPN?

    Per gli sviluppatori che devono testare il proprio gioco in regioni in cui Google Play Games su PC non è supportato, consigliamo di utilizzare una VPN per acquisire un indirizzo IP da una regione supportata.

    Assicurati di attivare la modalità TUN sulla VPN. Le indicazioni sull'attivazione della modalità TUN e sulla configurazione del firewall sono disponibili nel manuale operativo del fornitore di VPN.

    Dopo aver attivato la modalità TUN, installa Google Play Games su PC e l'emulatore a scopo di test.

  2. Come faccio a iniziare a sviluppare per Google Play Giochi su PC in Unity o nell'editor UE?

  3. Come faccio a utilizzare correttamente le chiavi del registro?

    Devi creare chiavi del registro in base all'hive radice. Puoi impostare l'hive radice come HKEY_LOCAL_MACHINE o HKEY_CURRENT_USER a seconda dello scopo e della natura dei dati. L'hive HKEY_LOCAL_MACHINE viene utilizzato come esempio nelle linee guida.

  4. Quali sono i requisiti per la revisione dei pacchetti PC da parte di Google?

    I pacchetti per PC vengono sottoposti a scansione malware, dopodiché i revisori testano solo l'installazione, l'avvio e la disinstallazione del gioco.

  5. È necessario integrare tutte le API?

    Altre API non sono obbligatorie, ma offrono vantaggi aggiuntivi. google::play::billing è obbligatoria per gli acquisti in-app e la vendita di contenuti digitali. google::play::install_referrer è obbligatoria per il monitoraggio dei dati di referral per aiutarti a capire quali sorgenti di traffico inviano il maggior numero di utenti a scaricare la tua app. google::play::games::integrity è obbligatoria per proteggere la tua app da malintenzionati rilevando dispositivi potenzialmente rischiosi ed emulatori sconosciuti.

  6. Perché alcuni processi di gioco vengono terminati quando il client Google Play Games viene chiuso, mentre altri no?

    Google non controlla i sottoprocessi o i processi del gioco in esecuzione. Il comportamento dipende dal fatto che il gioco sia un gioco emulato per Android o un gioco per PC nativo. I giochi emulati vengono installati nel proprio ambiente, quindi il loro comportamento dipende in gran parte dall'inizializzazione e dall'arresto dell'emulatore.

  7. Devo utilizzare la funzionalità di disinstallazione di Google Play Games o un programma di disinstallazione personalizzato?

    Google consiglia di utilizzare la funzionalità di disinstallazione di Google Play Giochi.

Ulteriore assistenza

Se hai bisogno di ulteriore assistenza non trattata in queste domande frequenti, contatta google-play-games-pc@google.com