Iniciando Compras
Manejando fallas en las compras

Procesando Compras

El método ProcessPurchase de su listener de la tienda se llama cuando una compra finaliza. Su aplicación debería cumplir con lo que usuario ha comprado, por ejemplo, desbloqueando contenido local o el envió de recibos de compra a un servidor para actualizar un modelo de juego del lado del servidor.

Un resultado se devuelve para indicar si su aplicación ha finalizado procesando la compra:

Resultado Descripción
PurchaseProcessingResult.Complete La aplicación ha finalizado de procesar la compra y no debería ser informada de esta nuevamente.
PurchaseProcessingResult.Pending La aplicación todavía está procesando la compra y ProcessPurchase será llamado nuevamente la siguiente vez que la aplicación inicie, al menos del que el método ConfirmPendingPurchase de IStoreController sea llamado.

Este conocimiento explícito está diseñado para asegurar que las compras sean completamente completadas en el evento de problemas de red o crashes de la aplicación; cualquier compra que se complete mientras la aplicación está fuera de linea será enviada a la aplicación en la siguiente inicialización.

Adicionalmente, el Unity IAP mantiene las transacciones abiertas en la tienda subyacente hasta que sea confirmado como procesado, asegurando que las compras que se pueden consumir no se pierdan si el usuario re-instala su aplicación mientras una compra de consumo está siendo procesada.

Tenga en cuenta que este método puede ser llamado en cualquier punto siguiendo una inicialización con éxito. Si su aplicación crashea durante la ejecución del manejador ProcessPurchase entonces será invocado nuevamente la siguiente vez que el Unity IAP inicializa, por lo que usted puede desear implementar su propia de-duplicación adicional.

Iniciando Compras
Manejando fallas en las compras