Is Silent Remote Notifications possible if user has disabled push for the app?
Short answer, yes
The exciting new opportunity for app developers in iOS 8 is that Apple will now deliver “silent” pushes even if the user has opted out of notifications. Also, “silent push” is no longer just for Newsstand apps. Every app can take advantage of this ability to refresh content in the background, creating the most up-to-date, responsive experience possible, the moment the user opens the app.
Although...
Users still have the ability to switch off your app’s ability to process a “silent push” by means of the “Background App Refresh” control. Even though Apple Push Notification service (APNs) will deliver a push marked “content-available” to your phone, the OS will not wake up your app to receive it, effectively dropping it on the floor. However, opting out of “Background App Refresh” is a lesser-known capability not directly associated with Notifications. You don’t access this preference in your Notifications Settings--it’s located under General > Background App Refresh screen.
Keep this in mind when building your application.
Source:
https://www.urbanairship.com/blog/watch-list-ios-8-opt-in-changes
Read iOS push permissions via silent push
Kind of, yes. If you send a silent push notification and your app has not been forced killed, then it could send back an update back to some of your servers saying that it got the notification.
Nevertheless, if the user manually quits the app, then those notifications are thrown away by the operating system, so you are not able to tell.
Also, you could simply call isRegisteredForRemoteNotifications
on your application to check if the device is registered or not.
Update
To be more clearly: It doesn't matter if anything is turned on or off, you can never ever rely on the delivery of a message. The operating system may just delay the delivery, or skip it at all, and you'll never know. At least, not on the server side. Your app truely can check (once it is running again)
what kind of notifications it received (it just has to do some bookkeeping), and then ask the server if everything it has is also everything the server send sometime - but this logic has to be implemented by you.
ios silent push notification when user denies Push Authorization
Edit:
As stated out in the comments, silent notifications aren't affected by the user permissions. The only thing you have to take care of is the notifications format:
The sending of a silent notification requires a special configuration of the notification’s payload. If your payload is not configured properly, the notification might be displayed to the user instead of being delivered to your app in the background. In your payload, make sure the following conditions are true:
- The payload’s
aps
dictionary must include thecontent-available
key with a value of1
.- The payload’s
aps
dictionary must not contain thealert
,sound
, orbadge
keys.
Source Apple
This was my old answer true for pre-iOS 8 versions (and still is for visible notifications, which aren't topic here):
If the user denies remote notifications, this door is closed. Technically you could think of your own background service, but this needs to run constantly in the background, e.g. via continuous GPS usage (bad idea).
A better option is to convince the user to accept and ask at the right moment in time. This article should give you a rough direction what to think about: http://techcrunch.com/2014/04/04/the-right-way-to-ask-users-for-ios-permissions/
Related Topics
How to Log a Method's Execution Time Exactly in Milliseconds
iOS 8 - Can't Install Enterprise App
Uidatepicker Select Month and Year
How to Find File Uti for File, Withouth Pathextension, in a Path in Swift
How Can a Web Application Send Push Notifications to iOS Devices
Uigesturerecognizer and Uitableviewcell Issue
Uipopoverpresentationcontroller on iPhone Doesn't Produce Popover
Place Images Along a Bezier Path
Getting the Word Touched in a Uilabel/Uitextview
Uitableview Load More When Scrolling to Bottom Like Facebook Application
Xcode 9 - "Fixed Width Constraints May Cause Clipping" and Other Localization Warnings
Custom Mkannotation Callout Bubble with Button
iOS 8 Enabled Device Not Receiving Push Notifications After Code Update
Swift - Problems with Corner Radius and Drop Shadow
How to Push and Present to Uiviewcontroller Programmatically Without Segue in iOS Swift 3