SKPaymentQueue addTransactionObserver solicitando a senha da App Store na inicialização após a compra no aplicativo

Meu aplicativo está usando compras no aplicativo e a maioria dos meus usuários pode comprar sem problemas. Para essas pessoas, meu aplicativo baixa o conteúdo após a compra ser bem-sucedida e eles ficam felizes.

No entanto, para um número crescente de meus usuários, uma vez que eles concluem uma compra bem-sucedida no aplicativo, sua senha da App Store é solicitada toda vez que o aplicativo é iniciado depois disso. Acredito que isso esteja acontecendo na chamada para:

[[SKPaymentQueue defaultQueue] addTransactionObserver:observer];

que estou chamando na inicialização, de acordo com a etapa 6 do guia de compras no aplicativo da Apple:

guia arquivado:https://web.archive.org/web/20130515222703/https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/StoreKitGuide/AddingaStoretoYourApplication/AddingaStoretoYourApplication.htmlguia atual:https://developer.apple.com/library/content/documentation/NetworkingInternet/Conceptual/StoreKitGuide/Chapters/DeliverProduct.html#//apple_ref/doc/uid/TP40008267-CH5-SW4

Meu palpite é que, por algum motivo, os servidores de compras no aplicativo da Apple não estão registrando que a transação foi concluída com êxito - mesmo que eu ligue para

[[SKPaymentQueue defaultQueue] finishTransaction:transaction];

quando a transação for concluída e meu conteúdo tiver sido baixado com sucesso.

2 perguntas:

Alguém mais está vendo isso?

Alguém tem uma correção sugerida?

EDIÇÃO BOUNTY:

É uma transação que foi feita com um Apple-ID diferente. É por isso que não pode ser concluído, a menos que você digite as credenciais corretas na caixa de diálogo. A pergunta deve ser:

Como posso evitar essas transações inativas (a transação não foi concluída, o usuário não tem rede, enquanto isso altera o ID do aplicativo)?Como você pode podar oSkPaymentQueue?

questionAnswers(14)

yourAnswerToTheQuestion