En este tema, se enumeran y describen los tipos de notificaciones para desarrolladores en tiempo real que puedes recibir de Google Play.
Codificación
Cada publicación realizada en un tema de Cloud Pub/Sub incluye un campo de datos único con codificación base64.
{
"message": {
"attributes": {
"key": "value"
},
"data": "eyAidmVyc2lvbiI6IHN0cmluZywgInBhY2thZ2VOYW1lIjogc3RyaW5nLCAiZXZlbnRUaW1lTWlsbGlzIjogbG9uZywgIm9uZVRpbWVQcm9kdWN0Tm90aWZpY2F0aW9uIjogT25lVGltZVByb2R1Y3ROb3RpZmljYXRpb24sICJzdWJzY3JpcHRpb25Ob3RpZmljYXRpb24iOiBTdWJzY3JpcHRpb25Ob3RpZmljYXRpb24sICJ0ZXN0Tm90aWZpY2F0aW9uIjogVGVzdE5vdGlmaWNhdGlvbiB9",
"messageId": "136969346945"
},
"subscription": "projects/myproject/subscriptions/mysubscription"
}
Una vez que se decodifica el campo de datos con codificación base64, el objeto DeveloperNotification
incluye los siguientes campos:
{
"version": string,
"packageName": string,
"eventTimeMillis": long,
"oneTimeProductNotification": OneTimeProductNotification,
"subscriptionNotification": SubscriptionNotification,
"testNotification": TestNotification
}
Estos campos se describen en la siguiente tabla.
Nombre de la propiedad | Valor | Descripción |
version | string | Es la versión de esta notificación. Inicialmente, es "1.0". Esta versión es distinta del resto de los campos de versión. |
packageName | string | Es el nombre del paquete de la aplicación con la que está relacionada esta notificación (por ejemplo, "com.algo"). |
eventTimeMillis | long | Es la marca de tiempo en la que se produjo el evento, en milisegundos, desde la época. |
subscriptionNotification | SubscriptionNotification | Si este campo está, esa notificación está relacionada con una suscripción, y este campo contiene información adicional relacionada con la suscripción. Ten en cuenta que este campo es mutuamente excluyente con testNotification y oneTimeProductNotification. |
oneTimeProductNotification | OneTimeProductNotification | Si este campo está, esa notificación está relacionada con una compra única, y este campo contiene información adicional relacionada con la compra. Ten en cuenta que este campo es mutuamente excluyente con testNotification y subscriptionProductNotification. |
testNotification | TestNotification | Si este campo está, esta notificación está relacionada con una publicación de prueba. Solo se envían a través de Google Play Console. Ten en cuenta que este campo es mutuamente excluyente con subscriptionNotification y oneTimeProductNotification. |
SubscriptionNotification
Un objeto SubscriptionNotification
incluye los siguientes campos:
{
"version": string,
"notificationType": int,
"purchaseToken": string,
"subscriptionId": string
}
Nombre de la propiedad | Valor | Descripción |
version | string | Es la versión de esta notificación. Inicialmente, es "1.0". Esta versión es distinta del resto de los campos de versión. |
notificationType | int | El objeto notificationType de una suscripción puede tener los siguientes valores:
|
purchaseToken | string | Es el token que se envió al dispositivo del usuario cuando se compró la suscripción. |
subscriptionId | string | Es el ID del producto de la suscripción comprada (por ejemplo, "monthly001"). |
Ejemplo
Este es un ejemplo de una notificación por la compra de una suscripción nueva:
{
"version":"1.0",
"packageName":"com.some.thing",
"eventTimeMillis":"1503349566168",
"subscriptionNotification":
{
"version":"1.0",
"notificationType":4,
"purchaseToken":"PURCHASE_TOKEN",
"subscriptionId":"monthly001"
}
}
OneTimeProductNotification
Un objeto OneTimeProductNotification
incluye los siguientes campos:
{
"version": string,
"notificationType": int,
"purchaseToken": string,
"sku": string
}
Nombre de la propiedad | Valor | Descripción |
version | string | Es la versión de esta notificación. Inicialmente, será "1.0". Esta versión es distinta del resto de los campos de versión. |
notificationType | int | El tipo de notificación. Puede tener los siguientes valores:
|
purchaseToken | string | Es el token que se envió al dispositivo del usuario en el momento de la compra. |
sku | string | Es el ID del producto único que se compró (por ejemplo, "espada_001"). |
Ejemplo
A continuación, se incluye un ejemplo de una notificación por una nueva compra única:
{
"version":"1.0",
"packageName":"com.some.thing",
"eventTimeMillis":"1503349566168",
"oneTimeProductNotification":
{
"version":"1.0",
"notificationType":1,
"purchaseToken":"PURCHASE_TOKEN",
"sku":"my.sku"
}
}
TestNotification
Un objeto TestNotification
incluye los siguientes campos:
{
"version": string
}
Nombre de la propiedad | Valor | Descripción |
version | string | Es la versión de esta notificación. Inicialmente, es "1.0". Esta versión es distinta del resto de los campos de versión. |
Ejemplo
Este es un ejemplo de una notificación de prueba:
{
"version":"1.0",
"packageName":"com.some.thing",
"eventTimeMillis":"1503350156918",
"testNotification":
{
"version":"1.0"
}
}