2011-09-13 4 views
1

만료 된 자동 갱신 구독 갱신은 애플리케이션이 활성화되어 실행 중일 때 절대로 제공되는 것이 아니라 백그라운드에서 또는 시작될 때 애플리케이션이 깨어 났을 때 제공되는 것을 발견했습니다.iOS 용 자동 갱신 구독

즉, 앱을 사용하고 있고 구독이 만료되면 사용자가 계속 앱을 사용하는 동안 앱이 자동 갱신되고 유효하다고 가정하면 앱에 전달되지 않습니다.

이 동작은 Apple에 의해 문서화 된 것처럼 보이지 않으며,이 경험이있는 다른 사람도 확인할 수 있습니까?

분명히 하위가 만료되었음을 감지하고 사용자에게 구독 상태를 확인하고 새 구독을 가져올 restoreCompletedTransactions를 제공 할 수 있습니다. 그러나 우리가 잘못된 일을하고 있는지 궁금합니다. 이 동작이 정상적인 경우

감사합니다.

답변

5

예. 그게 제가 경험 한 것입니다.

앱이 활성화되면 앱 스토어가 앱에 새로운 자동 갱신 구독 영수증을 보내도록 트리거하는 것 같습니다. 그러나 당신은 그것에 의지해서는 안됩니다. 최신 영수증을 받으려면 restoreCompletedTransactions을 사용할 필요가 없습니다.

이 주제에 대한 자세한 내용은 answers을 참조하십시오. (Apple의 설명서 및 일부 실험을 기반으로) 수행해야하는 작업은 서버에 영수증을 저장하는 것입니다. 그런 다음 사람의 가입이 자동 갱신되었는지 확인하려면 Apple 절차 (verifying one of those receipts with iTunes)를 따르십시오. Apple은 그 영수증에 관한 정보와 그 영수증의 최신 영수증에 응답 할 것입니다. 전송 한 것과 다른 경우 자동 갱신이 발생했음을 알 수 있습니다.

+0

앤드류 (Andrew) 서버가없는 경우 애플 리케이션 영수증을 Apple에 보내서 업데이트 된 인앱 구독 영수증을 받으십시오. 단지 사용자가 취소하지 않았는지 확인하기 만하면됩니다. 신청. – MiMo

+1

@MiMo이 경우 앱에서 만료일이 만료 될 때까지 기다린 다음 Apple에 확인서를 보내고 새로운 영수증으로 응답하는지 확인합니다. 그럴 경우 추가 된 기능의 사용을 사용자에게까지 확장 할 수 있습니다. 그렇지 않은 경우 사용자는 마지막 기간 동안 어느 시점에서 구독을 취소합니다. 사용자가 현재 기간이 끝나고 새 영수증이 나타날 때까지 구독을 취소했는지 여부를 알 수있는 방법이 없습니다. 사용자가 자동 ​​갱신 기능을 사용할 수 있지만 현재주기가 완료됩니다. – Andrew

+0

감사합니다. @Andrew thats 내가 실제로하고있는 일은 때때로 구매 날짜 이전 인 만료 날짜가있는 영수증을 실제로받는 중입니다. 영수증을 보낼 때마다'[[NSBundle mainBundle] appStoreReceiptURL];에서 얻거나 한번 거기에서 가져 와서 NSUserDefaults에 저장하고 NSUserdaults 데이터를 사용하여 다음에 사과 영수증을 쿼리합니까? – MiMo

관련 문제