問題タブ [receipt-validation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
280 参照

ios - 独自の iTunes IAP レシート検証サーバー、レシート内の一意のデータを作成しますか?

IAP の自分の領収書を検証しようとしています。一意性をチェックできる一定のデータポイントを見つけることに関して、いくつかの問題に直面しています。

status: 0 最初の問題は、私の領収書がまだたくさんあることin_appです。フィールドは空の配列です。意味はありませんtransaction_id, original_transaction_id

この質問がここや Apple サポート フォーラムで行われているのを見たことがありますが、これらの種類の領収書について決定的または公式の回答は見たことがありません。それらは有効ですか?

2 番目の問題は、一意のデータ ポイントを見つけることです。空のin_appフィールドの大文字と小文字を無視して、 transaction_id.

transaction_idが2 回表示される正当なシナリオはありますか? それとも、それは検証済みの偽のレシートですか?

0 投票する
0 に答える
445 参照

in-app-purchase - アプリ内購入トランザクションの復元、同じトランザクション ID の取得

現在、サンドボックス モードでアプリの購入をテストしており、以前のトランザクションを復元するたびに、レシートの transaction_id フィールドと original_transaction_id フィールドの両方に元のトランザクション ID が含まれています。

Apple のドキュメントを読んで、復元はまったく新しいトランザクションであることがわかりました (つまり、新しいトランザクション ID だと思います)。そのため、情報を追加するために正確に original_transaction_id が追加されます。

私が得ているのは、復元時に original_transaction_id と transaction_id が等しいことです。これはサンドボックスにあるためですか? または、すべてが間違っていることを理解していますか?

0 投票する
1 に答える
9276 参照

swift - openssl を迅速なプロジェクトに追加する方法

アプリ内購入のレシート検証を iOS/OSX プロジェクトに追加する方法を学んでいます。

ここにはすばらしい概要があり、WWDC14 にはこのトピックに関する優れたビデオがあります。

たくさんのサンプル コードがありますが、誰もが 1 つのステップをスキップします。openSSL ヘッダーをインポートする方法。迅速なコンパイラは、そのようなモジュールがないと不平を言います。

1行のコードを書く前に、私はすでに立ち往生しています。openssl フレームワークはどこに隠れていますか?

0 投票する
1 に答える
138 参照

swift - iap レシートの検証: セキュリティ

領収書の検証を使用したアプリ内購入の実装に関する StackOverflowの素晴らしい投稿があります。ただし、セキュリティ上の理由から、そのコードをそのまま使用しないように警告しています。多くのチュートリアルやApple のドキュメントにも見られる感情です。たとえば、これを行わないように言及しています。

それは素晴らしいことですが、では、どうすればこのようなことを行うことができるのでしょうか? この例では、領収書が有効か無効かを検証し、無効な場合は終了します。

すべきこととすべきでないことのリストはたくさん見ましたが、代わりに何をすべきかについての例やアイデアはあまりありませんでした。たとえば、opague predicateを使用しますが、ウィキペディアは具体的な例を1つも言及していません。

すべての人が同じコードを使用するべきではないことは理解していますが、いくつかの指針 (またはこのトピックに関する考え方) は役に立ちます。誰かが私のような初心者に、これに関するベスト プラクティスを説明してくれることを願っています。ありがとう!

0 投票する
1 に答える
109 参照

ios - IOS アプリ内購入 サンドボックス テスト - コンテンツのロックを解除しない

アプリ内購入のサンドボックス アカウントでアプリをテストすると、トランザクションが完了したことを確認できますが、購入したコンテンツのロックは解除されません。

例えば:

  1. レベル パックを購入する

    結果: 取引は成功しましたが、パックのロックは解除されていません。

実行した手順:

  • 複数のテスト ユーザー アカウントを作成しました。
  • すべてから完全にサインアウトした場合にのみデバイスにビルドする
  • アプリ内購入から求められる 1 回だけサインインします。
  • 各テスト アカウントでアプリを削除して新たにインストールする

アプリ内購入が成功した後にコンテンツを実際にロック解除するために、欠けているもの、またはしなければならないものはありますか?

開発はかなり新しいです、ありがとう

0 投票する
1 に答える
399 参照

macos - Mac App Store への送信時のレシート検証エラー

Mac App Store の提出で、私のアプリは次の説明で拒否されます:-

"有効な領収書がインストールされている場合、アプリは起動時に終了します。コンソールはアプリを報告しExited with exit code: 173、OS はアプリを報告します" is damaged and can't be opened"。これは通常、アプリが領収書を正しく検証していないことを示しています。"

コードで領収書の検証をまったく行っていないので、これを修正するにはどうすればよいですか? それは私の側ではなく、レビューでのみ発生します。これは、シンプルな Swift ui + Objective-C+ ロジック OS X アプリケーション用の C++ です。他のアプリ (Objective-C + CPP) では、すべて問題ありませんでした。