毎年のバイアスで自動更新可能なサブスクリプションを使用するiOSアプリケーションを構築しようとしています。私の質問は、ユーザーがIOSでサブスクリプションをキャンセルしたときに通知を受け取り、ユーザーの機能をキャンセルできるようにする方法です。
2 に答える
返信を複製している場合は申し訳ありません。
領収書のステータスが21006
で、という名前のキーがあるcancellation_date
場合、それはキャンセルです。そのキーで新しい有効期限を見つけることができますが、解析するためのより良い値が必要な場合は、フォーマットされた日付ですreceipt['latest_expired_receipt_info']['cancellation_date_ms']
。expires_date
誰かが確認リクエストを送信せずにアップルから通知を受ける方法を知っていますか?キャンセルの可能性があるため、すべての製品について毎回クエリを実行する代わりに、製品の有効期限が切れるときにのみチェックするのが合理的です。
まず最初に。アプリが雑誌のように定期刊行物ではない場合は、ARS(自動更新可能なサブスクリプション)から離れる必要があります。Appleはそれを拒否し、NRS(非更新サブスクリプション)の使用を要求する場合があります。
ここに実際に貼り付けることができるよりも多くのコードですが、アプリ内購入レシートの確認に関するAppleのこのガイドに従ってください。
基本的に、レシートとシークレットをJSONオブジェクトに入れて、Appleに送信します。これは、アプリからではなく、サーバーから行うことをお勧めします。これは、 PHPとcURLを使用したストアレシートの確認に関する優れたガイドです。
JSONオブジェクトは次のようになります。
{
"receipt-data" : "(receipt bytes here)",
"password" : "(shared secret bytes here)"
}
Appleは、有効期限などの情報を持つ別のJSONオブジェクトで応答します。