Post

Replies

Boosts

Views

Activity

Notification not delivered to offline device getting back online
Hi there, I observed situations where a notification won't get delivered to an iPhone that is offline at the moment the notification request is made to the APNs, and gets back online a few hours later. It does not appear to be a fully repeatable issue, but it does happen much more than sporadically. I know the storage of notification by APNs is provided as a best-effort service and is not guaranteed, but I do believe there is an issue that maybe is worth looking at. I controlled for all aspects that could explain the issue: APNs return a success code on the request the apns-expiration timestamp is not reached when the device gets back online apns-priority is set to 10 target device was in charge while offline no other notification were sent for the device I provided detailed logs in feedback FB15381079 Also sharing a remark on this piece of the APNs documentation: "When you send multiple notifications to the same device for a bundle ID, APNs selects only one notification to store in a non-deterministic way." It would be very useful to confirm whether silent push notification may lead APNs storage to dismissed an alert notification in favor of the silent push. Thank you
1
0
161
Oct ’24
AppIntents - Issue with perform() method return types
Hi there, I'm migrating my old Intents to the new App Intents framework. I have an intent that always returns a dialog, but never returns a value. Therefore I define the return types for its perform method as follows: func perform() async throws -> any IntentResult & ProvidesDialog When running the intent, the app crashes and the debugger indicates AppIntents/PerformActionExecutorTask.swift:195: Fatal error: perform() returned types not declared in method signature - Did not declare ProvidesDialog but provided one perform() returned types not declared in method signature - Did not declare ProvidesDialog but provided one The actual expression for returning a result is written as follows: return .result(dialog:"hello world") I tried a few alternative return types definition with no luck. I'm on XCode 15.0 (15A240d) and running on iOS 17.0 (21A329) Running out of ideas...
1
2
1.4k
Sep ’23
Issue with Timer in a BGAppRefreshTask
I have a BGAppRefreshTask that is executing an operation. The operation calls a custom class that performs some tasks and also initiates a 10 seconds timer that is a timeout fallback in this custom class. When I make use of the custom class in other context than the background task, the timer is properly executing and the timeout logic is effective. But in the context of the BGAppRefreshTask, that I'm testing through the XCode "_simulateLaunchForTaskWithIdentifier" command, the Timer is without effect - although returning no error when set. I'm starting the timer with the following line of code: RunLoop.current.add(self.timeout_timer!, forMode: RunLoop.Mode.common) The operation is not being interrupted or cancelled, so I believe both the custom class instance (that contains a function the timer will run when expiring) and the reference to the timer are properly retained. I wonder if there is a specific limitation, or thread issue in the context of a BGAppRefreshTask.
2
0
835
Dec ’22
iOS 15: navigationBarHidden(true) no longer working after display of another view
In iOS 15 beta (still occurring with beta 4), navigationBarHidden(true) is no longer working if a navigation view with the .navigationViewStyle(.stack) modifier is displayed after a view that is not a NavigationView. class SelectorHelper : ObservableObject {     @Published var show_intro : Bool = false } struct myApp: View {     @ObservedObject var selector_helper : SelectorHelper     var body: some View {         if selector_helper.show_intro == true {             intro(selector_helper: selector_helper)         }         else {             app_content(selector_helper: selector_helper)         }     } } struct intro: View {     @ObservedObject var selector_helper : SelectorHelper     var body: some View {         VStack {             Spacer()         Text("Intro")             Button(action: {                 selector_helper.show_intro.toggle()             }){                 Text("Show content")             }             Spacer()         }         .background(.yellow)     } } struct app_content: View {     @ObservedObject var selector_helper : SelectorHelper     var body: some View {         NavigationView {         VStack{             Spacer()         Text("App Content")             Button(action: {                 selector_helper.show_intro.toggle()             }){                 Text("Show intro")             }             Spacer()         }         .background(.green)         .navigationBarHidden(true)         }         .navigationViewStyle(.stack)     } }
0
0
551
Jul ’21
Seeing SSL Errors with the Sandbox APNS today - anyone seeing this too?
Hi everyone, My dev environment is getting a lot of SSL Error when connecting to the sandbox APNS today. But as Apple Developer Status is not reporting any incident, I would sleep better knowing others see that too. APNS sandbox is generally pretty stable, so I want to make sure this is not something on my side that may propagate to a production app... Thanks
1
0
765
Dec ’20
Critical Alerts not enabled despite updated provisioning profile and entitlements
I have followed all the documented recommendations for enabling critical alerts in my app, but cannot get it working. I have verified the following: my team was granted the entitlement I issued a new provisioning profile embedding the entitlement I imported the profile in XCode and use it for signing the app. XCode is confirming the profile is appropriate and that it has the entitlement. I added the entitlement in my entitlements plist and double checked that it is the file XCode is using to build the app. In my authorisation request to the UNUserNotificationCenter I now request the additional type .criticalAlert On App Store connect I can see the uploaded build is containing the entitlement. Fearing an iOS issue I checked with a well-known app available on the App Store that has critical alerts enabled whether it was working on my test device and it worked as expected. But it does not work with my app, meaning: when I perform the authorization request for the first time, I only get the standard authorization pop-up and it is not followed by the special pop-up for critical alerts. I do not see the critical alert options in the notification settings of the app. If my server send a push notification with the appropriate payload for a critical alert, it gets distributed as standard push notification. I also opened a code-level support requets but as it seems to take some time would appreciate if anyone has insights on this. thank you
1
0
1.5k
Oct ’20
Apple Watch Simulator Won't Allow a Password to be Set
In XCode 12.0.1, I'm running Series 5 and Series 6 watch simulator with Watch0S 7.0 and a simulated paired iOS 14 iPhone. I need to set the watch security password so that I can use Sign in with Apple on the simulated watch, but the simulator won't effectively let me set the password. There is no error message: it looks like the password is being set but it is not. As I'm also having the already known issue of XCode not able to get the symbol for Watch OS 7.0.1, I'm also unable to work with my physical Apple Watch. My Apple Watch development are on full stop with all these issues...
2
1
2.1k
Sep ’20