ultima puedo ocurrio instalar error descargar como celular actualizar actualizacion ios receipt-validation

puedo - Comprender la validación de recibos y la actualización de recibos en iOS



ocurrio un error al instalar ios 12 (3)

  1. Como mencionó Zhang, si no se realizó una compra o restauración, no habrá recibo en la tienda.
  2. Localice el recibo. Si no se encuentra un recibo, la validación falla y no debe solicitar la actualización del recibo nuevamente. Solo cuando usted mismo restaure el proceso, debe solicitar nuevamente el recibo.
  3. Esto se mostrará siempre cuando intente actualizar el recibo (o elegirá entre las configuraciones que desea que no le pidan una contraseña durante 15 minutos).
  4. Sí.

Para obtener más información, consulte aquí: https://www.objc.io/issues/17-security/receipt-validation/#about-validation

Tenemos problemas para entender completamente el flujo de validación de recibos en iOS.

Esto es lo que hacemos actualmente (en desarrollo):

En applicationDidFinishLaunching y en applicationWillEnterForeground validamos el recibo en el lado del servidor, si no hay un recibo o el recibo no es válido, intentamos actualizar el recibo y volver a validarlo.

Aquí hay algunos problemas / preguntas:

  1. ¿Cuáles son los casos en los que no hay recibo disponible en el dispositivo?

  2. ¿Debemos emitir siempre una solicitud de actualización de recibo cuando no hay recibo?

  3. ¿Por qué a veces se muestra este cuadro de alerta en el inicio? ¿Entiendo que esto se muestra en una solicitud de actualización de recibo?

  1. ¿Cuándo debe ocurrir una verificación de recibo? Actualmente lo hacemos cada vez que se realiza una compra para verificar la compra, ¿es este uso correcto?

  1. En producción siempre está disponible un recibo en el dispositivo. En la prueba después de la primera instalación no hay. Por lo tanto, si desea realizar una prueba correcta, debe restaurar una compra incluso si no existe una compra para ese usuario en el entorno de prueba. ¿Porqué es eso? La aplicación descargada desde la tienda de aplicaciones siempre viene con un recibo, incluso si son gratuitos.
  2. Depende de la lógica de negocio que quieras aplicar. Si está validando el recibo contra un servidor cada vez que utiliza la aplicación, por supuesto que necesita el recibo. Si no está presente (pero en producción es siempre) o no es válido, puede solicitar una actualización o restauración, pero por lo que recuerdo, siempre debe preguntar al usuario primero si quiere hacer eso (puede ser una motivo de rechazo). Restaurar y actualizar no son lo mismo.
  3. Esto suele aparecer en la compra / restauración / actualización. Pero también si la cuenta tiene algunas solicitudes pendientes porque la aplicación se ha bloqueado o si interrumpió la depuración antes de que la solicitud finalice de alguna manera, se aburrirá por mucho de eso. No hay forma de eliminarlos mediante programación, solo inicie sesión hasta que se detengan. Por supuesto que no será una prueba válida.
  4. Depende de usted y del tipo de compra. Si es una suscripción autorenewable, puede validar el recibo contra un servidor, luego almacenar la "fecha de finalización" en el cliente y realizar otra verificación después de que la fecha haya caducado. Preste atención a que los recibos pueden ser bastante grandes, ya que también tienen todos los valores históricos.

1.No se realizó la compra / restauración.
2.Nope.See 1
4.Seguro. Para los productos consumibles, recuerde guardar hash en su servidor, para vencer el ataque de repetición.