13

私は新しい市場戦略を試しているので、すべてのコンテンツのロックを解除するア​​プリ内購入で、今すぐ 0.79 ユーロのアプリを無料で公開します。また、すでにアプリを購入したユーザーを裏切りたくないので、アプリを既に購入しているユーザーがすべてのロックを解除するためにアプリ内課金を購入する必要がないチェックを実装することを考えました。

私の問題は... アプリがいつ購入されたかを確認できますか? それとも簡単な方法がありますか?

4

5 に答える 5

7

これを更新するだけで、それは可能です。この質問への回答を見てください。領収書のフィールドの 1 つは「最初の購入日」です。

アプリ内レシートをローカルで検証し、iOS 7 でレシートをバンドルするための完全なソリューション

于 2014-04-16T20:22:17.440 に答える
5

インストール/購入日についてOSに尋ねる方法がないため、ユーザーがアプリを購入したかどうかを確認する方法がないため、これを確実に行うことはできません。

提案どおりに保存できますがNSUserDefaults、ユーザーがアプリを削除すると、この情報は失われます。

アプリを削除してもキーチェーンはクリアされませんが、iOS デバイスが復元されるとこれらの設定が失われる可能性があるため、問題は依然として存在します。

于 2012-06-11T15:22:54.087 に答える
1

rckoenesの説明は正しいです。私は最近そのようなシナリオを経験しており、ここでの回答に記載されているオプションを検討しました。私が最終的に使用するオプションは、既存のアプリのバージョンではなく、アプリの別の拡張機能(「pro」や「lite」など)をリリースすることです。これにより、アプリの購入ステータスを処理する煩わしさがすべて解消されます。次に、すべてのプレミアムコンテンツを含むフル有料バージョンと、コンテンツのロックを解除するためのアプリ内購入を含む1つの無料バージョンがあります。それがお役に立てば幸いです。

于 2012-06-11T15:30:12.653 に答える
0

アプリケーションの現在のバージョンが状態を保存すると仮定すると、アプリケーションの次のバージョンの最初の起動時に、保存された状態 (例: のキーNSUserDefaults、ドキュメント ディレクトリのファイルなど)を確認できます。

ただし、これは 1 回だけ行う必要があるため、チェックが実行されたことを示す別の場所に別のフラグを設定する必要があります。

于 2012-06-11T15:14:48.910 に答える
-1

これは非常に簡単です。新しいアプリがいつオンラインになるかがわかっている場合は、インストールの日付/時刻を確認するだけです (最初の実行時に日付/時刻をキーチェーンに保存します)。無料アプリがオンラインになった日時より前にアプリをインストールしたユーザーは、コンテンツにアクセスできます。新しいユーザーが日付/時刻をいじるのが心配な場合は、オンライン タイム サービスを使用して実際の時刻を取得してください。

于 2012-06-12T14:25:08.707 に答える