CloudKit で Core Data を使用するアプリがあります。変更はデバイス間で同期されます。
メイン ターゲットには、「リモート通知」がチェックされたバックグラウンド モード機能があります。メイン ターゲットとウィジェット ターゲットはどちらも同じアプリ グループを持ち、サービスが CloudKit に設定され、コンテナー内の同じコンテナーがオンになっている iCloud 機能を持っています。
ウィジェットから Core Data データにアクセスするには、この回答に示すように CoreDataStack を使用します。WidgetKit ファイルには、フェッチ要求を実行して返す関数がありますInt
— その要求からの行数です。後で、その番号をウィジェット ビューに表示します。
ただし、CloudKit の Core Data データが変更された場合、たとえば、別のデバイスでユーザーがレコードを追加または削除した場合、それInt
は正しくない可能性があります。
そのような変更が発生したときに、WidgetKit タイムライン エントリの更新を要求する方法は? (別のデバイスまたは現在のデバイスでデータが変更された場合) ありがとうございます。