El recibo de compra en la aplicación iOS no devuelve una date de compra original para una recarga.

Estoy intentando utilizar el recibo de la tienda iOS para notar la diferencia entre una compra y una nueva descarga, en function del 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 date de compra original que es igual al valor de date de compra .

Aquí hay un recibo de la tienda real que regrese (que es una nueva descarga de una compra existente en la aplicación, ya que actualmente tengo que confiar en el seguimiento de UDID para 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 del entorno limitado y las testings con una count iTunes Connect de testing, o si se trata de una compra en vivo utilizando la URL activa para la verificación de recibos, 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 esto es lo que debes usar para distinguir la diferencia entre una nueva compra y una nueva descarga de la misma compra? Obviamente, rastrear el UDID del dispositivo / hacer un GUID de aplicación y rastrear eso, es una forma de hacerlo, pero no es lo suficientemente preciso (por ejemplo, los usuarios que tienen múltiples dispositivos)

¿Alguien más tiene este problema cuando estos valores son SIEMPRE idénticos?

¡Cualquier ayuda en esto es muy apreciada! He agotado todas las otras routes y espero que alguien aquí sepa la respuesta.

Depende de lo que quieras decir con " networkingownload ".

La date de purchase_date original_purchase_date debe diferir de date de purchase_date solo cuando restaura su compra, por lo que SKPaymentTransaction le devuelve SKPaymentTransactionStateRestonetworking . Si es el caso, hay algo mal.

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