Sfondo
Ora puoi aggiornare oggetti e classi per includere moduli di opportunità a valore aggiunto. I moduli verranno visualizzati nella pagina dei dettagli e possono collegarsi ai contenuti dell'emittente. Questo documento descrive i passaggi chiave necessari per abilitare e utilizzare i moduli utilizzando l'API Google Wallet.
Esempio di funzionalità
|
|
| Visualizzazione singola | Visualizzazione elenco |
La seguente guida presuppone che tu abbia familiarità con i concetti di base di Google Wallet e che tu abbia già completato i prerequisiti consigliati. Invia domande o feedback al tuo punto di contatto Google Wallet.
Passaggi per l'integrazione
Per aggiungere un nuovo modulo, devi aggiornare l'oggetto e/o la classe in modo da includere ValueAddedModuleData. ValueAddedModuleData include i seguenti campi:
[Obbligatorio] Intestazione LocalizedString
L'intestazione visualizzata sul modulo. Il limite di caratteri è 60 e le stringhe più lunghe verranno troncate.
Corpo di LocalizedString
Il corpo visualizzato nel modulo. Il limite di caratteri è 50 e le stringhe più lunghe verranno troncate.
Immagine immagine
L'immagine visualizzata nel modulo. Il rapporto consigliato per le immagini è 1:1 e le immagini verranno ridimensionate per adattarsi a questo rapporto.
[Required] string uri
L'URI a cui viene indirizzato l'utente quando fa clic sul modulo. Può essere un link web o un link diretto.ModuleViewConstraints viewConstraints
Vincoli che devono essere soddisfatti per la visualizzazione del modulo. ModuleViewConstraints ha il seguente campo:TimeInterval displayInterval
Il periodo di tempo durante il quale il modulo verrà mostrato agli utenti. Può definire sia un'ora di inizio (`startTime`) sia un'ora di fine (`endTime`). Il modulo viene visualizzato immediatamente dopo l'inserimento, a meno che non sia impostata un'ora di inizio. Il modulo viene visualizzato a tempo indeterminato se `endTime` non è impostato.int32 sortIndex
L'indice per ordinare i moduli. I moduli con un indice di ordinamento inferiore vengono visualizzati prima di quelli con un indice di ordinamento superiore. Se non specificato, l'indice di ordinamento viene considerato INT_MAX. Per due moduli con lo stesso indice, il comportamento di ordinamento non è definito.Esempio di ValueAddedModuleData:
{
"valueAddedModuleData": [
{
"header": {
"defaultValue": {
"language": "en-US",
"value": "10% off merch"
}
},
"body": {
"defaultValue": {
"language": "en-US",
"value": "Shirts, caps, mugs, and more"
}
},
"image": {
"sourceUri": {
"uri": "http://www.images.google.com/opportunity"
}
},
"uri": "http://www.google.com/opportunity",
"viewConstraints": {
"displayInterval": {
"start": {
"date": "2024-08-01T18:30:00"
},
"end": {
"date": "2025-08-01T18:30:00"
}
}
},
"sortIndex": 0
},
{
"header": {
"defaultValue": {
"language": "en-US",
"value": "10% off concessions"
}
},
"uri": "http://www.google.com/new_opportunity"
}
]
}Comportamento previsto
Dopo aver aggiornato correttamente l'oggetto e/o la classe, vedrai i moduli sul pass corrispondente. Se hai aggiunto un solo modulo, lo vedrai sulla parte anteriore della tessera.
Linee guida sui moduli delle opportunità a valore aggiunto
I moduli ti offrono l'opportunità di migliorare l'esperienza dell'utente con azioni aggiuntive. Quando crei e gestisci i moduli, tieni presente quanto segue:
- I moduli devono essere definiti con un linguaggio appropriato per indicare che sono azionabili e aiutare gli utenti a capire che sono cliccabili.
- I moduli devono avere le immagini appropriate definite e correlate al modulo specifico.
- Hai il controllo dei moduli e devi gestire in modo proattivo la loro prioritizzazione in base all'importanza e alla pertinenza.
- Devi mostrare agli utenti solo i moduli attivi. Puoi controllare questa impostazione impostando displayInterval sul modulo o aggiungendolo o rimuovendolo in modo proattivo dalla classe o dall'oggetto.
Gestione delle eccezioni
| Messaggio | Motivo |
|---|---|
| ValueAddedModuleData deve contenere un'intestazione. | ValueAddedModuleData non ha un'intestazione. |
| ValueAddedModuleData deve contenere un URI non vuoto. | ValueAddedModuleData non ha un URI non vuoto. |
| Sono consentiti massimo 15 moduli a valore aggiunto per corso. | È necessario ridurre i moduli a valore aggiunto nella classe. |
| Sono consentiti massimo 15 moduli a valore aggiunto per oggetto. | È necessario ridurre i moduli a valore aggiunto sull'oggetto. |