私のアプリの領収書の検証が最近壊れ始めました。どうやら、過去 2 ~ 3 週間で、Apple はアプリ内購入レシートのバージョン番号を から に変更した2
よう3
です。
署名構造体を調べる場合:
struct signature_blob {
uint8_t version;
uint8_t signature[128];
uint32_t cert_len;
uint8_t certificate[];
} *signature_blob_ptr = (struct signature_blob *)signature_bytes;
…ここで、 (iOS 7 以降非推奨)オブジェクトsignature_bytes
の JSON BLOB からの署名文字列の Base64 でデコードされた値です。transactionReceipt
SKPaymentTransaction
…のチェックをハードコードしましたversion == 2
。今、私は の値を見ています3
。
App Store で数年後、ここ 2 ~ 3 週間で、新しい購入や「復元」購入でアプリのコンテンツをアクティブ化できないというユーザー レポートがアプリに届き始めました。したがって、これは Apple 側の最近の変更であると思います。
Apple が変更を行ったことを確認できる人はいますか? 詳細を教えてください。この新しいバージョンの購入レシートに関するドキュメントを教えていただけないでしょうか?