Syncing LocaLNotifications via iCloud in background - ios

Using iCloud I'm syncing my app data through all of the user's Apple devices.
The problem is that the user can create himself an alert and I want to do that if the user created a notification in the iPad, he would get the notification in the iPhone also, without the need of opening the app in the iPhone (to sync iCloud changes). I want the iCloud to sync in the background, only for the notifications thing.
Also, when a user gets a notification and opens the app in his iPad, the notification should be removed from all of his other Apple devices, it should be not seen in the notification center.
Is that even possible? Thanks a lot!

The only way for your app on the iPad to deliver a notification to the iPhone, assuming the app isn't already running on the iPhone, would be for the app to make a call to a server that would send an APNS notification to the iPhone.
As far as removing the notification, you have this sort of control over local notifications, but not over remote notifications. I don't believe there's any way with APNS to remove the notification from the other devices.

Related

Swift: Local Notification on iPhone and independent Watch App

I work on an app for iOS and watchOS. The watch app is independent but users will be able to use it side-by-side to the iPhone app, synced via iCloud.
The iOS app includes a daily reminder (via UNUserNotificationCenter) to open the app, the notification shows up on both devices (as usually with all other apps).
But what if the user only downloads the watch version of the app? I scheduled the same local notifications I have in the iOS app into the watch app, too.
Now, the iPhone gets the notification, and the watch gets two notifications.
How can I manage to get the iPhone notification only on the user's iPhone so that the Apple Watch does not receive two notifications? Or is there a smarter solution?
Thanks in advance

iPhone - Apple Watch Sync (WatchOS 6) via CloudKit problem - Silent push notification

I watch the WWDC video regarding keep iPhone and independent watch app (watchos 6) in sync. So I have made a simple cloudkit subscription on the Apple Watch on a record (watch os 6).
1) On the iPhone I modify the record, but when the iPhone is unlocked the notification is never send from cloudkit to the Apple Watch.
If I modify the record directly on the cloudkit dashboard and
2a) the iPhone is locked, then the silent notification is sent to the watch. -> great!
2b) the iPhone is unlocked, then it is shown directly on the iPhone. For user visible notification this behavior make sense, but in case of silent notification it doesn´t, because there is no way if you change settings on the iPhone App (iPhone unlocked), that you get a push to the watch (via the cloudkit subscription).
Does anybody have the same problem or any way to get this working with cloudkit?

How to send notification from iPhone to apple watch?

I want to send notification from iOS App to the apple watch app.
I will receive push notification on iPhone. When I receive the push notification I want to send a notification to my apple watch app along with some data like name,time, and just plain text. I am new to the apple watch. I have seen an example MMWormable, but that does not send notifications. It sends only data from iOS App when both the apps are running, but i want to send notification even if app is closed on both the iPhone & Apple watch.
EDIT:
I have read https://support.apple.com/en-in/HT204791 it says it will show notifications to apple watch when if iPhone is locked & it will not show notifications on apple watch if iPhone is not locked.
How can i show notifications to both the iPhone & apple watch.
for the solution, if you use a simulator, you have to turn off the simulator with the power button according to the device, later the notification will enter the apple watch automatically
If push or local notification arrives on iPhone it will display notification only on iPhone[if the phone is unlocked].If it is locked notification will be displayed on watch. FYI notification wont be displayed on both ,OS will choose device in which user is active.
If you want than you can add it on local notification an also on watch to fetch the data.

Local Notifications in Apple Watch

How do you send Local Notifications from iPhone to an Apple Watch app when the Apple Watch app is in the background? And how do you check Local Notifications in the simulator, if possible?
The notifications shown at Apple Watch are the sames that appears in your iPhone.
If you have your iPhone locked, notifications go to the Apple Watch also.
You can not send a notification that only shows at Apple Watch.
As of Apple Docs:
Apple Watch takes full advantage of the existing interactive
notification support on iOS. If your iOS app supports notifications,
Apple Watch displays those notifications at appropriate times. When
one of your app’s local or remote notifications arrives on the user’s
iPhone, iOS decides whether to display that notification on the iPhone
or on the Apple Watch. For notifications sent to Apple Watch, the
system lets the user know subtly that a notification is available. If
the user chooses to view the notification, the system displays an
abbreviated version of the notification first, followed by a more
detailed version. The user can dismiss the detailed notification,
launch your Watch app, or act on the notification by tapping an
available action button.
Apps are not required to do anything to support notifications. The
system provides a default notification interface that displays the
alert message from the notification. However, apps can customize the
notification interface and include custom graphics, content, and
branding.

Apple Watch Instant Notification

Is it possible to send instant notifications to Apple Watch from an iPhone app? The Apple Watch guide says "Apple Watch displays those notifications at appropriate times". So looks like there is no guarantee that the notification will be instant. I'm developing an iOS app that provides navigational notifications so those have to be instant.
Unfortunately WatchKit doesn't support it at this time. Not only can you not guarantee when the notification will appear, you can't even guarantee it will show up on the Watch. The OS decides which device is active and routes the notification there.
You can schedule/fire a local user notification to make it shown on the Watch, with limitations:
Users may turn off notifications of your app on Watch.
Notifications are only sent to Watch when the paired iPhone is locked, and the watch is on the wrist.

Resources