Cómo saltar la alerta «Usted ha comprado ya esta, pero no ha sido descargado»

Estoy probando mi compra en la aplicación de la aplicación. Mientras me compra mi producto consumible por segunda vez con mi cuenta de usuario en el entorno de recinto de seguridad, siempre me muestre una alerta «ya ha comprado, pero no se ha descargado. Pulsa en ACEPTAR para descargar ahora.». Hay alguna forma de saltar la alerta?

Gracias por la ayuda.

  • ¿Usted llegó a la solución… también estoy recibiendo mismo problema.
InformationsquelleAutor user297047 | 2010-03-19

7 Kommentare

  1. 15

    Usted no debe ver esta alerta si usted está comprando un producto de consumo después de ya haberlo hecho así. Si es así, entonces usted nunca se han eliminado las transacciones de la cola. Usted tiene que quitar antes de que la tienda te permitirá comprar de nuevo.

    [[SKPaymentQueue defaultQueue] finishTransaction:transaction];
    • Desafortunadamente, esto no deshacerse del problema para mí.
    • Eso es correcto. También asegúrese de que su paymentQueue:updatedTransactions: se llama después de reiniciar el simulador/dispositivo y comprobar el estado de las transacciones pendientes. En algún momento usted tiene que llamar a finishTransaction a.
  2. 10

    Bien, mi solución después de buscar en la web durante varias horas! No te olvides de añadir transacción observador para el IAP administrador!!

    [[SKPaymentQueue defaultQueue] addTransactionObserver:self];

    Su aplicación debe agregar un observador para el pago de la cola durante la inicialización de la aplicación. Si no hay observadores adjunta a la cola, el pago de la cola no sincronizar su lista de pendientes de transacciones con la App Store de Apple, porque no hay ningún observador para responder a una actualización de las transacciones.

    Si una aplicación se cierra cuando las transacciones que se procesan, esas transacciones no están perdidos. La próxima vez que se inicie la aplicación, el pago de la cola se reanudará el procesamiento de las transacciones. Su aplicación siempre debe esperar a ser notificado de las transacciones completadas.

  3. 6

    Esto en realidad es bastante complicado. Apple tiene este mensaje incorporado en su proceso de transacción, por lo que si usted permite que el usuario llega al punto donde ellos están tratando de recompra de un producto que ya poseemos, que se verá este mensaje.

    Puede utilizar

    [[SKPaymentQueue defaultQueue] restoreCompletedTransactions]; 

    Para restaurar las transacciones que ya han comprado antes de llegar a su comprar pantalla. Ejecutar restoreCompletedTransactions antes de que su tienda de la GUI de carga y, a continuación, bloquear los botones de compra de cualquier contenido que se desbloquea cuando una transacción se ha completado correctamente.

    • Incluso para los consumibles?
    • Nope, restoreCompletedTransactions es de ninguna utilidad cuando el uso de consumibles.
    • Tenga en cuenta que cuando se llama a restoreCompletedTransaction la contraseña de entrada de la pantalla emergente, y el usuario probablemente no sabrán por qué.
    • Tenga en cuenta que si usted hace esto, el usuario deberá introducir su nombre de usuario y contraseña. Probablemente mejor que quede como un botón, el usuario puede presionar desde un menú de configuración.
    • Esto no soluciona el «Usted ha comprado ya esta, pero no ha sido descargado pero no podemos permitir que el programador para iniciar una descarga de nuevo el error».
  4. 2

    Esto también puede suceder perfectamente válido código ad-hoc construir si usted ha iniciado sesión con un no-sandbox ID, o el MAL sandbox de IDENTIFICACIÓN – como uno de otro dev programa que el cert de la aplicación fue firmado con. Como personal y corporativa, por ejemplo.

  5. 2

    Asegúrese de que se han agregado a este fragmento de código en el controlador de manejo de todas las solicitudes.

    [[SKPaymentQueue defaultQueue] addTransactionObserver:observer];
  6. 2

    He tenido el mismo problema, incluso aunque me hizo añadir el transacción observador y también hizo eliminación de la transacción de la cola. Yo era capaz de solucionarlo por la limpieza de mis perfiles de aprovisionamiento:

    1. Ir a Portal de suministro y comprobar si su distribución/programador de perfiles de aprovisionamiento son todavía válidos – renovar si es necesario o al menos actualizar por la eliminación de un dispositivo y agregarlo de nuevo.

    2. Ir a su organizador en XCode y eliminar todos los perfiles de aprovisionamiento, de golpear a la actualización.

    3. Eliminar su aplicación y todos los de tu aplicación perfiles de aprovisionamiento desde el dispositivo de prueba

    4. Firmar con su actual usuario de prueba desde la appstore y vuelva a iniciar sesión más tarde cuando
      su compra en la aplicación cosas le solicitará que lo haga.

    5. Limpiar, construir e iniciar sesión con tu usuario de prueba cuando usted compra un artículo en su aplicación

    6. Rezar para que funcione para usted también!

    • En el FWIW departamento, simplemente reiniciando mi iPad Mini (que se ejecuta 7.0.4) también restaurado «normal» sandbox comportamiento (sin jugar con los perfiles de aprovisionamiento – a pesar de que yo iba a intentar los pasos anteriores próxima!)
  7. 1

    Me acaba de arreglar el problema después de crear una nueva cuenta para el uso. Creo que Apple solo se copia de seguridad y se mete cuentas por un tiempo.

    Buena suerte!

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea