I have a question about APNs specifications.
We are aware that if we delete the app, we will disable the device token managed by APNs. we intend to send a push notification from AWS SNS to APNs and if the device token is disabled, AWS SNS will identify that the app has been deleted from our phone.
I believe the specification is that iOS uninstall data is only available after the 8th day.
However, it has been a month since the uninstallation and still the APNs are not returning the device token as invalid.
Why is the uninstall data not available?
If there is a way to do this waiting up, please let me know.
Notifications
RSS for tagLearn about the technical aspects of notification delivery on device, including notification types, priorities, and notification center management.
Post
Replies
Boosts
Views
Activity
Issue of not being able to check Metrics indicators for some domains after applying Push through FCM
The push is received normally, but the metrics are displayed as 0, making it impossible to check any indicators. Someone knows any solution?
The metrics implemented in Braze using the same method are displayed normally, but the implementation through FCM is only shown as 0.
我正在开发一个即时通讯的App,遇到个问题,就是如何做到跟微信一样,iPhone上收到语音通话邀请通知时,配对的watch上持续响铃?
Hello,
I am approaching the recent PTT Framework as my desire is to create a Walkie Talkie app. I watched the video and followed the documentation. I haven't managed to get it working yet, as there are some steps that aren't 100% clear to me.
But the biggest doubt right now is: if I manage to create a walkie talkie App that works with PTT Framework on SwiftUI, will I be able to integrate this functionality in some way with the Android version of the same App? I don't know if it's worth mentioning but my backend right now is Firebase.
We are interested to know what is the rate limit on the push notifications for live activities. We understand there is a "budget" on the amount of push notifications on a users device. But is there some rate limitation we should be aware of on APNs?
If a server is sending a push to an app, then how can it know whether it should be sending the push using the Apple sandbox push server, or the production server?
If the app is on the app store or testflight then it needs to be using the sandbox server, but if the app is being run via XCode interactively as devs are developing/testing then the push needs to be sent via the sandbox server.
But the server itself has no idea if the app was installed via Testflight/app store/XCode/ or a development .ipa. So the server can't know how to send the push.
The app has to send the push token to the server anyway, so the app could inform the server which environment it should be sent over. But then how can the app detect that itself?
A naive answer is to use #ifdef DEBUG to detect this, but that is incorrect. Which environment a push should be sent over is not correlated with that. For example an app could be being run with a debug scheme or a release scheme, but in both cases if the app is installed/running via xcode then the push environment has to be the sandbox.
So my question is, is there a way the app can detect which push environment a push should be sent over in order than it can instruct the server accordingly?
HI all
need urgent help here, so I have configured my router (enterprise company router) a hotspot and this as normal process, now, I am having difficult time for apple product to redirect this captive portal I configured, seems windows Android device directs me to the login page I need to be connected and then I register my credentials for internet use.
when using apple products, I connect to the same hotspot but nothing happens the redirection does not havppens on Https ? if I put the whole https address in my safari while connected to the hotspot that takes me to where I need to be but It wont redirect as the other products I have tried to reset browser both Iphone 15 pro max 17.3.1 and MacBook Pro 14.3.1
If I use https://abcde.companywifi.com/portal?GatewayID=145&proto=https it will not work because it has the https in it?
If I use without the https and just http://abcde.companywifi.com/portal?GatewayID=145 that works fine and auto directs as soon as I am connected to the hotspot but I dont want that I want secure connection and has to be Https connection
Hi Team,
We are facing issues about VOIP call for some users in USA who used the Wi-Fi network of some service provider. They are not receiving the calls on Wi-Fi but able to receive the call when connected to SIM/Data Connection. We implemented the VOIP services of apple and VOIP notification received and call kit UI displayed. Its working fine on public network mostly but not working on some Wi-Fi network in USA.
iPhone 12
Latest iOS version
VOIP notification not received
Call kit not display
App Name=> Owwll
Hello,
I would like get advice about the time-sensitive notification ‘interruption-level’ set to ‘time-sensitive’ in the push payload. I’m wondering if this setting applies to VOIP push notifications. I tried to find information in Apple’s documentation, but it doesn’t specify whether it is applicable for VOIP push notifications.
{
"aps": {
"interruption-level": "time-sensitive"
}
}
https://developer.apple.com/documentation/usernotifications/generating-a-remote-notification#:~:text=ContentIdentifier%[…]terruption%2Dlevel,-String
Hi, Team.
I use old widget(Today Extension) to show some info to users, but when my app had got updated , the widget missed and can't find it in today gallery. I see lot's of apps have same issue, is this a system bug?
Thanks you for your reply.
I'm trying to implement a unique Id for each pass that someone adds to their wallet. Something like a unique membership Id or even something as simple as displaying a unique username. What is the process of setting this up?
I already have everything set up to generate the pass and update the values of the pass fields, but how can I make this specific to a single pass? I feel like I have everything I need to support this but not sure of the workflow I should use.
I found this endpoint: https://developer.apple.com/documentation/walletpasses/return_a_personalized_pass but unsure what the personalizationToken is or how I'd provide this. Is this the same as the "pushToken"?
It also references this: https://developer.apple.com/documentation/walletpasses/personalizationdictionary/requiredpersonalizationinfo which seems to require previously entered user information.
Hello,
Scenario:
My app is running in the foreground, logged into my backend server and I have registered for push notifications and received a push token. I have pin code activated on the phone.
I make some code changes and re-flash it in Xcode, the app is running in debug mode wired to Xcode.
I put the app in the background and lock the screen and wait 30 sec until data protection is activated and the keychain cannot be accessed.
I send a push notification. In this case didRegisterForRemoteNotificationsWithDeviceToken if often called with the same push token as I had before.
Data is protected in this state, hence I cannot access the auth token and send the token to the server. In this case it is not needed since the token is the same, but it got me a bit worried. In didRegisterForRemoteNotificationsWithDeviceToken I send the push token to the server, as the Apple docs recommend.
My concern now is: could didRegisterForRemoteNotificationsWithDeviceToken be called in a real scenario when the phone is locked and data protection is activated?
The Apple docs say:
Device tokens can change periodically, so caching the value risks sending an invalid token to your server.
And gives an example:
For example, UIKit calls the method when the user launches an app after having restored a device from data that is not the device’s backup data.
In this case, since the user is initiating it, the phone is unlocked so data should be unprotected. But that is one example, what more scenarios could there be that triggers this function, and could data be protected in those scenarios?
I'm worried that it could be triggered, even if its rare, in a state where data protection is activated, hence I cannot send the new push token to the server, and thus future remote notifications from the server will not be received by my app until the users logs out and logs in again.
We have been seeing a large increase of errors since March 5, 2024 starting around 8pm UTC.
Example error response is
http2: server sent GOAWAY and closed the connection; LastStreamID=2147483647, ErrCode=PROTOCOL_ERROR, debug="Stream 169 does not exist"
We've been sending notifications the same way for about 8 months now, and a very similar way for over 2 years without this issue.
Currently getting about an 8% failure rate on requests. Sending about 20,000,000 notifications a day.
Has something changed that we need to modify our process for?
In a live activity view, the update occurs upon pressing the button intent but does not automatically refresh after the application transitions to the background in SwiftUI.
Hi,
I'm experiencing a bug that only occur in iPhone X/XS that run iOS 16.2. I couldn't tap the push notification when the app is already active. I need to trigger a feature when the push notification is tapped. When the app is on the background, it worked. But when the app is already active / on the foreground, it didn't. I tried this on an iPhone 8 Plus running iOS 16.2.1 and iPhone 14 and iPhone XR running iOS 17.1.2, but this bug didn't occur (ie. the tap was working and I can call didReceiveResponse callback). Why does this happen? Can anybody help me?
Thanks.
I want to create passes with Dynamic QR Codes which changes based on T-OTP. Google wallet do have this feature called RotatingBarCode, while there is nothing like this in Apple wallet. Can we do this by updating the passes? If yes, how? If apple wallet pass are getting updates using webServiceURL, how can we create the endpoint and what the body of get request will look like?
Our MDM customers often claim MDM push is not delivered to device and cannot manage devices via MDM.
The user first uninstalled the old description file and then installed the new one, but after the new description file was installed, our mdm server did not receive any notification from Apple about updating the token, only received an Authenticate message
We tried to restore network settings but it did not work. We hope to get your help to solve this problem. Currently, we can't figure out where the problem is.
I've got an app which has a notification service extension (and has had so for a few years).
I noticed that the pushes were getting delivered directly to the user for a handset, and in the log could see a SpringBoard error saying
Error Domain=PluginKit Code=4 RBSLanchRequest error trying to launch plugin
Error Domain=RBSRequestErrorDomain Code=5 Launch failed
ErrorDomain=NSPOSIXErrorDomain Code=111 Unknown error:111
I rebooted the phone and it started working as expected.
But it's worrisome this happened, and it's not the first time I've seen it either.
Observed with iOS 17.3.1
Hi. I'm looking to schedule a number of notifications based on the user's location and have them be triggered UNLocationNotificationTriggers. I want to know whether notifications get delivered so I can limit the number of notifications the user receives in a day. I was hoping I could determine their delivery by either the UNUserNotificationCenterDelegate's method userNotificationCenter(_ center: UNUserNotificationCenter, didReceive response: UNNotificationResponse) (which only knows when the user has tapped on the notification or deleted it) or by UNUserNotificationCenter.current().deliveredNotifications() (which should return the notification if it was delivered and is in the Notification Center).
UNUserNotificationCenter.current().deliveredNotifications() is not returning notifications that were delivered via UNLocationNotificationTriggers. I'm assuming this is for some privacy reason? All of the UNLocationNotificationTriggers are configured with notifyOnEntry to be true, notifyOnExit to be false, and repeats to be false. They get delivered appropriately, but I can't determine if/when they get delivered to ensure the user doesn't receive too many notifications. Notifications delivered with a UNTimeIntervalNotificationTrigger are returned as expected.
Is all of this by design or is there another way to determine when a notification scheduled with a UNLocationNotificationTrigger gets delivered? I'm just trying to create the best experience for my users. Thank you.
Hi,
Has anyone found a way to send a push notification based on beacon region entry/exit? Since iOS 17, CLBeacionRegion which inherits CLRegion that made this possible is now deprecated and replaced by CLMonitor.CLBeaconIdentityCondition.
CLMonitor.CLBeaconIdentityCondition does not only work properly on the latest version of iOS, it also lacks such features like sending push notifications based on region entry/exit.
Even UNLocationNotificationTrigger only accepts CLRegion which is not possible to create one using existing classes that are not deprecated.