모든 다운로드를 일시 중지 한 다음 다운로드를 모두 다시 시작하여 다운로드를 다시 시작할 수 있습니다. 다음은 내가 사용하는 헬퍼 메소드입니다. 다운로드되는 각 SKTransaction에 대한 강력한 참조를 포함하는 인스턴스 변수를 사용합니다.
- (void)pauseAllDownloads {
METHOD;
for (SKPaymentTransaction *transaction in self.transactionsBeingDownloaded) {
[[SKPaymentQueue defaultQueue] pauseDownloads:transaction.downloads];
}
[[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:NO]; //stop the dl activity icon in the status bar
}
- (void)resumeAllDownloads {
METHOD;
if (self.transactionsBeingDownloaded.count == 0) {
[self restoreCompletedTransactions];
} else {
for (SKPaymentTransaction *transaction in self.transactionsBeingDownloaded) {
NSLog(@"state: %i", transaction.transactionState);
[[SKPaymentQueue defaultQueue] resumeDownloads:transaction.downloads];
}
}
[[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:YES]; //show the dl activity icon in the status bar
}
범프. 나는 시뮬레이터로 이것을 시도하고 있는데 그것은 범인일지도 모르지만 SKDownloadStateFailed : ing 후에는 다른 구매와 함께 다운로드를 재개 할 수있는 방법이없는 것으로 보인다. – Jonny