私たちは最近、消耗品のみのアプリ内購入を持つアプリを発売しました。無効な領収書と「有効な」領収書で購入したものの、appleからの検証応答の「in_app」配列は空の配列です。そのような「有効な」領収書をユーザーがどのように形成しているかを知る必要がありますか?それはアプリのダウンロードではなく、アプリ内購入の領収書ですか?私は今、検証のために以下のチェックをしています。 Appleのjsonレスポンスで "in_app"フィールドを抽出し、空でない場合はproduct_idの一致をチェックします。私はこのチェックが十分であるか、より良いバカ証拠チェックであるかどうかを知る必要があります。アプリ購入で消耗品購入
0
A
答えて
0
すべてのアプリは領収書を持っています。 IAPを購入したアプリでは領収書にin_appフィールドがあります。あなたのユーザーは、偽の呼び出しをupdatedTransactionメソッドにプッシュしています。あなたは領収書を取得しています(購入しなかったIAPに起因する)し、サーバーに送信しています。他のユーザーは、領収書をどこかから交換することができます(30人の泥棒のうちの1人が購入し、その有効な領収書を抽出して29人の共同泥棒に送付します)。その領収書をデバイスに貼り付け、次にupdatedTransactionsへの呼び出しをプッシュすると、サーバは現在有効ではあるが重複した領収書を取得します。あなたのサーバは、領収書の日付をチェックして、それが最近のものより古くなっているか、またはあなたのサーバに同時送信する必要があるpaymentRequestより古いことを発見する必要があります。 (デバイスでデコードするほうが安全です - はるかに安全です)
***重複したtransaction_idに対してtransaction_idを確認することができました。残念ながら、restoreCompletedTransactionが元の購入と同じtransaction_idを返すので、もうこれを行うことはできません。私はAppleにそれについて話し、彼らは私を無視した。
関連する問題
- 1. 消耗品inapp購入の問題
- 2. iOSサンドボックス - 消耗品を2回購入できない
- 3. SKPaymentTransactionState同じ製品を複数回(消耗品または消耗品ではない)購入した後、製品をダブル購入した後に
- 4. MKstorekit4を使用した非消耗品のアプリ内購入ですか?
- 5. アプリ内購入の際、アプリ内購入
- 6. アプリ購入:SKPaymentTransactionState購入済み
- 7. inApp購入前のiphoneアプリの購入
- 8. iOSでのアプリの購入で消耗品ではありません。サーバーが必要ですか?
- 9. 私のアプリケーション間で、アプリ内購入で購入した非消費製品を共有しますか?
- 10. アプリ購入リソースセキュリティ
- 11. 消費可能なアプリ内購入
- 12. 複数アプリ内購入複数商品
- 13. アプリ購入商品の承認時間
- 14. アプリ内購入管理製品のテスト
- 15. iTunesアプリ購入で
- 16. MacOSアプリ内購入
- 17. アプリの購入テスト
- 18. アプリ購入 - バンドル(apple)
- 19. アプリ内購入ヘルプ
- 20. アプリ内購入サブスクリプション
- 21. アプリ内購入は
- 22. を購入した場合、ユーザーが既に商品(消耗品)を購入したかどうかはどのようにわかりますか?
- 23. アプリ内購入:AndroidとiOSの間のアプリ内購入
- 24. iPhoneアプリ:アプリ購入時
- 25. シンプルなアプリ購入アプリAndroid
- 26. iPhoneアプリ:アプリ内購入
- 27. アプリ内購入でクレジットを購入する
- 28. iPhone:アプリ内購入、一度サンドボックスで購入
- 29. アプリ内購入テストで購入を削除するユーザーアカウント
- 30. iPhoneでのアプリ内購入
私は、消耗品の場合、重複したtransaction_idを確認して拒否できることに気づきました。 –
ありがとうございます。私は "original_transaction_id"がベットだと分かりました。 –
@ PeterB.Kramer壮大な統一領収書にユーザー全体の購入履歴がある場合、どのトランザクションが現在の購入に関連付けられているかをどのように判断できますか? – Learn2Code