質問: vStore.string(forKey: "inputText") { print("\(str)) } ``` で行いました。 一つのiPhone内では問題なくiCloudに保存して、値の読み込みも行えました。 しかし、同じアプリを異なる2つのiPhoneにインストールを行い同じApple IDを使用を試してみました。 片方が保存したkey-valueを、もう片方が読み出したときに読み出せません。 それぞれ独立している挙動をしているようです。 Key-valueは同じApple IDを使用していてもデバイスが異なれば、それぞれ独立しているのでしょうか? ご存知の方、ご教示お願いします。
回答: NSUbiquitousKeyValueStoreを複数のアプリで共有するにはEntitlements Plistファイルに同じ iCloudコンテナIDを設定する必要があります。 EntitlementsファイルはXcodeが自動的に作成して、アプリのバンドルIDが自動的に設定されています。複数のアプリで共有するにはその値を、いずれかのアプリのIDに合わせて変更します。 詳しくは公式ドキュメントの「Configuring Common Key-Value Storage for Multiple Apps」セクションをご覧ください。