2012-04-23 16 views
27

Actualmente estoy tratando de agregar IAP a una aplicación existente. Con ese fin, he agregado algunos productos y he creado algunos usuarios de prueba. Los productos son suscripciones recurrentes. El dispositivo con el que estoy probando es un iPhone 4S con iOS 5.1.iOS Sandbox Test Cuenta de usuario Gestión de suscripciones

Puedo consultar con éxito la tienda de mis productos y comprarlos con éxito con mis nuevos usuarios de Test. El problema que tengo es que si trato de administrar mis suscripciones desde la aplicación de configuración de la tienda, me obliga a revisar mi cuenta diciéndome que "esta cuenta no se ha utilizado para comprar nada en la AppStore, revise su cuenta y continúe " Si reviso la cuenta, no me permitirá continuar sin proporcionar información de CreditCard.

El resultado final es que nunca puedo cancelar mis suscripciones de prueba. Eliminé Usuarios de prueba y creé nuevos, eliminé la aplicación y la reinstalé, eliminé la aplicación StoreApp and Settings, reinicié el dispositivo, verifiqué las cuentas por correo electrónico antes de comprar, no verifiqué las cuentas por correo electrónico antes de comprar ... todas las permutaciones parece fallar

A veces compraré la misma suscripción dos veces, lo que provocará que StoreKit me pida que administre la configuración de mi suscripción. A veces, esto da como resultado el proceso anterior de "Revisión de la cuenta" y, a veces, da como resultado una alerta que dice "no se puede conectar a la tienda iTunes Store".

Me he quedado sin ideas de cómo continuar.

EDITAR - Este es el ritmo de los acontecimientos con cualquier usuario de prueba iTunesConnect creo

suscripción inicial
Initial Subscription

Use Existing ID
Use Existing ID

Probar cuenta de inicio de sesión En
Test Account Sign-In

Administrar suscripción
Manage Subscription

AppStore de sesión
AppStore Sign-in

No se puede conectar al AppStore
Cannot Connect

revisar su cuenta
Review

Entonces, el proceso de revisión me obliga a ingrese crédito Información de la tarjeta, aunque tiene mi dirección como "1 Infinite Loop Cupertino, CA" (es decir, sabe que esta es una cuenta de prueba).

+1

Este puesto similar encontrado una respuesta: http://stackoverflow.com/q/4566329 –

Respuesta

7

Hay una respuesta del desarrollador de Apple. (Rich Kubota) Acerca de las pruebas de suscripción en el entorno de sandbox.

Esto es un error en el proceso de simulación de compra en la aplicación. No existe una forma compatible para simular el proceso de cancelación o simular el proceso de suscripción de administración desde la aplicación de iTunes de un usuario . Esta limitación también existe con la versión TestFlight de la aplicación. Cuando envía la compilación TestFlight de la aplicación a un usuario y ellos prueban la aplicación , la cuenta de usuario realmente está operando en el entorno de recinto de seguridad . Ha verificado esto porque la aplicación TestFlight no mostrará como una aplicación administrada en los usuarios de TestFlight. ITunes administró la sección de suscripción . Esto se debe a que la aplicación se encuentra en el entorno de la caja de arena , que la aplicación de iTunes no sabe nada. Ha sido un mientras que desde que he respondido en este foro, sin embargo, el mejor medio para verificar que la aplicación manejará el proceso de renovación automática es verificar que la aplicación también maneje la detección de renovaciones de suscripción de renovación automática a través de transactionObserver correctamente. Para el ejemplo , si compra una suscripción de 1 mes en el entorno de recinto de seguridad . A continuación, elimine la aplicación, espere 6 minutos y luego reinicie la aplicación, ¿el transactionObserver detecta que hay una transacción incompleta (la renovación comprimida de un mes) que se procesará ? Esto es muy similar a lo que sucede en el caso de que el usuario reinicie una suscripción en la página de administración de suscripción de iTunes . La transacción se registra en la tienda de iTunes y se habilita un Transaction incompleta para la cuenta de usuario/ID de paquete de la aplicación. Cuando la aplicación se inicia y activa el transactionObserver (a través de una llamada para agregarTransactionObserver) se detecta elTransaction incompleto y se utiliza el método de delegaciónTransaction actualizado para procesar la renovación . La aplicación puede validar la solicitudRecibir para verificar que ahora hay un elemento de matriz in_app para la renovación automática del elemento de suscripción que tiene una fecha de vencimiento mayor que la fecha actual y sabe que la suscripción de renovación automática product_id es activa. En cuanto a las pruebas de que se ha cancelado una suscripción de renovación automática, esto de nuevo necesita compatibilidad con el servidor iTunes Store para simular. Sin embargo, el proceso de validación de recibos funciona a diario y puede detectar qué en el elemento de la matriz de aplicaciones es el más actual para la suscripción de renovación automática , y luego detectar si cancel_date le dice a la aplicación que la suscripción se canceló. Como nota, solo detectar que el campo cancel_date para cualquier elemento puede dar como resultado un falso positivo. El usuario podría haber cancelado una suscripción de renovación automática anteriormente, luego decidió que ya no estaba tan mal y volvió a comprar el artículo.Por este motivo , la lógica necesita asegurarse de que el campo cancelar fecha es establecido en el elemento de la matriz in_app más actual para saber que la suscripción actual ha sido cancelada. Un problema que estoy tratando de determinar - si un elemento cancelado tendrá la fecha de vencimiento movida hasta cancel_date para que una suscripción cancelada pueda aparecer el mismo como una suscripción caducada. Parece el movimiento correcto, pero esta información está controlada por el equipo del servidor iTunes Store. Si desea seguir un mechansim para simular estas características del entorno de la tienda de producción en el entorno limitado, le sugiero que envíe una solicitud de mejora mediante la página web del informe de errores del desarrollador de Apple. Seleccione el producto iTunes Connect para el informe de errores, ya que la sugerencia es algo que la tienda iTunes debe simular, no iOS.

41

Realmente no se puede administrar suscripciones en caja de arena, pero como Jean-Paul de Ville de Goyet descubrió en Apple Developer Forums: suscripciones

1 mes renovación automática cada 5 minutos. Hasta aquí todo bien. Ellos auto-renuevan 5 veces y luego se detienen, por lo que después de 25 minutos obtendrá el error 21006. Sin embargo, incluso al volver a comprar la misma suscripción NO se renovará automáticamente nuevamente en la misma cuenta de prueba ya que tiene ya se ha renovado automáticamente 5 veces.Entonces, si desea probar la renovación y usted ha estado jugando con estas suscripciones por un tiempo, necesita crear un nuevo usuario de prueba de conexión de iTunes. Esto es muy molesto honestamente y sería mucho más fácil si pudiéramos restablecer el historial completo de compras de de una cuenta de usuario de prueba.

He probado mis suscripciones de la misma manera.

+21

su 2015 y todavía tenemos que seguir el mismo procedimiento patético. –

+26

ahora es 2016 y tenemos que seguir el mismo procedimiento patético. – woheras

+4

:/esto es frustrante –

Cuestiones relacionadas