14

次の例を検討してください。プロのライターが Web ベースの UI からストーリーを書くアプリがあるとします。そして、これらのストーリーは、アプリの購入アイテムとして、iOS アプリのユーザーが利用できるようになります。

ご存知かもしれませんが、事前にアプリ内購入製品を作成する必要があります。しかし、私たちの状況では、ライターによって作成されたストーリーごとに、新しい IAP 製品を作成し、Apple が承認するのを待たなければならないことを意味します。

これを回避するために、1.99 ドル相当のストーリー、2.99 ドル相当のストーリーなど、一般的な「消耗品」製品を IAP で作成することを計画しています。次に、アプリケーション UI で、作家が作成したストーリーのリストを表示し、作者がストーリーを作成したときに指定したストーリーの対応する価格を表示します。ユーザーが購入ボタンをタップすると、同じ価格の一般的な消耗品の購入が表示され、アプリ内購入プロセスが完了します。

問題は、Apple がそのような実装を承認するかどうかです。それは彼らの IAP ポリシーに適合していますか? このようなワークフローのガイドラインが見つからなかったので質問しています。

これを実装する別のアプローチは、ゲームの使用のように、アプリ内クレジット/通貨システムを実装することです。人々がクレジット/コインを購入してから、コインでアイテムを購入する場所。これは試行錯誤されたアプローチですが、私のアプリのアナロジーには適合しないため、質問です。

4

2 に答える 2

2

達成したいことは完全に実現可能ですが、唯一のことは、購入可能なコンテンツが動的でなければならないということです. 製品 ID をアプリにハードコードするのではなく、サーバーからダウンロードする必要があります。

あなたの例を参照すると、SKProduct ID が格納されているオブジェクトのリストがテーブル ビューに供給されていると想像できます。これを書いている時点では、Apple サーバーからアプリで利用可能なすべての製品 ID を取得することはできないため、これを行う必要があります。彼らがこの機能を実装しなかったのはお尻の痛みであることはわかっていますが、正直なところ、まだ実装していないのであれば、実装することはないと思います。

これは私が言及している方法です: initWithProductIdentifiers

取得するすべての識別子を含む NSSet を提供しますが、空のセットまたは nil を提供すると、既存のすべてで応答しません。これが正常に機能しないと思われる場合は、Apple にバグを報告できます。それでも疑問がある場合は、この SO の回答を確認してください:リンク

注意すべきもう 1 つの重要な点は、製品を手動でアップロードする必要があることです。Apple は、プロセスを自動化するために API を公開していません。つまり、ライターがサーバーに何かをアップロードするたびに、iTunes Connect にログインして製品を作成する必要があります。さらに、Apple に登録できるさまざまな製品の最大数であるため、10,000 製品に制限されます。また、iTunes Connect ガイドを簡単に読むことをお勧めします。このガイドには、今述べたような重要な情報が含まれています: iTunes Connect

サードパーティのフレームワークに関しては、前述の UrbanAirship のように、サーバーに受信検証を実装する必要がなくなります。それ以外に、大きな利点は見当たりません。

とは言っても、ビジネスモデルを再考することをお勧めします。製品を 1 つずつアップロードするという面倒な作業に、本当に価値があるのでしょうか? それとも、ユーザーが月に多数の記事をダウンロードするために一定の金額を支払うサブスクリプション方式の方がよいでしょうか。ベーシック、プレミアム (無制限のダウンロード) など、さまざまなレベルを設定して、サーバーからの記事の配信を制御できます。それはあなた次第ですが、私にとって答えはかなり明確です。

于 2012-11-14T12:33:06.397 に答える
0

プリタム

動的コンテンツを配信するには、消耗品ではなくサブスクリプションを使用する必要があります。サブスクリプションを使用すると、更新ごとに課金し、同時に新しいコンテンツを配布できるため、問題が解決します。

コンテンツを動的に配信したり、サブスクリプションや有効期限を追跡したりするのに費やす時間を大幅に短縮する、UrbanAirship などのサードパーティ サービスを調べることができます。

于 2012-11-12T14:27:52.217 に答える