5

私は iOS アプリケーション (および Web サイト) を持っています。プレミアム ユーザー オプションが必要です。つまり、ユーザーがプレミアム ユーザーである場合、特別なコンテンツにアクセスできます。ユーザーは、月単位または年単位でプレミアム ユーザーになることができます。

最初の質問 - Apple は、同じ製品を Web サイトや InAppPurchase を通じて購入できるようにすることを許可していますか?ウェブサイト)。そのため、ユーザーが InAppPurchase を介してプレミアム アカウントを購入すると、プレミアム ユーザーと同様にウェブサイトにもログインでき、その逆も可能です。

それが許される場合、消費型製品を使用してプレミアムユーザー機能を実装し、サーバーがすべてを管理するか、更新不可能なサブスクリプションを使用する方が良いでしょうか?

消耗型アプローチ InAppPurchase を実行し、現在のユーザーが 1 か月/1 年間プレミアム ユーザーであることを示す要求をサーバーに送信し、アプリの起動/ユーザー サインインのたびに API を呼び出して、現在のユーザーがプレミアム ユーザーかどうかを確認します。ユーザーかどうか。

処理が難しいケースは次のとおりです。 1. ユーザーがアプリを使用しているときに、プレミアム ユーザー ステータスの有効期限が切れたとき。2. InAppPurchase が完了した直後にネットワークがオフになり、サーバーへの要求が不完全な場合。

更新不可のサブスクリプション アプローチ これが正確にどのように機能するかはわかりませんが、消耗品と似ていると思います。

以前のトランザクションを復元するには、2 つの方法のうちどちらが適していますか?

4

1 に答える 1

5
  1. はい、アプリでプレミアム機能を提供する限り (たとえば、iOS アプリにリンクされた Facebook アプリでは、同じ機能に対して Facebook クレジットを実装しました)。
  2. 私たちのアプリ (プレミアム機能を有効にするために消費可能なアプリ内を使用していた) は、更新不可能なサブスクリプションに切り替えるまで、数回拒否されました. プレミアム機能には時間制限があり、Apple が拒否した理由は、プレミアム機能に追加機能以外の時間が含まれる場合、それが目的であるため、更新不可能なサブスクリプションを使用する必要があるためです。

トリッキーなケースは実際にはそれほどトリッキーではありません。最初のものでは、アプリにサーバーから有効期限を取得させ (サブスクリプション権を購入した後に保存しましたか? ;-) )、ユーザーがプレミアム機能を使用しようとしたときに、ユーザーがまだ許可されていることを確認するチェックを実装します。2 つ目は、電話で購入を保存し、検証のためにレシートをサーバーに送信します。サーバーが到達可能で、レシートが有効であると表示された場合にのみ、電話から削除します。それ以外の場合は、検証のためにサーバーに再送信する必要がある未送信の領収書が電話に保存されているかどうかを起動時に確認できます。

于 2013-05-02T06:06:43.633 に答える