Email problem between Mail.app and iOS devices
Something just started happening with the latest update: I'll move into folders, delete or flag emails on my iOS device and when I sit down at my Mac, open Mail, none of those actions have been reflected.
Same goes in the other direction, I'll perform actions on Mail.app and those actions are not reflected on the iOS devices.
I've checked and the only thing I can assume is going on is a toggle got flipped somewhere during one of the updates and I'm not sure which one. I suspected that it had something to do with the fetch/push settings on the iOS device.
Here is what was set:
Passwords & Accounts -> Fetch New Data: Push
Push Toggle: On
GMail accounts: Fetch
iCloud: Push (Inbox and Sent are checked)
Other calendars & Contacts set to Fetch
Fetch Schedule: Hourly
I haven't deliberately gone into any of these settings, so I'm not sure what is going on here. Any advise is appreciated.
In this sort of scenario my first troubleshooting step is to log in to the web interface of the particular cloud service to ascertain which changes are being propagated to the "server".
Then you can perform an action on a device and refresh the browser to see if that change has made it up to the server. Then do the same on the other device. This will hopefully isolate the problem to just one of the two network connections - iOS or macOS.
On the iOS devices, I have seen Mail fail to recover from temporary network connectivity problems (such as when an iPhone connects to a "free" wifi network that doesn't allow traffic until the user authenticates via a portal page). In this case turning the iOS device off and back on again usually refreshes the network connection status.
Another possible cause is a home router whose NAT firewall has become "confused" and is erroneously blocking some mail/IMAP connections. You can test this by moving the device to cell/hotspot connection to see if mail then responds appropriately. A "cold reboot" of domestic routers often fixes this sort of glitch. (By cold I mean physically unplug the router from the power for at least 3 minutes.)