Enviloment : TestFlight
AppleAccount : sandbox
The problem that is happening : Unable to get receipt with storeKit.requestReceipt
Prerequisite :
The form to input ID and password is displayed even if the user is already logged in to AppleAccount (not displayed when normal).
The same operation is not reproduced by using the sandbox during debug builds.
- (void)requestReceiptWithBlocks:(ReceiptCallback)callback
{
self.receiptCallback = callback;
SKReceiptRefreshRequest *receiptRequest = [[SKReceiptRefreshRequest alloc] init];
receiptRequest.delegate = self;
/** When start() is executed, iOS displays the "Sign in to iTunes Store" dialog if you are not yet logged in to the iTunes Store */
[receiptRequest start];
}
storeKit.requestReceipt { success, receipt in
guard success, receipt != nil else {
if success {
// receipt nil
} else {
// requestReceipt failed
}
}
}
Does anyone know why the receipt would be in a state where it cannot be retrieved? Thank you.