apple / apple/sample-cloudkit-sync-engine

CloudKit sync refresh problem when changes going from iOS to macOS

オープン
#15 コメント 6 件 リアクション 1 件 担当者 0 名 GitHub で見る
主要言語
Swift
スター
270
フォーク
15
PR マージ指標
30日以内にマージされた PR はありません

説明

I am then testing sync by running this app in my MacBook and my iPhone. Generally sync is working, but the behavior is very different when syncing changes from macOS -> iOS compared to from iOS -> macOS:

1. I open app on both my MacBook and iPhone
2. I add item on my MacBook, it shows up a second later on iPhone
3. On the other hand, if I add item on my iPhone it never shows up on my MacBook until I send app to background and then bring back to foreground.

Is this known/expected behavior? Any way to fix?

I have also tried calling `try await self.database.syncEngine.fetchChanges(.init(scope: .all))` on the mac, but that doesn't seem to help. I must command-tab to another app, and then command tab back to the SyncEngine app to see changes updated in the Mac UI

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

調査の方向性

Reproduce the two-device scenario with the app running on iOS and macOS, comparing Mac-originated and iPhone-originated changes. Start by tracing the macOS refresh path around database.syncEngine.fetchChanges(.init(scope: .all)); done means iPhone changes appear in the Mac UI without switching the app to the background and back.

索引モデルが issue の本文から書いたものです。

評価

技術スタック
ios, macos, swift
領域
desktop-dev, distributed-systems, mobile-dev
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
説明が足りない
初心者へのやさしさ
35/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。