Post

Replies

Boosts

Views

Activity

Reply to Regarding network interface name with dual SIM iPhone
Thank you for your previous response to my question which directed me to the Extra-ordinary Networking documentation. We have thoroughly reviewed this documentation and related articles, but have yet to find a direct solution to the specific problem we are facing. Our VoIP application is currently being operated in a customer environment utilizing an sXGP-SIM (local LTE-SIM). A specific requirement from our customer is to "always use the data communication network, rather than the voice call-specific VoLTE network, for establishing SIP and RTP traffic." What we know from our investigations so far: In the customer's sXGP environment, we have confirmed that the VoIP application (client) can successfully connect to the SIP server (server) and conduct VoIP calls (RTP), regardless of whether the connection routes through what might be conceived as a VoLTE network or a general data communication network. Following general best practices, we considered an approach where we do not explicitly call bind() when creating sockets, but instead rely on the OS for route selection (i.e., using connect() and then getsockname() to retrieve the local IP address). However, with this method, we believe it is not possible to control whether the OS-selected route becomes a VoLTE network or a data communication network, nor is it possible for the application to programmatically identify the type of network used. Given that both presumed network paths are viable for reaching the target server in the customer's environment, we cannot rule out the possibility of the OS selecting a VoLTE network path. We are seeking clarification on the following two points: 1. Identification of VoLTE vs. Data Communication Network Is there an existing iOS API (including Network Extension Framework, Network.framework, or other lower-level APIs) that allows an application to programmatically determine whether the current network path is a logical path assigned for VoLTE, or a logical path assigned for general data communication? 2. Forcing Traffic Routing to a Specific Network Path Similarly, is there an API or mechanism that allows a VoIP application to explicitly force its SIP and RTP traffic to route through a path identified as a "data communication network" and not a VoLTE network? Our team understands that implementing these features via public iOS APIs might be challenging. However, to provide a definitive answer to our customer, an official statement from Apple, especially confirming if "it's currently not feasible with iOS APIs," would be highly valuable as evidence for guiding our future development and customer communication. If such APIs or recommended design patterns do not exist, a clear confirmation of this would be greatly appreciated. Conversely, if it is indeed possible, could you please provide hints on the specific APIs or approaches? Thank you for your time and consideration.
Topic: App & System Services SubTopic: General Tags:
Oct ’25
Reply to Regarding Dual SIM Usage
By "managed environments," I assumed you meant MDM, is that correct? If so, it depends on the client. (We have multiple clients and it varies by client) So, if there is any solution that is based on the premise of "using it in an MDM environment," I would like to know detail of about it.
Jul ’25
Reply to About GCD (Grand Central Dispatch) in an extension.
Thank you for your advice. I understood the usefulness of NEAppPushProvider.handleTimerEvent(). but I found the following description in "Establish and Monitor the Network Connection" Your push provider must implement the handleTimerEvent callback method, which the framework calls every 60 seconds. Implement this method to check the status of the connection on the client end. Is the execution interval of NEAppPushProvider.handleTimerEvent fixed at 60 seconds? If it can be set to an arbitrary interval, would you tell me sample source or how to configure it.
Jun ’25
Reply to 0xBAADCA11 Occurs when VoIP Call Incoming (APNs Push Notification)
Thank you for the advice. Following your advice, I executed PKPushRegistry on the first line of didFinishLaunchingWithOptions, and that resolved the issue. This was an experimental implementation, but we will proceed with the commercial implementation with the policy of performing PKPushRegistry as early as possible. By the way, why was it necessary to perform PKPushRegistry as early as possible? If it's not too much trouble, could you please tell me?
Topic: App & System Services SubTopic: General Tags:
May ’25
Reply to 0xBAADCA11 Occurs when VoIP Call Incoming (APNs Push Notification)
The method "[AppDelegateImpl voipRegistration]" is where your app creates and configures PKPushRegistry. Yes, that's correct. "[AppDelegateImpl voipRegistration]" is a log indicating that sequence number 3(PKPushRegistry) in BAADCA11.jpg was executed. The fact that it was not logged indicates that it was never called. Yes, that's correct. myApp executes the PKPushRegistry only once, at sequence number 3 in BAADCA11.jpg. I assume this is what you mean by "PKPushRegistry call for PID 405." After sequence number 3, myApp does not make any PKPushRegistry calls (it doesn't make multiple PKPushRegistry calls). The combination of 1 & 2 would mean that the termination of 512/513/514 was valid. No, I don't think so. I believe this is where our understanding differs. I believe that PKPushRegistry is an API that should be called only once when myApp starts, and not an API that should be called on a call-by-call basis of VoIP . Perhaps you think that PKPushRegistry is an API that should be called on a call-by-call basis? From here on, this is my speculation. Internally in iOS, PIDs 512, 513, and 514 may need to hold the callback destination for PKPush. However, this holding is the result of registration through the interface between internal iOS components. In the interface between iOS and the application, registering only once at myApp launch should definitely be sufficient. Could you please confirm this point and provide the results?
Topic: App & System Services SubTopic: General Tags:
May ’25
Reply to 0xBAADCA11 Occurs when VoIP Call Incoming (APNs Push Notification)
Regarding the key differences between the logs of PID 405 and the logs mentioned above, it appears that they demonstrate the results of repeated each incoming call tests performed after the app was launched. For more details, I have uploaded VID_20250407_111252.mp4 to FB17345744. Please refer to it. As you can see in VID_20250407_111252.mp4, I made five outgoing call attempts (incoming calls on the test device) when I obtained "FjSoftPhone-2025-04-07-1113XX.ips." Based on the iPhone's time display, these operations occurred around 11:12-11:13 (around 0:00:00-0:00:52 in the video timestamp). I believe that 0xBAADCA11 occurred during the first, second, and third incoming calls, and the fourth and fifth incoming calls were ignored. Finally, when Wi-Fi was turned OFF (around 0:01:14 in the video timestamp), the app detected the incoming ghost call with a delay (around 0:01:19 in the video timestamp). Here's a summary of the operations and their timestamps: [Operation Time][Video Timestamp][Operation] [04/07 11:12] [0:00:02] [Caller: Make call (1) ] [04/07 11:13] [0:00:16] [Caller: Make call (2) ] [04/07 11:13] [0:00:28] [Caller: Make call (3) ] [04/07 11:13] [0:00:40] [Caller: Make call (4) ] [04/07 11:13] [0:00:52] [Caller: Make call (5) ] [04/07 11:14] [0:01:14] [Callee: Wi-Fi OFF ] [04/07 11:14] [0:01:19] [Callee: Accept ghost call] I Wrote the app's operation sequence in "BAADCA11.jpg"( attachment file of this incident). Could you please review this sequence and let me know if there are any deficiencies in the app's processing? linkText
Topic: App & System Services SubTopic: General Tags:
May ’25
Reply to 0xBAADCA11 Occurs when VoIP Call Incoming (APNs Push Notification)
The direct cause of the crash is that your app never registed a PushKit handler with callservicesd. You can confirm this by searching for the string "Registering client process" logged by callservicesd. Here is what's logged by an early run of your app (pid=405): The application log shows that the following operations were performed at the following times. What else should the app do to register a PushKit handler with callservicesd? time:04/07 11:10:50.666 operations: dispatch_queue_t mainQueue = dispatch_get_main_queue(); // Create a push registry object voipRegistry = [[PKPushRegistry alloc] initWithQueue: mainQueue]; // Set the registry's delegate to self voipRegistry.delegate = self; // Set the push type to VoIP voipRegistry.desiredPushTypes = [NSSet setWithObject:PKPushTypeVoIP]; Reference sample source: https://developer.apple.com/documentation/pushkit/pkpushregistry?language=objc ...my recommendation is that voip apps should create their basic call handling "infrastructure" as early as possible (typically, applicationDidFinishLaunching) AND that the "core" component should be able to FULLY process a call without ANY of the rest of your app functioning at all. I understood this advice to mean that when you receive a push signal, you should end the push signal reception process in your app as quickly as possible. In this specific incident, the app is not receiving a push signal, so it cannot end the push signal reception process in the app as quickly as possible. Did this advice mean something different?
Topic: App & System Services SubTopic: General Tags:
May ’25
Reply to 0xBAADCA11 Occurs when VoIP Call Incoming (APNs Push Notification)
Thank you for your response. Have you looked at exactly what happens when your app launches in that configuration? I don't see how this would change the systems routing for pushes, but I could see it distorting your apps own network logic. Are you asking about the behavior of the app when WiFi is ON (when it crashes)? I have checked exactly how the app works when WiFi is ON (when it crashes). Application life sycle didn't start when it. iOS didn't call application after push. I haven't checked exactly how the app works when Wi-Fi is OFF, because there are no problems. Also, how is the app being distributed to the device? I do not that there are extra verification steps for enterprise apps and, in theory, it's possible that issues with that verification process could delay the app launch long enough that callservicesd then terminates the app. This application is distributing via App Store(And I tested TestFlight version). You can either file a bug and post the number back here, or you can file a code level support request and send them through email. I reported(and attached logs) about this to Feedback assistant. Number is FB17345744. Would you take a logs from above report?
Topic: App & System Services SubTopic: General Tags:
Apr ’25
Reply to 0xBAADCA11 Occurs when VoIP Call Incoming (APNs Push Notification)
An app setup like this will work fine under basic testing because the developer/user habitually logs in as soon as they open the app. However, it will be terminated under real world conditions when the system or the user kills the app. The system correctly launches the app into the background, then terminates it because the app is blocked at #1 and has not created a PKPushRegistry object. The crash at step 8 of [Operation] in the initial explanation only occurs when implementing sXGP-SIM. There is no problem when using LTE-SIM(with the same operation perfectly.) If Wi-Fi is enabled when the LTE-SIM is implemented, the crash that in step 8 of the [Operation] in the first explanation will not occur 100%. If Wi-Fi is enabled when the sXGP-SIM is implemented, the crash that in step 8 of the [Operation] in the first explanation will occur 100%. In other words, the problem is not occurring because there is a difference in the app's executing route when a push message is received after the developer/user opens the app and when a push message is received after the app is terminated. What does that crash log show? I'm happy to take a look if you post the log, but my guess is that it will show one of three things: my crash log was below. code:0xBAADCA11 explanation: Is there a way to send the logs other than uploading them directly here? If not, I would like to refrain from uploading logs that include the app name to a public site, Is it okay if I hide(Change the app name to ***, etc.) the app name in the logs? my recommendation is that voip apps should create their basic call handling "infrastructure" as early as possible (typically, applicationDidFinishLaunching) AND that the "core" component should be able to FULLY process a call without ANY of the rest of your app functioning at all. I see your point. We understand that my app needs to be processed as quickly as possible. However in my case, app doesn't get first entry(didReceiveIncomingPushWithPayload). So app can't do anythig...
Topic: App & System Services SubTopic: General Tags:
Apr ’25
Reply to About 0xBAADCA11 error
I feel your description describe about the Technical Support Incident from me(TSI:771875962). But I heard this probelm already fiexd in the TSI:771875962. If so, should we assume that the BAADCA11 problem fixed in iOS15 will reoccur in iOS17?(Or is this new problem??) When I was investigating this ticket before, I had set a restriction in my system to not accept the next incoming call within 7 seconds to avoid the problem, but should I reimpose the same restriction? Best Regards,
Topic: App & System Services SubTopic: General Tags:
Mar ’25
Reply to iOS doesn't handle incoming call of Local PUSH when receiving a Local PUSH after receiving an APNs PUSH
Hi Kevin Thank you for your kind reply. There was a mistake in my initial inquiry. I apologize. I will correct the mistake, so could you please check again? 11:00 AM: The PBX server requests a VoIP PUSH notification from APNs. The app was connected to the Internet, but did not receive VoIP PUSH. ** There was an error in the explanation here last time. ** It is unclear whether the iPhone was within the range of a network that could connect to the Internet or outside of it. It is certain that it is not connected to the LAN (Wi-Fi) at least. The extension is not working. The following are hypotheses. The APNs server was unable to send the VoIP PUSH to the iPhone. Or..., The VoIP PUSH reached the iPhone, but the delegate (didReceiveIncomingPushWithPayload) was not called. 14:31 PM: The iPhone connected to the LAN (Wi-Fi). The extension started working. 14:55:11 PM: A call comes in from my server (PBX) via the local network, and NetworkExtension calls the iOS API (API name is reportIncomingCall). However, iOS does not call the delegate didReceiveIncomingCallWithUserInfo for reportIncomingCall. 14:55:11 PM: At almost the same time, iOS calls the VoIP PUSH delegate didReceiveIncomingPushWithPayload. (Instead of calling the delegate didReceiveIncomingCallWithUserInfo for reportIncomingCall?) The content of this VoIP (APNs) PUSH was the 11:00 AM call. This is just my guess. It is unlikely that APNs notified the VoIP PUSH that occurred at 11:00 AM at 14:55:11 PM (due to processing delay). The 11:00 VoIP PUSH reached the iPhone, but got stuck inside iOS. At 14:55:11 PM, the extension called reportIncomingCall, which triggered the VoIP PUSH delegate didReceiveIncomingPushWithPayload to be called. We apologize for the confusion. Unfortunately, we were unable to obtain diagnostic logs and have not issued a bugreport. Could you please let us know if there is a known issue? Is there a possibility that this can be avoided by implementing it on the application side? Best Regards,
Feb ’25
Reply to iOS doesn't handle incoming call of Local PUSH when receiving a Local PUSH after receiving an APNs PUSH
Just to clarify here, the system doesn't differentiate or attempt any kind of de-duplication or arbitration between VOIP pushes and the network extension. The voip push can fail to reach your device because the device is on an isolated network, but that's no different than any other failed voip push. You mean, the composition of iOS internal components, it is difficult to imagine that Local Push will be replaced by VoIP Push. Correct? The "11:00 AM:, 14:55:11 PM:, 14:55:11 PM:" events in my report are facts obtained from the logs of My App and our PUSH server. But I haven't looked at the iOS logs, so I may be misunderstanding something. Would a sysdiagnose be necessary to perform a more detailed analysis? However, at this time, I couldn't be collected sysdiagnose. **Do you need sysdiagnose? ** If the problem that occurs infrequently, it may be difficult to collect a sysdiagnose, but if you need it, I will try to collect it. In any case, the solution here is that voip apps should start their own background task inside the call delegate and end that background task at some later point, after the call has started. Note that this approach should be used for BOTH PKPushRegistry and NEAppPushManager, as it ensures the app has a reliable lifetime regardless of system behavior. Thank you for your advice. Don't worry about them. We already do.
Feb ’25
Reply to Regarding network interface name with dual SIM iPhone
Thank you for your previous response to my question which directed me to the Extra-ordinary Networking documentation. We have thoroughly reviewed this documentation and related articles, but have yet to find a direct solution to the specific problem we are facing. Our VoIP application is currently being operated in a customer environment utilizing an sXGP-SIM (local LTE-SIM). A specific requirement from our customer is to "always use the data communication network, rather than the voice call-specific VoLTE network, for establishing SIP and RTP traffic." What we know from our investigations so far: In the customer's sXGP environment, we have confirmed that the VoIP application (client) can successfully connect to the SIP server (server) and conduct VoIP calls (RTP), regardless of whether the connection routes through what might be conceived as a VoLTE network or a general data communication network. Following general best practices, we considered an approach where we do not explicitly call bind() when creating sockets, but instead rely on the OS for route selection (i.e., using connect() and then getsockname() to retrieve the local IP address). However, with this method, we believe it is not possible to control whether the OS-selected route becomes a VoLTE network or a data communication network, nor is it possible for the application to programmatically identify the type of network used. Given that both presumed network paths are viable for reaching the target server in the customer's environment, we cannot rule out the possibility of the OS selecting a VoLTE network path. We are seeking clarification on the following two points: 1. Identification of VoLTE vs. Data Communication Network Is there an existing iOS API (including Network Extension Framework, Network.framework, or other lower-level APIs) that allows an application to programmatically determine whether the current network path is a logical path assigned for VoLTE, or a logical path assigned for general data communication? 2. Forcing Traffic Routing to a Specific Network Path Similarly, is there an API or mechanism that allows a VoIP application to explicitly force its SIP and RTP traffic to route through a path identified as a "data communication network" and not a VoLTE network? Our team understands that implementing these features via public iOS APIs might be challenging. However, to provide a definitive answer to our customer, an official statement from Apple, especially confirming if "it's currently not feasible with iOS APIs," would be highly valuable as evidence for guiding our future development and customer communication. If such APIs or recommended design patterns do not exist, a clear confirmation of this would be greatly appreciated. Conversely, if it is indeed possible, could you please provide hints on the specific APIs or approaches? Thank you for your time and consideration.
Topic: App & System Services SubTopic: General Tags:
Replies
Boosts
Views
Activity
Oct ’25
Reply to performEndCallAction response to reportCallWithUUID can be slow
Hi. Thank you for your advice. We will try it.
Topic: App & System Services SubTopic: General Tags:
Replies
Boosts
Views
Activity
Aug ’25
Reply to Regarding Dual SIM Usage
By "managed environments," I assumed you meant MDM, is that correct? If so, it depends on the client. (We have multiple clients and it varies by client) So, if there is any solution that is based on the premise of "using it in an MDM environment," I would like to know detail of about it.
Replies
Boosts
Views
Activity
Jul ’25
Reply to About GCD (Grand Central Dispatch) in an extension.
Thank you for your advice. I understood the usefulness of NEAppPushProvider.handleTimerEvent(). but I found the following description in "Establish and Monitor the Network Connection" Your push provider must implement the handleTimerEvent callback method, which the framework calls every 60 seconds. Implement this method to check the status of the connection on the client end. Is the execution interval of NEAppPushProvider.handleTimerEvent fixed at 60 seconds? If it can be set to an arbitrary interval, would you tell me sample source or how to configure it.
Replies
Boosts
Views
Activity
Jun ’25
Reply to 0xBAADCA11 Occurs when VoIP Call Incoming (APNs Push Notification)
Thank you for the advice. Following your advice, I executed PKPushRegistry on the first line of didFinishLaunchingWithOptions, and that resolved the issue. This was an experimental implementation, but we will proceed with the commercial implementation with the policy of performing PKPushRegistry as early as possible. By the way, why was it necessary to perform PKPushRegistry as early as possible? If it's not too much trouble, could you please tell me?
Topic: App & System Services SubTopic: General Tags:
Replies
Boosts
Views
Activity
May ’25
Reply to iOS doesn't handle incoming call of Local PUSH when receiving a Local PUSH after receiving an APNs PUSH
Since then, I have repeated the test, but the same problem has not recurred, and I have not been able to take a diagnostic log. I don't think we can investigate without the log, but could you let me know there was a similar reports or not before? Best Regards,
Replies
Boosts
Views
Activity
May ’25
Reply to 0xBAADCA11 Occurs when VoIP Call Incoming (APNs Push Notification)
The method "[AppDelegateImpl voipRegistration]" is where your app creates and configures PKPushRegistry. Yes, that's correct. "[AppDelegateImpl voipRegistration]" is a log indicating that sequence number 3(PKPushRegistry) in BAADCA11.jpg was executed. The fact that it was not logged indicates that it was never called. Yes, that's correct. myApp executes the PKPushRegistry only once, at sequence number 3 in BAADCA11.jpg. I assume this is what you mean by "PKPushRegistry call for PID 405." After sequence number 3, myApp does not make any PKPushRegistry calls (it doesn't make multiple PKPushRegistry calls). The combination of 1 & 2 would mean that the termination of 512/513/514 was valid. No, I don't think so. I believe this is where our understanding differs. I believe that PKPushRegistry is an API that should be called only once when myApp starts, and not an API that should be called on a call-by-call basis of VoIP . Perhaps you think that PKPushRegistry is an API that should be called on a call-by-call basis? From here on, this is my speculation. Internally in iOS, PIDs 512, 513, and 514 may need to hold the callback destination for PKPush. However, this holding is the result of registration through the interface between internal iOS components. In the interface between iOS and the application, registering only once at myApp launch should definitely be sufficient. Could you please confirm this point and provide the results?
Topic: App & System Services SubTopic: General Tags:
Replies
Boosts
Views
Activity
May ’25
Reply to 0xBAADCA11 Occurs when VoIP Call Incoming (APNs Push Notification)
Regarding the key differences between the logs of PID 405 and the logs mentioned above, it appears that they demonstrate the results of repeated each incoming call tests performed after the app was launched. For more details, I have uploaded VID_20250407_111252.mp4 to FB17345744. Please refer to it. As you can see in VID_20250407_111252.mp4, I made five outgoing call attempts (incoming calls on the test device) when I obtained "FjSoftPhone-2025-04-07-1113XX.ips." Based on the iPhone's time display, these operations occurred around 11:12-11:13 (around 0:00:00-0:00:52 in the video timestamp). I believe that 0xBAADCA11 occurred during the first, second, and third incoming calls, and the fourth and fifth incoming calls were ignored. Finally, when Wi-Fi was turned OFF (around 0:01:14 in the video timestamp), the app detected the incoming ghost call with a delay (around 0:01:19 in the video timestamp). Here's a summary of the operations and their timestamps: [Operation Time][Video Timestamp][Operation] [04/07 11:12] [0:00:02] [Caller: Make call (1) ] [04/07 11:13] [0:00:16] [Caller: Make call (2) ] [04/07 11:13] [0:00:28] [Caller: Make call (3) ] [04/07 11:13] [0:00:40] [Caller: Make call (4) ] [04/07 11:13] [0:00:52] [Caller: Make call (5) ] [04/07 11:14] [0:01:14] [Callee: Wi-Fi OFF ] [04/07 11:14] [0:01:19] [Callee: Accept ghost call] I Wrote the app's operation sequence in "BAADCA11.jpg"( attachment file of this incident). Could you please review this sequence and let me know if there are any deficiencies in the app's processing? linkText
Topic: App & System Services SubTopic: General Tags:
Replies
Boosts
Views
Activity
May ’25
Reply to 0xBAADCA11 Occurs when VoIP Call Incoming (APNs Push Notification)
The direct cause of the crash is that your app never registed a PushKit handler with callservicesd. You can confirm this by searching for the string "Registering client process" logged by callservicesd. Here is what's logged by an early run of your app (pid=405): The application log shows that the following operations were performed at the following times. What else should the app do to register a PushKit handler with callservicesd? time:04/07 11:10:50.666 operations: dispatch_queue_t mainQueue = dispatch_get_main_queue(); // Create a push registry object voipRegistry = [[PKPushRegistry alloc] initWithQueue: mainQueue]; // Set the registry's delegate to self voipRegistry.delegate = self; // Set the push type to VoIP voipRegistry.desiredPushTypes = [NSSet setWithObject:PKPushTypeVoIP]; Reference sample source: https://developer.apple.com/documentation/pushkit/pkpushregistry?language=objc ...my recommendation is that voip apps should create their basic call handling "infrastructure" as early as possible (typically, applicationDidFinishLaunching) AND that the "core" component should be able to FULLY process a call without ANY of the rest of your app functioning at all. I understood this advice to mean that when you receive a push signal, you should end the push signal reception process in your app as quickly as possible. In this specific incident, the app is not receiving a push signal, so it cannot end the push signal reception process in the app as quickly as possible. Did this advice mean something different?
Topic: App & System Services SubTopic: General Tags:
Replies
Boosts
Views
Activity
May ’25
Reply to 0xBAADCA11 Occurs when VoIP Call Incoming (APNs Push Notification)
Thank you for your response. Have you looked at exactly what happens when your app launches in that configuration? I don't see how this would change the systems routing for pushes, but I could see it distorting your apps own network logic. Are you asking about the behavior of the app when WiFi is ON (when it crashes)? I have checked exactly how the app works when WiFi is ON (when it crashes). Application life sycle didn't start when it. iOS didn't call application after push. I haven't checked exactly how the app works when Wi-Fi is OFF, because there are no problems. Also, how is the app being distributed to the device? I do not that there are extra verification steps for enterprise apps and, in theory, it's possible that issues with that verification process could delay the app launch long enough that callservicesd then terminates the app. This application is distributing via App Store(And I tested TestFlight version). You can either file a bug and post the number back here, or you can file a code level support request and send them through email. I reported(and attached logs) about this to Feedback assistant. Number is FB17345744. Would you take a logs from above report?
Topic: App & System Services SubTopic: General Tags:
Replies
Boosts
Views
Activity
Apr ’25
Reply to 0xBAADCA11 Occurs when VoIP Call Incoming (APNs Push Notification)
An app setup like this will work fine under basic testing because the developer/user habitually logs in as soon as they open the app. However, it will be terminated under real world conditions when the system or the user kills the app. The system correctly launches the app into the background, then terminates it because the app is blocked at #1 and has not created a PKPushRegistry object. The crash at step 8 of [Operation] in the initial explanation only occurs when implementing sXGP-SIM. There is no problem when using LTE-SIM(with the same operation perfectly.) If Wi-Fi is enabled when the LTE-SIM is implemented, the crash that in step 8 of the [Operation] in the first explanation will not occur 100%. If Wi-Fi is enabled when the sXGP-SIM is implemented, the crash that in step 8 of the [Operation] in the first explanation will occur 100%. In other words, the problem is not occurring because there is a difference in the app's executing route when a push message is received after the developer/user opens the app and when a push message is received after the app is terminated. What does that crash log show? I'm happy to take a look if you post the log, but my guess is that it will show one of three things: my crash log was below. code:0xBAADCA11 explanation: Is there a way to send the logs other than uploading them directly here? If not, I would like to refrain from uploading logs that include the app name to a public site, Is it okay if I hide(Change the app name to ***, etc.) the app name in the logs? my recommendation is that voip apps should create their basic call handling "infrastructure" as early as possible (typically, applicationDidFinishLaunching) AND that the "core" component should be able to FULLY process a call without ANY of the rest of your app functioning at all. I see your point. We understand that my app needs to be processed as quickly as possible. However in my case, app doesn't get first entry(didReceiveIncomingPushWithPayload). So app can't do anythig...
Topic: App & System Services SubTopic: General Tags:
Replies
Boosts
Views
Activity
Apr ’25
Reply to About 0xBAADCA11 error
I have opened FB16493124 in the feedback assistant regarding this issue. Could you please let me know at here also if you found something.
Topic: App & System Services SubTopic: General Tags:
Replies
Boosts
Views
Activity
Mar ’25
Reply to About 0xBAADCA11 error
I feel your description describe about the Technical Support Incident from me(TSI:771875962). But I heard this probelm already fiexd in the TSI:771875962. If so, should we assume that the BAADCA11 problem fixed in iOS15 will reoccur in iOS17?(Or is this new problem??) When I was investigating this ticket before, I had set a restriction in my system to not accept the next incoming call within 7 seconds to avoid the problem, but should I reimpose the same restriction? Best Regards,
Topic: App & System Services SubTopic: General Tags:
Replies
Boosts
Views
Activity
Mar ’25
Reply to iOS doesn't handle incoming call of Local PUSH when receiving a Local PUSH after receiving an APNs PUSH
Hi Kevin Thank you for your kind reply. There was a mistake in my initial inquiry. I apologize. I will correct the mistake, so could you please check again? 11:00 AM: The PBX server requests a VoIP PUSH notification from APNs. The app was connected to the Internet, but did not receive VoIP PUSH. ** There was an error in the explanation here last time. ** It is unclear whether the iPhone was within the range of a network that could connect to the Internet or outside of it. It is certain that it is not connected to the LAN (Wi-Fi) at least. The extension is not working. The following are hypotheses. The APNs server was unable to send the VoIP PUSH to the iPhone. Or..., The VoIP PUSH reached the iPhone, but the delegate (didReceiveIncomingPushWithPayload) was not called. 14:31 PM: The iPhone connected to the LAN (Wi-Fi). The extension started working. 14:55:11 PM: A call comes in from my server (PBX) via the local network, and NetworkExtension calls the iOS API (API name is reportIncomingCall). However, iOS does not call the delegate didReceiveIncomingCallWithUserInfo for reportIncomingCall. 14:55:11 PM: At almost the same time, iOS calls the VoIP PUSH delegate didReceiveIncomingPushWithPayload. (Instead of calling the delegate didReceiveIncomingCallWithUserInfo for reportIncomingCall?) The content of this VoIP (APNs) PUSH was the 11:00 AM call. This is just my guess. It is unlikely that APNs notified the VoIP PUSH that occurred at 11:00 AM at 14:55:11 PM (due to processing delay). The 11:00 VoIP PUSH reached the iPhone, but got stuck inside iOS. At 14:55:11 PM, the extension called reportIncomingCall, which triggered the VoIP PUSH delegate didReceiveIncomingPushWithPayload to be called. We apologize for the confusion. Unfortunately, we were unable to obtain diagnostic logs and have not issued a bugreport. Could you please let us know if there is a known issue? Is there a possibility that this can be avoided by implementing it on the application side? Best Regards,
Replies
Boosts
Views
Activity
Feb ’25
Reply to iOS doesn't handle incoming call of Local PUSH when receiving a Local PUSH after receiving an APNs PUSH
Just to clarify here, the system doesn't differentiate or attempt any kind of de-duplication or arbitration between VOIP pushes and the network extension. The voip push can fail to reach your device because the device is on an isolated network, but that's no different than any other failed voip push. You mean, the composition of iOS internal components, it is difficult to imagine that Local Push will be replaced by VoIP Push. Correct? The "11:00 AM:, 14:55:11 PM:, 14:55:11 PM:" events in my report are facts obtained from the logs of My App and our PUSH server. But I haven't looked at the iOS logs, so I may be misunderstanding something. Would a sysdiagnose be necessary to perform a more detailed analysis? However, at this time, I couldn't be collected sysdiagnose. **Do you need sysdiagnose? ** If the problem that occurs infrequently, it may be difficult to collect a sysdiagnose, but if you need it, I will try to collect it. In any case, the solution here is that voip apps should start their own background task inside the call delegate and end that background task at some later point, after the call has started. Note that this approach should be used for BOTH PKPushRegistry and NEAppPushManager, as it ensures the app has a reliable lifetime regardless of system behavior. Thank you for your advice. Don't worry about them. We already do.
Replies
Boosts
Views
Activity
Feb ’25