when I implementation the UNUserNotificationCenterDelegate
func userNotificationCenter(_ center: UNUserNotificationCenter, didReceive response: UNNotificationResponse, withCompletionHandler completionHandler: @escaping () -> Void) {
var status = ""
if (UIApplication.shared.applicationState == .active) {
status = "active"
} else if (UIApplication.shared.applicationState == .background) {
status = "background"
} else if (UIApplication.shared.applicationState == .inactive) {
status = "inactive"
}
completionHandler()
}
I find that UIApplication.shared.applicationState == .background this case can not execute when application is in background。
why applicationState is inactive not background?
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
Activity
I’m currently developing an iOS app built in Unity, exported to Xcode for signing and deployment. The app needs to register for Apple Push Notifications (APNs) to retrieve the device token and register it with a backend service (PlayFab).
Despite enabling the required capabilities and entitlements, the app never receives a device token — the authorization request succeeds, but the token remains empty (req.DeviceToken is null in Unity).
I’ve confirmed that the issue occurs before PlayFab or Firebase are involved, meaning the app never receives the token from Apple Push Notification service (APNs) itself.
The Unity script I am using is:
#if UNITY_IOS
using UnityEngine;
using Unity.Notifications.iOS;
using PlayFab;
using PlayFab.ClientModels;
using System.Collections;
using System;
public class iOSPushInit : MonoBehaviour
{
private const int MaxRetries = 5;
private const float RetryDelay = 2f; // seconds
void Start()
{
Debug.Log("🛠 iOSPushInitDebug starting...");
StartCoroutine(RequestAuthorizationAndRegister());
}
private IEnumerator RequestAuthorizationAndRegister()
{
// Request Alert + Badge + Sound permissions and register for remote notifications
var authOptions = AuthorizationOption.Alert | AuthorizationOption.Badge | AuthorizationOption.Sound;
using (var req = new AuthorizationRequest(authOptions, true))
{
Debug.Log("⏳ Waiting for user authorization...");
while (!req.IsFinished)
{
yield return null;
}
Debug.Log($"🔔 Authorization finished at {DateTime.Now}: granted={req.Granted}, error={req.Error}");
if (!req.Granted)
{
Debug.LogError("❌ User denied notification permissions! Cannot get APNs token.");
yield break;
}
// Authorization granted → check for device token
int attempt = 0;
string token = req.DeviceToken;
Debug.Log($"req.DeviceToken: {req.DeviceToken}");
while (string.IsNullOrEmpty(token) && attempt < MaxRetries)
{
attempt++;
Debug.Log($"ℹ️ APNs token not available yet. Attempt {attempt}/{MaxRetries}. Waiting {RetryDelay} seconds...");
yield return new WaitForSeconds(RetryDelay);
token = req.DeviceToken;
}
if (string.IsNullOrEmpty(token))
{
Debug.LogWarning("⚠️ APNs token still null after multiple attempts. Try again on next app launch.");
yield break;
}
Debug.Log($"📱 APNs Token acquired at {DateTime.Now}: {token}");
// Register with PlayFab
var request = new RegisterForIOSPushNotificationRequest
{
DeviceToken = token,
SendPushNotificationConfirmation = false
};
PlayFabClientAPI.RegisterForIOSPushNotification(request,
result => Debug.Log("✅ APNs token successfully registered with PlayFab."),
error => Debug.LogError("❌ Failed to register APNs token with PlayFab: " + error.GenerateErrorReport()));
}
}
}
#endif
When running on a real device (not simulator), the following is logged in Xcode:
🔔 Authorization finished: granted=True, error=
ℹ️ APNs token not yet available. Try again on next app launch.
In the Xcode console, I do not see the expected APNs registration message:
[Device] Registered for remote notifications with token: <...>
Environment Details:
Engine: Unity 6000.2.6f2
Notifications package: com.unity.mobile.notifications 2.4.2
Xcode: 16.4 (16F6)
iOS Device: iPhone 12, iOS 26.0.1
Testing Method: Building directly from Unity → Xcode → real device
Signing mode: Automatic (with correct Team selected)
Certificates in account:
Apple Development certificate (active)
Apple Distribution certificate (active)
Provisioning Profile:
Type: App Store (also tested Development profile)
Enabled Capabilities: Push Notifications, In-App Purchase
App ID Capabilities:
Push Notifications: Enabled
Development SSL certificate: Present
Production SSL certificate: Not generated (yet)
Background Modes -> remote notifications
What I Have Verified:
✅ Push Notifications capability is enabled in the Xcode target (not UnityFramework).
✅ Team and Bundle Identifier match my Apple Developer App ID.
✅ App ID has Push Notifications enabled in the Developer Portal.
✅ Tested on a real iOS device with working internet.
✅ Rebuilt and reinstalled app after enabling Push Notifications.
✅ Authorization dialog appears and permission is granted by user.
How can I resolve this issue?
Topic:
App & System Services
SubTopic:
Notifications
Hello,
we have a problem with fake call on iPhone device for incoming calls.
When I leave the iPhone in idle state for 30, 40 seconds and dialed voip app number the iPhone rings and there is no problem.
When I leave it in idle for longer time one minute or two minutes I get "Call Failed to Connect" on iPhone's display and after this fake call I get second call with real calling number displays on iPhone.
This first fake call is triggered by wake up push notification type 'voip'.
If I switched off this wake up push notification type 'voip' and device's token has not expired yet I don't get fake call and iPhone's directly displays calling number.
But in this situation we need to use wake up push notification type 'voip' on during a certain time to keep the device's token in our database and continuing to receive calling number without fake call.
If we switched off the wake up push notification type 'voip' on certain time we need to activate again wake up push notification type 'voip' for incoming calls to wake up the iPhone.
And in this way every time on every incoming call the iPhone's will display first fake call "Call Failed to connect" and after that the call with Calling number.
How we can eliminate this fake call and use only one wake up push notification only for incoming calls not use second type wake up push on certain time?
Thank you,
I paste here our code for this:
public ApnClient(IOptions settings)
{
var httpHandler = new HttpClientHandler()
{
ClientCertificates = { new X509Certificate2(certificate.Export(X509ContentType.Pfx)) },
};
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls13;
this.httpClient = new HttpClient(httpHandler)
{
DefaultRequestVersion = HttpVersion.Version20,
DefaultVersionPolicy = HttpVersionPolicy.RequestVersionOrHigher,
BaseAddress = new Uri(settings.Value.ApnProdBaseUri),
DefaultRequestHeaders =
{
{
"apns-topic", ApnsTopic
},
},
};
}
public async Task<bool> WakeUpDevice(string deviceToken, string callId)
{
this.requestContent = new StringContent(
$"{{\"aps\":{{\"content-available\":\"1\"}}}}",
System.Text.Encoding.UTF8,
"application/json");
var res = await this.httpClient.PostAsync($"/3/device/{deviceToken}", this.requestContent);
return res.IsSuccessStatusCode;
}
Dear Apple!
During WWDC24 you announced that ONE_TIME_CHARGE notification is available on the sandbox environment and will be available "it will be available in production later this year" - it's March 2025 and there is still no production release of this feature.
Could you share some timeline and plans for when we can expect that feature deployed to production?
Thanks in advance!
The iOS documentation shows notification actions buttons with the text center aligned: https://developer.apple.com/documentation/usernotifications/declaring-your-actionable-notification-types
But there's no apparent way for an app to control this. The buttons are controlled and rendered by the system and the text is always left aligned.
Is there some way to get the text center aligned?
Hello!
When setting an alarm in an AlarmKit app, the alarm will not fire properly/reliably (the alert presentation is not shown) while the device has an app foregrounded in the landscape orientation. This behaviour has been present since the betas, however until the first party Reminders app showed the behaviour in the iOS 26.2 beta I suspected the issue was in my own code.
The behaviour is exhibited when scheduling alarms in several AlarmKit apps:
The Reminders app
The AlarmKit WWDC Demo Project
My own AlarmKit app
However alarms scheduled by the stock Clock app do not seem to exhibit the behaviour.
Minimal repro with first party app:
Be using iOS 26.2 beta
Open Reminders app
Create an urgent reminder for a time in the not too distant future
Open Mail.app
Change to landscape orientation
Wait for the fire time
Observe the phone vibrates at the correct time but no alarm is fired
Drag the notifications pane down, observe the LiveActivity has been started
Change to portrait orientation
Observe alarm fires
I have noticed this behaviour from the AlarmKit apps mentioned while foregrounding other apps besides Mail, both first and third party:
Photos
YouTube
Netflix
The behaviour does not seem to occur when the foregrounded app is restricted to portrait mode, no matter the actual orientation of the device.
In the case of my own app I have tried a multitude of ideas to get it to work reliably, getting alarms to fire in landscape is very intermittent at best and most often works after a fresh reboot.
I've submitted a Feedback for the Reminders app: FB20956492.
Any advice or suggestions would be appreciated!
Topic:
App & System Services
SubTopic:
Notifications
This is in an iOS Simulator running iOS 18.2
I send a start live activity push notification from the Push Notifications Console on icloud.developer.apple.com. When checking the console.log output it seems to receive the message, yet the activity does not appear in the dynamic island. (the app is backgrounded when I test this)
Can anyone tell me why it's not showing? Starting the same activity from within the app using Swift code works fine.
Here is the console.app output:
default 11:01:59.060954+0100 apsd <APSConnectionServer: 0x104207b80; development/com.apple.aps.sessioncore.PushNotifications.dev/liveactivitiesd 0>: Sending push to client. UUID: (null)
default 11:01:59.061012+0100 apsd Dispatching high priority message on server: <APSConnectionServer: 0x104207b80; development/com.apple.aps.sessioncore.PushNotifications.dev/liveactivitiesd 0>
default 11:01:59.061770+0100 apsd Looking up connection on peer: 4304b50 found <APSConnectionServer: 0x104207b80; development/com.apple.aps.sessioncore.PushNotifications.dev/liveactivitiesd 0>
default 11:01:59.062283+0100 liveactivitiesd APSXPCDeliverMessageEvent: Created APSIncomingMessage. UUID: (null)
default 11:01:59.062642+0100 liveactivitiesd <APSConnection: 0x600003d18000> Delivering message from apsd: <APSIncomingMessage: 0x600000c2e9a0> 2897852514 com.****.****.push-type.liveactivity
default 11:01:59.062763+0100 liveactivitiesd <APSConnection: 0x600003d18000> Delivering message from apsd. UUID: (null)
default 11:01:59.063374+0100 liveactivitiesd <APSConnection: 0x600003d18000> making delegate (<SessionPushNotifications.APSPushConnection: 0x600000227460>) calls to deliver message 2897852514 {
aps = {
alert = {
"loc-key" = "recording_started_message";
"title-loc-key" = "recording_started_title";
};
attributes = {
isRecording = 1;
};
"attributes-type" = SWAutomaticTripRecorderActivityAttributes;
"content-state" = {
distance = 0;
};
event = start;
timestamp = 1742374701;
};
} for topic com.****.****test.push-type.liveactivity
default 11:01:59.063440+0100 liveactivitiesd <APSConnection: 0x600003d18000> calling <SessionPushNotifications.APSPushConnection: 0x600000227460> connection:didReceiveIncomingMessage:
default 11:01:59.063740+0100 liveactivitiesd Acquiring keep-alive with reason: Received message
default 11:01:59.063785+0100 liveactivitiesd Keep-alive reasons: ["Received message": 1]
default 11:01:59.063803+0100 liveactivitiesd <APSConnection: 0x600003d18000> returned from <SessionPushNotifications.APSPushConnection: 0x600000227460> connection:didReceiveIncomingMessage:
default 11:01:59.063883+0100 liveactivitiesd <APSConnection: 0x600003d18000> responding with an ack for message with guid E19D7D04-12A0-4F1B-B33C-F6BF57EE2EFF
default 11:01:59.063921+0100 liveactivitiesd <APSConnection: 0x600003d18000> responding with an ack. UUID: (null)
default 11:01:59.063996+0100 apsd Looking up connection on peer: 4304b50 found <APSConnectionServer: 0x104207b80; development/com.apple.aps.sessioncore.PushNotifications.dev/liveactivitiesd 0>
default 11:01:59.064019+0100 apsd <APSUserCourier 0x100f052a0 development 0> informed that <APSConnectionServer: 0x104207b80; development/com.apple.aps.sessioncore.PushNotifications.dev/liveactivitiesd 0> acknowledges incoming message with guid E19D7D04-12A0-4F1B-B33C-F6BF57EE2EFF tracingUUID (null)
default 11:01:59.064063+0100 liveactivitiesd Received message: topic: Topic(unsuffixed: "com.****.****test"); channelID: nil; token: Optional(128 bytes); eventType: start(SessionPushNotifications.IncomingMessage.EventType.StartParameters(attributesType: "SWAutomaticTripRecorderActivityAttributes", attributesData: 20 bytes, inputs: [])) for environment: development
default 11:01:59.064198+0100 liveactivitiesd Received push event for com.****.****test::pushToStart
default 11:01:59.064232+0100 liveactivitiesd Adding push-to-start budget for com.****.****test::pushToStart
default 11:01:59.064273+0100 liveactivitiesd Acquiring keep-alive with reason: Database
default 11:01:59.064296+0100 liveactivitiesd Keep-alive reasons: ["Database": 1, "Received message": 1]
default 11:01:59.064313+0100 liveactivitiesd Acquiring keep-alive with reason: Database
default 11:01:59.064330+0100 liveactivitiesd Keep-alive reasons: ["Database": 2, "Received message": 1]
default 11:01:59.064342+0100 liveactivitiesd Reduced budget for com.****.****test::pushToStart to: 9
default 11:01:59.064358+0100 liveactivitiesd Topic com.****.****test.push-type.liveactivity has remaining budget for pushToStart of 9
default 11:01:59.064369+0100 liveactivitiesd Topic com.****.****test.push-type.liveactivity has not used any budget for activity
default 11:01:59.064436+0100 liveactivitiesd Scheduling wake to re-evaluate push subscription budgets at 2025-03-19 11:01:59 +0000
default 11:01:59.064547+0100 liveactivitiesd Earliest nonwaking date from task "Push server budget timeout expiration": 2025-03-19T12:01:59+01:00, finalWakeTarget: 2025-03-19T12:01:59+01:00 3599.999696
default 11:01:59.064593+0100 liveactivitiesd Earliest waking date from task "Push server budget timeout expiration": 2025-03-19T12:01:59+01:00, finalWakeTarget: 2025-03-19T12:01:59+01:00 3599.999651
default 11:01:59.064620+0100 liveactivitiesd Scheduling nonwaking task for: 2025-03-19T12:01:59+01:00 in 3599.999622s
default 11:01:59.064659+0100 liveactivitiesd Scheduling waking task for: 2025-03-19T12:01:59+01:00 in 3599.999584s
default 11:01:59.064671+0100 liveactivitiesd Acquiring keep-alive with reason: wake scheduling
default 11:01:59.064692+0100 liveactivitiesd Keep-alive reasons: ["Database": 2, "Received message": 1, "wake scheduling": 1]
default 11:01:59.064734+0100 liveactivitiesd Scheduling waking task for adjusted date: 2025-03-19T12:01:59+01:00 in 3599.999508s
default 11:01:59.064768+0100 liveactivitiesd xpc_activity_register: com.apple.sessionkit.wake, criteria: dictionary
default 11:01:59.064843+0100 liveactivitiesd Received pushToStart notification for com.****.****test::pushToStart
default 11:01:59.064955+0100 liveactivitiesd Keep-alive reasons: ["Database": 2, "Received message": 1]
default 11:01:59.064979+0100 liveactivitiesd Publishing event: timestamp: 2025-03-19 08:58:21 +0000; activityIdentifier: F432AB2F-1799-4437-B54B-6D9D70A0B260; eventType: start(SessionPushNotifications.PushEvent.EventType.ActivityStartParameters(attributesType: "SWAutomaticTripRecorderActivityAttributes", attributesData: 20 bytes, contentSourceRequests: [ActivityKit.ActivityContentSource.Request.push(request: ActivityKit.PushActivityContentSource.Request.push, target: ProcessDescriptor.Request("com.****.****test")), ActivityKit.ActivityContentSource.Request.process(target: ProcessDescriptor.Request("com.****.****test"))]))
We are so interested in AlarmKit which is presented at WWDC25. While we planning our app using AlarmKit, We had a few questions come to mind and were hoping you could provide some clarity. Please excuse the rather long list of questions, as we don't currently have a device available to test these features ourselves.
System Actions Related
Is there a limit to the number of alarms that can be scheduled using AlarmKit?
Are alarms scheduled with AlarmKit persistent across device reboots?
When an alarm is dismissed (either by swiping or pressing the power button), can our app detect this action and execute code in response?
Can we control the behavior of the physical Lock Screen buttons when an AlarmKit alarm is active, for instance, to trigger a snooze action?
Does AlarmKit function correctly during Do Not Disturb or Low Power Mode?
What is the expected behavior when an alarm from our app (using AlarmKit) overlaps with an alarm from another app that also uses AlarmKit? Which one is going to get its priority?
Thank you for your help.
Sincerely
Topic:
App & System Services
SubTopic:
Notifications
Hello everyone in the iOS Devolution community!
I'd like to share a suggestion that I believe would bring an unprecedented level of intelligence and comfort to the daily iPhone experience: Smart Adaptive Volume & Brightness.
The Problem We Aim to Solve
How many times has your iPhone rung too loudly in a quiet environment, embarrassing you in a meeting or waking someone up? Or, the opposite, you missed an important call on a busy street because the volume was too low? And what about screen brightness? It's a constant adjustment: too bright in the dark, hard to see in the sun.
Currently, we have to manually adjust volume and brightness, or rely on Auto-Brightness (which only works for the screen) and Focus modes, which can be a bit "all or nothing." This leads to interruptions, frustration, and that feeling that your phone isn't really adapting to you.
The Solution: Smart Adaptive Volume & Brightness
My proposal is for iOS to use the iPhone's own sensors to dynamically adapt notification and ringtone volume, and screen brightness, to the environment we're in.
How it would work in practice:
Environmental Scan Before Ringing/Displaying:
When a notification (call, message, app alert) is about to be delivered, and even before it makes a sound, the iPhone would briefly activate its sensors.
The microphone would read the ambient noise level (in decibels), but without recording audio or analyzing any content. Just the "noise" of the surroundings.
The ambient light sensor would assess the light intensity around the device.
Intelligent and Coordinated Adjustment:
Based on these combined readings of noise and brightness, iOS would make the adjustments:
In noisy and bright environments (e.g., on the street during the day): The ringtone volume would be automatically increased to ensure you hear it, and the screen brightness would also be raised to facilitate viewing in strong light.
In quiet and dark environments (e.g., cinema, bedroom at night): The volume would be discreetly reduced to avoid disturbances, and the screen brightness would be dimmed for your visual comfort and to avoid bothering others.
Adjustments would be gradual, adapting to any type of environment (office, cafe, etc.).
User Control:
Of course, we'd have the option to enable or disable "Smart Adaptive Volume & Brightness" in the settings.
We could also define minimum and maximum limits for these automatic adjustments, ensuring the iPhone adapts to our personal comfort levels.
This feature would complement existing Focus modes, operating within the permissions of any active Focus.
The Benefits for the User
Goodbye to Inconvenient Interruptions: No more startling loud rings in quiet places.
Never Miss a Call Again: In noisy environments, your iPhone will adapt to be heard.
Constant Visual Comfort: The screen will always be at the ideal brightness, without blinding you in the dark or disappearing in the sun.
Smoother Experience: Fewer manual adjustments, more time to focus on what matters.
Guaranteed Privacy: The use of microphones and sensors would be strictly for environmental measurement, without recording or analyzing personal data.
I believe this feature would bring a new level of intelligence and usability to iOS, making the iPhone even more intuitive and adapted to our daily lives.
What do you all think of this idea?
Topic:
App & System Services
SubTopic:
Notifications
An Application Group with Identifier 'group.com.aaa.aaa.onesignal' is not available. Please enter a different string.
How can I Fix this error? I need to add it in this format.
Topic:
App & System Services
SubTopic:
Notifications
I've added a Notification Service Extension as a target to my React Native iOS app following Apple's official documentation. After completing all the setup steps as outlined in the documentation, the notification titles remain unchanged - notifications are arriving without any modifications, suggesting the extension isn't functioning properly.Testing Details:
Sending notifications via Apple Push Notification Console
Tested on iPhone 16 Pro Max (physical device)
Tested on iPhone 15 Pro simulator
Both show the same issue - no title modifications
The extension appears to not be executing at all.
Has anyone encountered similar issues with Notification Service Extensions in React Native projects, or can suggest troubleshooting steps to verify the extension is properly configured and running?
Dear Team,
Hope You are dong good!
Problem Description:-
We are facing a huge delay in receiving IOS Push notifications on concerned devices.
Found System.Timeout.Exception Error in IOS Logs(Screenshot & Recent Logs attached)
Found a network delay between service installed servers & APNS(Apple Push Notification Service)
Destination URL & Ports using in Push Notification
service:-
api.push.apple.com
api.development.push.apple.com
Destination Port-443
Also Found the error(TCP reset From server) between source(service installed server) & Destination (Apple Push Notification Service)-Screenshot attached
Please have a look around the above points &
requesting advice regarding the below:-
How to resolve this delay in reaching IOS push Notifications in concerned devices?
Should we call more URL’s from services? If yes please provide URL’s/Ports to be opened from services ?
Awaiting your Replies,
Thanks,
I have been watching the following moment from wwdc (Design dynamic Live Activities):
https://developer.apple.com/videos/play/wwdc2023/10194/?time=728
It suggest that you should 'tick' between multiple live activities of your app:
When you want to show multiple sessions for your app going on at once, consider ticking between the display of them to continue to give users an eye on everything that’s going on.
How can I tick between them? More specifically how can I do that when my app is in the background?
I'm experiencing issues with didRegisterForRemoteNotificationsWithDeviceToken not being called on iOS 18.1.1. Here's what I've tried:
Basic Setup:
Properly configured UNUserNotificationCenter
Requested permissions with requestAuthorization(options:)
Registered for remote notifications with registerForRemoteNotifications()
Environment:
Xcode 16.3
iOS 18.1.1 (physical device)
Firebase (tried with and without it)
Troubleshooting:
Verified provisioning profile includes Push Notifications
Confirmed APNs certificate is valid
Disabled Firebase's method swizzling
Tested on a clean project (works fine)
Checked device logs (no relevant errors)
Code Snippet:
// In AppDelegate.swift
public func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {
let tokenParts = deviceToken.map { data in String(format: "%02.2hhx", data) }
let tokenString = tokenParts.joined()
print("📱 Device Token: \(tokenString)")
// Store the token for your backend
UserDefaults.standard.set(tokenString, forKey: "deviceToken")
// Send to backend
Task {
do {
try await APIService.shared.setDeviceToken(tokenString)
} catch {
print("❌ [AppDelegate] Failed to send device token to backend: \(error)")
}
}
}
public func application(_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? = nil) -> Bool {
// IMPORTANT: First handle push notification registration
UNUserNotificationCenter.current().delegate = self
// Request notification permissions
self.requestNotificationPermissions()
// Register for remote notifications
DispatchQueue.main.async {
UIApplication.shared.registerForRemoteNotifications()
}
return true
}
private func requestNotificationPermissions() {
UNUserNotificationCenter.current().requestAuthorization(options: [.alert, .badge, .sound]) { granted, error in
guard granted else {
print("❌ Notification permission not granted")
return
}
print("✅ Notification permission granted")
}
}
I am trying to retrieve delivered notifications using UNUserNotificationCenter.getDeliveredNotifications(completionHandler:), but I have encountered an issue:
Notifications triggered by UNTimeIntervalNotificationTrigger or UNCalendarNotificationTrigger appear in the delivered list.
However, notifications triggered by UNLocationNotificationTrigger do not appear in the list.
Here is the code I use to fetch delivered notifications:
UNUserNotificationCenter.current().getDeliveredNotifications { notifications in
for notification in notifications {
print("Received notification: \(notification.request.identifier)")
}
}
The notification is scheduled as follows:
let center = UNUserNotificationCenter.current()
let content = UNMutableNotificationContent()
content.title = "Test Notification"
content.body = "This is a location-based notification."
content.sound = .default
let coordinate = CLLocationCoordinate2D(latitude: 37.7749, longitude: -122.4194) // Example coordinates
let region = CLCircularRegion(center: coordinate, radius: 100, identifier: "TestRegion")
region.notifyOnEntry = true
region.notifyOnExit = false
let trigger = UNLocationNotificationTrigger(region: region, repeats: false)
let request = UNNotificationRequest(identifier: "LocationTest", content: content, trigger: trigger)
center.add(request) { error in
if let error = error {
print("Error adding notification: \(error.localizedDescription)")
}
}
Why does getDeliveredNotifications not return notifications that were triggered using UNLocationNotificationTrigger?
How can I retrieve such notifications after they have been delivered?
If there is a Notification Service Extension which has the com.apple.developer.usernotifications.filtering entitlement, then does/how having that entitlement affect the preconditions for the NSE to be delivered a push?
Specifically, if the app has not prompted for requestAuthorization() is it expected that the push will be delivered to the NSE or not?
Thank you
I have a “1” above the setting app on my iPhone. However when I open settings there is no notification that shows up. I have tried force restarting and done the beta updates as they release however nothing works to got rid of it. What can I do?
Topic:
App & System Services
SubTopic:
Notifications
Dear Apple Team,
I hope this message finds you well. I wanted to share a playful and innovative idea that could enhance the iPhone experience—particularly when viewing content in full-screen mode through apps like Apple TV or YouTube.
Feature Concept: Hands-Free Dismissal of Notifications
When the iPhone is in landscape mode, incoming notifications can interrupt the viewing experience. While Focus Mode and swipe gestures help, I thought of a more intuitive and hands-free interaction: using a light puff of air directed toward the screen to dismiss a notification.
This interaction could use the microphone or other onboard sensors to detect a brief burst of air, providing a fun and natural way to maintain immersion without touching the device.
If this isn’t feasible with current hardware, here are a few alternative concepts that align with the same goal:
Blink to Dismiss: Using Face ID sensors to detect a quick blink as a hands-free gesture.
Shake to Dismiss: A gentle shake gesture when holding the iPhone in one hand.
Gaze-Based Dismissal: Notifications automatically disappear after a brief moment of eye contact.
These ideas could offer both accessibility benefits and a touch of delight—making the iPhone feel even more magical and responsive.
Thank you for your time and for considering this suggestion!
Warm regards,
Badhan Baidya
Hi there, we noticed high volume of 410 responses from APNs.
It started on July 19th and we see it across multiple apps. Is there some sort of mass token invalidation/removal that's happening on APNs?
Hello,
We are currently facing a persistent issue where Apple Push Notifications (APNs) are no longer being delivered to devices. This is not an intermittent problem — push notifications have completely stopped working. We are using PushSharp.Apple (Version 4.0.10.0) to send the notifications.
Current Behavior (Failing):
Every notification request appears to be processed successfully from the server side.
However, the APNs client receives a 0-byte response, and the server closes the connection.
Devices do not receive the notifications at all.
Logs from Current (Failing) State:
APNS-Client[1]: Connected (Batch ID=1)
APNS-Client[1]: Sent Batch, waiting for possible response...
APNS-Client[1]: Received 0 bytes response...
APNS-Client[1]: Server Closed Connection...
APNS-Client[1]: Disconnected (Batch ID=1)
For Reference – Successful Log From Earlier (When Notifications Worked):
APNS-Client[1]: Connected (Batch ID=1)
APNS-Client[1]: Sent Batch, waiting for possible response...
APNS-Client[1]: Received -1 bytes response...
Push Notification Successfully Sent to Device
Any help, suggestions, or experience with similar issues would be greatly appreciated.
Thanks!!!