2012-02-22 8 views
5

Estoy tratando de utilizar el recibo de la tienda iOS decir la diferencia entre una compra y una Redownload, basado en el original_purchase_date y/o original_transaction_id. Independientemente de si una transacción es una nueva compra o una nueva descarga, el recibo de la tienda siempre devuelve una nueva original_purchase_date que es igual al valor purchase_date.recibo de compra en iOS aplicación no devolver un original_purchase_date para un Redownload

Aquí es un recibo de la tienda real, regresé (que es un Redownload de una ya existente en la compra de aplicación - ya que actualmente estoy tener que depender de seguimiento UDID de distinguirlos)

{ 
    "product_id": "com.myproduct.id", 
    "original_purchase_date_ms": "1329825956382", 
    "purchase_date_ms": "1329825956382", 
    "original_purchase_date": "2012-02-21 12:05:56 Etc/GMT", 
    "purchase_date":   "2012-02-21 12:05:56 Etc/GMT", 
    "bvrs": "1.0", 
    "original_purchase_date_pst": "2012-02-21 04:05:56 America/Los_Angeles", 
    "purchase_date_pst":   "2012-02-21 04:05:56 America/Los_Angeles", 
    "original_transaction_id": "1000000028387131", 
    "transaction_id":   "1000000028387131", 
    "item_id": "452671574", 
    "quantity": "1", 
    "bid": "com.mybundle.id" 
} 

Independientemente de si estoy usando la URL caja de arena y la prueba con una prueba itunes conectar la cuenta, o si su una compra en directo utilizando la URL en vivo para la verificación del recibo, estos valores son siempre idénticos:

original_purchase_date_ms == purchase_date_ms 
original_purchase_date == purchase_date 
original_purchase_date_pst == purchase_date_pst 
original_transaction_id == transaction_id 

estoy equivocado al pensar que estos son lo que deberías usar para decir el diff erence entre una nueva compra y una nueva descarga de la misma compra? Obviamente, hacer un seguimiento del UDID del dispositivo/crear un GUID de la aplicación y rastrear eso es una forma de hacerlo, pero no lo suficientemente preciso (por ejemplo, usuarios que tienen varios dispositivos)

¿Alguien más tiene este problema donde estos valores SIEMPRE ¿idéntico?

¡Se agradece cualquier ayuda sobre esto! He agotado todas las demás rutas y espero que alguien aquí sepa la respuesta.

Respuesta

1

Depende de lo que quiere decir con "volver a descargar".

El original_purchase_date debe diferir de purchase_date sólo cuando esté restaurar su compra, por lo que el SKPaymentTransaction que SKPaymentTransactionStateRestored regresa. Si es el caso, hay algo mal.

De lo contrario, por ejemplo, si está recomprando una compra de consumibles, estas fechas serán las mismas todo el tiempo, y todo está bien.

+0

Hola, gracias por la respuesta. Sí, me refería a una restauración de una compra original, así que cuando alguien borra la aplicación de su teléfono y también se eliminan las descargas de la aplicación, cuando reinstalan la aplicación y restauran las compras en la aplicación, supongo que la fecha original de compra debería diferir desde la fecha de compra, sin embargo, en todos los casos, esto es lo mismo para mí – user1225584

+1

Si tiene una suscripción de renovación automática, la fecha de compra original debe ser la fecha de la compra del primer período. –

Cuestiones relacionadas