My App supports two services that is Push Notification for Alerts and a Voip Call feature whose notification also comes in the same way as of PushNotification but video rendering is done with GoogleWebRTC.
The App was working perfectly fine but from past few months these services are not working.[ Nothing is changed in App and on the server side to push the notifications]
Issues:
VoIP (Video call) not working: I have apns certificate which is valid in today's date and stays with the backend Server. My server sends the payload notification to APNS but on iPhone am unable to receive it. I have checked the App registration part also and is able to receive the token for the same.
Framework used are: PushKit, UserNotifications, GoogleWebRTC .
I don't understand where is the gap, the backend triggers the APNS but there no response.
Ports enabled on server are: 443, 5223, 2197, 2195, 2196.
Similarly Push notification were also not working, So I tried to change it to register on Firebase for device registration token And did some coding at backend to send the notification to that device. It was working perfectly fine from last few weeks, but it suddenly stopped. I checked the JSON Payload and tried to send it through PostMan, in both it says 200 Success. And in Application end am waiting for breakpoint to hit in userNotificationCenter(_: , willPresent, completionHandler).
What all I have checked:
1)My server to APNS server connectivity.
2)Verified the apns certificate. The certificate was created in October 2024, whose expiry is in Nov 2025 and it support both Sandbox and Production environment.
3)Checked required delegates are implemented in App. With the capability enable in it, is also sending registration token to backend.
Kindly guide me where I can check in this flow.
Thanks in Advance!
Notifications
RSS for tagLearn about the technical aspects of notification delivery on device, including notification types, priorities, and notification center management.
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Created
I dont want my server to be spammed. Currently I am only in payment-related notifs (eg: user successfully renewed his subscription, user didnt successfully renew his subscriptions, ..)
Where can I set that?
Topic:
App & System Services
SubTopic:
Notifications
The following issue has occurred:
Push notifications are not being received on certain devices.
What could be the possible causes?
Push notifications are being sent from our own server, and we are receiving normal responses from APNs.
Users have confirmed that notifications are enabled on their devices, and they report no network issues.
This problem is occurring for multiple users.
以下の問題が発生しています:
特定のデバイスでプッシュ通知が受信されません。
考えられる原因は何でしょうか?
プッシュ通知は自社のサーバーから送信しており、APNs(Apple Push Notification service)からは正常な応答が返ってきています。
ユーザーはデバイスで通知が有効になっていることを確認しており、ネットワークの問題も報告されていません。
この問題は複数のユーザーに発生しています。
Hi team,
We've observed that for all background notifications (where content-available set to true, https://developer.apple.com/documentation/usernotifications/pushing-background-updates-to-your-app#Create-a-background-notification),
we never received any response with error string "Unregistered". This
differs from non-background pushes, where expired tokens are regularly
cleared.
Is this the expected behavior (i.e.,
background notifications will not return an "Unregistered" error), or could this indicate an issue on our side?
Thanks in advance for any clarification.
Hi all,
We encountered an issue where APNs (Apple Push Notification service) push messages cannot be received during development. The specific description is as follows:
Our app runs on an iPad that connects to the cellular network using a SIM card and accesses the Internet through the company's MDM, which provides APN setting proxies.
During operation, we found that the device fails to receive push messages from APNs. Network packet capture revealed that the connection attempt by apsd to port 5223 failed. According to Apple's documentation (https://support.apple.com/zh-cn/102266), when port 5223 cannot be connected to, it will fall back to port 443 and use a proxy. However, our packet capture showed that when port 5223 was unreachable, the apsd service on the iPad did not attempt to establish a connection to port 443.
Since the iPad device currently cannot establish a connection with APNs, it consistently fails to receive push messages from APNs. We tried disconnecting the SIM card and using a Wi-Fi environment, and in this case, the iPad device was able to receive push messages from APNs normally.
Could you advise us on how to proceed with troubleshooting in this situation?
Topic:
App & System Services
SubTopic:
Notifications
I’m building a standalone Apple Watch smart alarm app that should trigger alarms on the watch in response to Bluetooth or internet events.
This means the app operates in the background and attempts to trigger an alarm when such an event occurs. As far as I know, the appropriate API for this is WKExtendedRuntimeSession.notifyUserWithHaptic:repeatHandler.
However, I can’t seem to start an extended runtime session while the app is in the background. I’m getting the following error:
-[WKExtendedRuntimeSession _invalidationReasonAndDelegateCallbackErrorForError:outCallbackError:]:729:
WKExtendedRuntimeSession hit internal error.
Error Domain=com.apple.CarouselServices.SessionErrorDomain
Code=17 "startSession cannot be called on a scheduled session"
UserInfo={NSLocalizedDescription=startSession cannot be called on a scheduled session}
Calling notifyUserWithHaptic directly also similarly fails.
It seems notifyUserWithHaptic is intended to be scheduled during a foreground session to trigger at a later time, rather than being called ad hoc from a background context.
Is there any way to create a proper alarm view on the Apple Watch from a background execution context?
Hello. I'm currently implementing Apple Notification v2 to prepare for refunds for in-app purchases, but I'm not receiving requests from Apple servers to my backend server.
I've applied HTTPS (TLS 1.2) and correctly registered production/sandbox notification URLs on App Store Connect.
After requesting a test notification, when I check the status of testNotificationToken, I receive an UNSUCCESSFUL_HTTP_RESPONSE_CODE as follows:
{"signedPayload":"......":[{"atteptDate":1752128001970,"sendAttemptResult":"UNSUCCESSFUL_HTTP_RESPONSE_CODE"}]}
The endpoint for receiving notifications is set to accept POST requests with application/json format, and it responds with 200 (OK) without any content. However, Apple notifications are not coming through.
Could anyone help me with this issue?
Topic:
App & System Services
SubTopic:
Notifications
I'm working on implementing Apple Wallet passes using background push notifications.
My server successfully sends the push notification using APNs. The response from the server is HTTP/2 200, and the device receives the push — I can confirm this from device logs.
However, the device logs show the following error:
"Failed to parse JSON message payload for topic "
"Unable to deserialize JSON message payload"
My payload is below 2 payload.
//string payload = "{"aps":{"content-available":1}}";
string payload = JsonConvert.SerializeObject(new
{
aps = new Dictionary<string, object>
{
{ "content-available", 1 }
}
});
string curlArgs = $"-s -o nul -w \"%{{http_code}}\" " +
$"--data-binary \"{payload}\" " +
$"-H \"apns-topic: {bundleId}\" " +
$"-H \"apns-push-type: background\" " +
$"-H \"apns-priority: 5\" " +
$"-H \"content-type: application/json\" " +
$"-H \"authorization: bearer {jwt}\" " +
$"--http2 https://api.push.apple.com/3/device/{token}";
I’ve confirmed that:
The device has the Wallet pass installed.
The apns-topic header is set to my passTypeIdentifier.
The apns-push-type is background and apns-priority is 5.
Steps to Reproduce:
Install Wallet pass on iOS device.
Send background push to device using the above payload.
Observe the device logs using Console.app or log stream.
See error: unable to deserialize JSON message payload.
Is there a specific payload format expected for Wallet passes? Or any additional fields required in the push payload to avoid this deserialization error?
Hi Team,
We’re following up on our request for the Critical Alert entitlement for our app, which we plan to use to notify users about critical states of their devices. It’s been almost 4 weeks since we submitted the request, and we wanted to check on the typical review timeline so we can plan our upcoming work accordingly.
If there’s anything we can provide or clarify to help complete the review or make the process easier, we’d be happy to assist. or the right forum to reach out to.
Topic:
App & System Services
SubTopic:
Notifications
Push-notification token is properly requested and displayed from the iOS simulator / xcode, but not from the release in the AppStore... Both popups for permission (push-notifications and critical alert) appear and can be confirmed, but no callback takes place...
Topic:
App & System Services
SubTopic:
Notifications
Hi team,
I am developing VOIP feature using PushKit and CallKit but CallKit is not show when app in background or terminate state, now in foreground state I can call reportNewIncomingCall from pushRegistry-didReceiveIncomingPushWith and it's work as expected but the problem is in background or terminate state it's not
my setup:
PushKit is configured
In Signing & Capabilities I add background modes (Remote notifications and Voice over IP)
In info.plist I add
<key>UIBackgroundModes</key>
<array>
<string>voip</string>
I'm not sure should I create new VOIP Certificate but now I can receive message notification normally.
Any help or suggestions would be greatly appreciated
Thank you
My push notifications on Ios devices come through but only silently while all settings are on order. On Android sounds are on. Anyway knows how to fix this on Apple's side?
token:009739d008a19dbe7e2273a1e4e8b5f73c4e2d7e220e7308f41e316f4c2fcf56
最近app无法收到服务端通过apns推送的通知,提交是成功的,但是app的所有用户都无法收到通知
I have a database in CloudKit, where the host share (using CKShare) a record to participants. The record is in her private database, but for the participants is in their shared database. How do I send push notifications to everyone when a new child record is created?
I have set up an iOS application with CarPlay scene using carplay-driving-tasks entitlement. And as per latest policy changes I'm able to get push notifications in the CarPlay screen. But unlike from phone scene, when I tap on a notification from CarPlay I don't get a trigger on didReceive method to intercept the payload of the notification that user tapped on. Is there any other ways or configuration needed to get this working?
I just need to get the payload and present an Alert template within the CarPlay when user taps on a CarPlay notification and the app opens.
Topic:
App & System Services
SubTopic:
Notifications
Tags:
APNS
CarPlay
Notification Center
User Notifications
Question, if I am writing async code in the notification service extension, I understand it terminates after 30 seconds.
If I want to wait until these async methods finish before calling the content handler, I believe an option I have is to use dispatch groups. However I am open to other solutions if there are better options.
My question is, if I use dispatch groups, is there any issue in using the main queue here? Or does the main thread not make sense to use in the context of the NSE?
dispatch_group_notify(group, dispatch_get_main_queue(), ^{
if (self.contentHandler) {
self.contentHandler(self.bestAttemptContent);
}
});
Or is it recommended to instead use a different queue in the NSE?
dispatch_queue_t nseQueue = dispatch_queue_create("com.blah.blah.nse.queue", DISPATCH_QUEUE_SERIAL);
dispatch_group_notify(group, dispatch_get_global_queue(QOS_CLASS_(SOMETHING), 0), ^{ ... });
OR am I over thinking this? :) Thanks ahead of time, relatively new to iOS so just looking to learn/understand better.
Topic:
App & System Services
SubTopic:
Notifications
Tags:
APNS
Extensions
Notification Center
User Notifications
I have converted a large part of the data, but only 5% of the data was successfully converted. The failed devicetoken shows "bad devicetoken" when accessing APNS. Here are examples of failed conversions devicetoken. Is there any official documentation for this part?
DeviceToken Orgin \xc2\xa1\xcb\x9cr\xc3\x81\xe2\x80\x9e\x01b\xc3\xbce1pf\t\xc2\xa7\xc3\x82v}\xc3\xa1\xc3\x9a:?\r\n\xc3\xa5\xc6\x92\xc3\xb7y\xc3\x9e\xe2\x80\x9c\xc3\x89r
Hi all,
I have a React web app that we use as a Progressive Web App (PWA). We currently:
Use PWA Builder to package it for Android and iOS
Host the app on a secure HTTPS URL
Use Firebase Cloud Messaging (FCM) for push notifications (working on Android)
However, on iOS, we are unable to get push notifications to work. I understand that PWAs on iOS have limited push support (Safari only, and not through WebView). So I explored using Capacitor, but:
Capacitor can load a server.url pointing to our hosted app (great for reuse), but push notifications don’t work
If we build the web app locally (npm run build) and embed it in the native iOS shell via Capacitor, push works
We would prefer not to fully merge our authentication and main app UIs if avoidable
Questions:
Is there any approved way to enable push notifications in an iOS .ipa built from a hosted web app (URL) using PWA Builder?
If not, is embedding the web assets locally the only Apple-approved way to get push support?
Are there any best practices or native plugin recommendations (e.g., APNs or FCM) for handling push notifications in iOS app?
Thanks in advance for any guidance. 🙏
Let me know if more technical details would help.
We're building a taxi driver app. Our goal is simple:
Play a notification sound when a new ride request arrives — even if the iPhone is connected to CarPlay.
We use Firebase push with "sound": "default" and "interruption-level": "time-sensitive". The app requests .carPlay and uses a category with .allowInCarPlay.
Everything works when CarPlay is disconnected — we get sound and banner. But when connected to CarPlay:
the push is delivered silently,
no sound is played (even on the phone),
Siri Announce is enabled, but nothing is spoken.
Questions:
Is notification sound blocked when CarPlay is active, unless the app has CarPlay entitlement?
Is Siri Announce the only way to notify the driver audibly in this case?
Would getting a CarPlay entitlement (e.g. CarPlay.communication) fix this without building a full CarPlay UI?
Thanks — all we need is a reliable sound alert when a new ride comes in.