iphone - renewable - Suscripción a la renovación automática del entorno sandbox iOS
ios app store pricing (2)
Para agregar a esto, parece que la línea en la documentación de Apple está siendo mal interpretada
La renovación se realiza a una velocidad acelerada y las suscripciones renovables automáticamente se renuevan un máximo de seis veces por día. Esto le permite probar cómo su aplicación maneja una renovación de suscripción, un lapso de suscripción y un historial de suscripción que incluye brechas.
Esto parece significar que todas las suscripciones por día solo se renovarán 6 veces. En lugar de cada suscripción se renovará 6 veces antes de cancelar. Esto me tiró por un tiempo.
También parece estar en un período de 24 horas. No refrescante en un momento dado. Por ejemplo, hice una suscripción a las 11 am que no se renovó. Hice otra vez a las 2pm que renové 6 veces.
Tengo las siguientes preguntas sobre las suscripciones auto-renovables de iOS
a) ¿Las suscripciones de renovación automática se renuevan automáticamente en el entorno de sandbox? El problema parece ser que las suscripciones no se renuevan automáticamente, aunque la documentación dice que incluso en el entorno de sandbox debería suceder 6 veces.
b) ¿Necesitamos llamar a restoreCompletedTransactions para obtener un nuevo recibo para la suscripción extendida automáticamente, o es -paymentQueue: updatedTransactions: método llamado automáticamente por iOS? (Supongo que se activó automáticamente en ''lanzamiento'' y ''rotación fuera de fondo'' no estoy seguro)
c) ¿Cómo has manejado la misma suscripción en múltiples dispositivos? Esto puede ser manejado por restoreCompletedTransactions, pero llamarlo le pedirá a los usuarios la contraseña, por lo que no es muy práctico llamarlo cada vez que se inicia la aplicación.
a) Las suscripciones de renovación automática son inconsistentes en el entorno de sandbox. A veces, una suscripción se renovará varias veces (aproximadamente 5) antes de finalizar. Otras veces no se renovará en absoluto.
b) (solo recibos de transacciones de iOS6) No necesita llamar a restoreCompletedTransactions
para verificar el estado de una suscripción si está almacenando recibos anteriores (preferiblemente en su servidor). Simplemente tome cualquier recibo de suscripción que haya almacenado para ese usuario y envíelo a la App Store para su verificación. Ellos responderán con latest_receipt_info
incluida la fecha de expires_date
que puede usar para determinar el estado actual de la suscripción.
c) Debería pedir a los nuevos usuarios que "Restauren compras anteriores" en el momento en que llame a restoreCompletedTransactions. Luego envíe uno de esos recibos (preferiblemente de su servidor) a la App Store para verificarlos y obtener detalles descodificados sobre la transacción. Busque la clave original_transaction_id
en la información del recibo. Esto siempre contendrá la identificación de la primera vez que este usuario inició una suscripción contigo. Si compara este ID con otros en su sistema, debería poder determinar qué dispositivos comparten una cuenta de Apple. (Dado que Apple no le permite ver el ID de Apple de un usuario, esta es la mejor manera de identificar una cuenta que abarca varios dispositivos).
Similar a esta pregunta: la renovación automática de iOS expiró al finalizar el período de suscripción actual