文書   >   Foundation   >   iCloud   >   NSUbiquitousKeyValueStore


クラス


NSUbiquitousKeyValueStore


ユーザーが接続しているデバイス上で実行されているあなたのアプリのインスタンス間でデータを共有するためにあなたが使用する、キー値のペアの iCloud ベースのコンテナ。





概要


iCloud の キー値保管を使用して、ユーザーの iCloud アカウントに接続されているすべてのデバイス上で、アプリのすべてのインスタンスに環境設定、構成、およびアプリの状況のデータを利用できるようにします。 BOOL などのスカラー値だけでなく、NSNumberNSStringNSDateNSDataNSArray、および NSDictionary のいずれかのプロパティリストオブジェクト型を含む値を格納できます。


キー値保管オブジェクトへのアプリの変更は、最初はメモリに保持され、システムによって適切な回数ディスクに書き込まれます。ユーザーが iCloud アカウントにサインインしていないときにキー値保管オブジェクトに書き込むと、データは次の同期の機会までローカルに保存されます。ユーザーが iCloud アカウントにサインインすると、システムはローカルのディスク上のキーと値を iCloud サーバー上のキー値を自動的に調整します。


アプリを実行しているデバイスで、同じ iCloud アカウントに接続されている場合、キー値の変更を iCloud にアップロードできます。このような変更を追跡するには、アプリの起動中に NSUbiquitousKeyValueStoreDidChangeExternallyNotification 通知を登録します。その後、synchronize メソッドを呼び出すことで、iCloud (ローカルのものよりも新しい可能性があります) からキー値を取得します。値を変更した後、アプリの設計で iCloud へのアップロードを高速化する必要がない限り、アプリの寿命中、synchronize メソッドを再度呼び出す必要はありません。


アプリ内にキー値保管を使用する方法の詳細については、iCloud 設計ガイド 内の iCloud でのキー値データの設計 を参照してください。


オフラインのときにアプリの動作に不可欠なデータにはこのクラスを使用しないで下さい。代わりに、そのようなデータをローカルユーザーのデフォルトデータベースに直接格納して下さい。


特定のユーザーに対して、アプリのキー値保管で使用できる合計容量は 1 MBです。 キーごとの値のサイズの制限は 1 MBで、キーの最大数は 1024 です。これらの割り当てを超えるデータを書き込もうとすると、書き込みは失敗し、iCloud のキー値保管は変更されません。このシナリオでは、システムは、変更理由が NSUbiquitousKeyValueStoreDownChangeExternallyNotification 通知を NSUbiquitousKeyValueStoreQuotaViolationChange の変更理由で通知します。


iCloud キー値保管のキー文字列の最大長は、UTF8 コード化を使用して 64 バイトです。長いキー名に値を書き込もうとすると、実行時エラーが発生します。


このクラスを使用するには、App Store または Mac App Store を通じてアプリを配布し、Xcode プロジェクト内で com.apple.developer.ubiquity-kvstore-identifier の資格を要求しなければなりません。詳細については、iCloud 設計ガイド 内の 複数のアプリでの共通キー値保管の設定 を参照してください。


このクラスはサブクラス化されていません。


トピックス


注意: 以下に説明された項目は、その殆どが Objective-C での説明になるもので、例外を除き翻訳をしなかった。ごめんなさい。Swift での説明は UbiquitousKeyValueStore を参照して下さい。




共有インスタンスの取得





値の取得






値の設定





メモリ内のキー値データをディスクに明示的に同期する






キーの削除





現在のキー値の取得






定数





通知


関連





以下からの継承


NSObject





目次
Xcode の新機能
NSObject(class)

  • 言語:Swift | Objective-C
  • SDK
  • iOS 5.0+
    macOS 10.7+
    tvOS 9.0+

  • フレームワーク
  • Foundation
  • 概要
  • トピックス
  • 関連












  • トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)