私はフロントエンドの開発者で、最初のバックエンドの作成を開始しようとしています (AWS を使用しているので、うまくいけば大惨事にはなりません)。ガイダンスが必要です.SOやチュートリアルなどの適切なトピックへのリンクにすることができます-長い間検索してきましたが、解決する必要がある問題を検索する方法がわからないでしょう.
簡単に言うと、私のクライアントは本を販売しています。これらの書籍を補完するために、現在アプリを開発中です。このアプリのさまざまな部分はさまざまな本に対応していますが、アプリ自体にも価値があります (つまり、アプリを使用するために本を所有する必要はありません)。ユーザーが書籍を所有している場合、アプリの対応する部分を AppStore から無料でダウンロードできるようにするという考えです。そうしないと、IAP を使用してこのコンテンツをいくらかの金額で購入する必要があります。
次の簡単な解決策を思いつきました。
- 販売されたすべての書籍の ID を含むデータベースを維持しています
- ユーザーが所有する本のIDを登録して入力できるようにします
- これらのIDをデータベースと照合し、他のユーザーが以前にIDを入力していないかどうかを確認します
- ID が OK の場合、所有している本に対応するコンテンツをユーザーがダウンロードできるようにします。
ユーザーは、複数のデバイス (iPad、iPhone、子供の iPhone など) で自分のアカウントにログインすると、これらのデバイスからコンテンツをダウンロードできます。
ただし、ユーザーが自分のアカウントを友人に譲り、友人が自分のデバイスでこのアカウントにログインしてコンテンツをダウンロードし、何も購入していないにもかかわらず、ログアウトしてアプリを使用するという状況を防ぎたいと思います。彼はその本を所有していません。
私のアイデア:
ユーザーはログインして、コンテンツを使用する資格があることを確認する必要があります。これは、コンテンツが既に電話にある (以前にダウンロードした) 場合でも同様です。ユーザーは同時に 1 つのデバイスにのみログインできます (別のデバイスにログインすると、最初のデバイスからログアウトされます)。重大な欠点: ユーザーは、すべてのコンテンツをダウンロードしたとしても、インターネットに接続している場合にのみアプリを使用できます。
アプリ内購入または本を購入することにより、ユーザーは、たとえば 3 回のダウンロードの権利を得ることができます。重大な不利益: ユーザーがアプリを削除してから再インストールしたい場合はどうなりますか? 購入したパーツの再ダウンロードは、デバイスが以前と同じかどうかを確認する信頼できる手段がないため、1 回のダウンロードとしてカウントされます。少なくとも iOS の場合はそうではありません。
書籍の所有者には (無料ではなく) 可能な限り低価格で同じコンテンツを提供し、他のユーザーには通常の価格で同じコンテンツを提供します。このようにして、すべてのチェックを (ユーザーの iCloud アカウントを介して) Apple に委任します。これは、コンテンツのロックを解除するには常に IAP を使用する必要があり、購入が行われると、Apple がすべてを追跡するためです。
それを行う他の方法は?助けてください。
また、考慮すべきもう 1 つの点があります。「クラスルーム アカウント」を作成できるようにしたいと考えています。複数のデバイスが同じアカウントにログインして、コンテンツをダウンロードできます。クライアントは、許可されるデバイスの数を決定し、この数のダウンロードをデータベースに入れます。