Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

any option to know if apple app get the push notification?

I build xcode app that get push notification, the main problem is that the push notification is very critical for me. so I want to check if the push notification is delivered to the device with the app installed, I understand that if the iphone dosn't have internet connecction / 3G the push notification is not getting to the device.

how can I check if the device get the notification or not? how can I check if the APNS successful to deliver the push notification?

I want to send sms if the push notification is not deliver to the device so I think about the idea to get the notification event when it's open by the push notification, and to send request to my server so i can know if the push notification is successful deliver or not. the main problem is that the user need to open the app every time he get the notification and in the night it's a problem. so this option is not good for me.

I check the feedback server push notification but i don't find any info that I can get if the push notification is delivered or not

any idea??

like image 359
user1273189 Avatar asked Mar 16 '12 04:03

user1273189


People also ask

Does Apple send push notifications?

Remote Notifications Communicate with Apple Push Notification service (APNs) and receive a unique device token that identifies your app. Use basic macOS command-line tools to send push notifications to Apple Push Notification service (APNs).

Do push notifications work when app is closed iOS?

Apple does not offer a way to handle a notification that arrives when your app is closed (i.e. when the user has fully quit the application or the OS had decided to kill it while it is in the background). If this happens, the only way to handle the notification is to wait until it is opened by the user.


2 Answers

With iOS7 you have a new method called application:didReceiveRemoteNotification:fetchCompletionHandler: which you probably could use for your task. From Apple's Docs:

Implement this method if your app supports the remote-notification background mode. ... When a push notification arrives, the system displays the notification to the user and launches the app in the background (if needed) so that it can call this method. Use this method to download any data related to the push notification. When your method is done, call the block in the handler parameter.

Unlike the application:didReceiveRemoteNotification: method, which is called only when your app is running, the system calls this method regardless of the state of your app.

like image 112
Lem Avatar answered Sep 18 '22 15:09

Lem


The short answer, you can't, since APNS is one way. However, since an app can execute arbitrary code upon receipt of a notification, you can use this to say, send an http request to your own server when the notification is recieved.

like image 31
Moshe Avatar answered Sep 21 '22 15:09

Moshe