2017-07-05 16 views
0

NSUserDefaultsに保存されているいくつかのプロパティをiOSアプリケーション用に新しいバージョンに更新するときにクリーンアップする必要があります。iOSアプリ、AppStoreを通じてアプリが更新されたときにイベントを購読する方法はありますか?

このようなアプリのアップデートがいつ起こるか通知される方法はありますか?

また、アプリケーションが更新されると、NSUserDefaultsは自動的にはクリーンアップされません。

答えて

2

UserDefaultsは、app-updateで変更されません。あなたが本質的に求めているのは、あなたのデータのバージョン管理を実装する方法です。これを行うための最も基本的な方法は、あなたのアプリでバージョン値を使用し、それをあなたのUserDefaultsに加えることです。アプリの

サンプル・フローは、開始:

  1. あなたはUserDefaultsにアクセスして、「バージョン」キーで、あなたのコードとアプリの起動時には
  2. キー「バージョン」に「1.0」のバージョンを定義していますその値が存在するかどうかがチェックされます。
  3. 値が存在し、それが上記で定義されたバージョンと等しい場合、これは以前にこのバージョンでアプリケーションが既に起動されているため、作業は不要です。
  4. 値は存在しますが、これは上記のバージョンと同じではないか、または値が存在しない場合は、初めてこのバージョンを起動するため、クリーンアップを実行できます。
  5. 最後に、UserDefaultsの値を現在のバージョンに更新します。
3

NSUserDefaultsは、ユーザーが最初からアプリケーションを再インストールしない限り、将来のバージョンで保持されます。

アプリケーションが開いたら、App Delegateで更新できるバージョン番号を記録しておくことで、目標を達成できます。

これに基づいて、ロジックを使って関数をチェックして呼び出して、必要なプロパティをリセットすることができます。

関連する問題