Some updates after a WWDC lab where I got to talk through this issue a bit with an Apple engineer:
An issue on my end: I noted in my previous message that after successful PTT restoration it took two PTT messages for playback to be functional again. This was my fault. Re-initializing our AVAudioSession right away from within the incomingPushResult method fixed this for us
Seems to still be a framework issue: In about 10-20% of cases, PTT does not fully restore itself after a device restart - meaning there is no blue PTT indicator after the device restarts. In these cases, receiving a new PTT message does appear to reinitialize PTT (the blue indicator suddenly appears and we get audio playback), but we still see some downstream effects in our app when this happens. For example, we can't reinitialize our microphone after PTT playback finishes (which we can do successfully when it fully restores in the 80-90% of cases)
I've filed a Feedback (FB13890499) detailing issue #2 with two sysdiagnoses: one where it fails to reconnect upon restart (no blue PTT indicator), and another where it fails to reconnect upon restart and then revives itself after I receive a new PTT message.
Both sysdiagnoses were captured on an iPhone 15 Pro running iOS 17.5.1.
Things are significantly improved in this area after updating to iOS 17.5. Happy to discuss further. Let me know if there's anything else I can provide.
Topic:
App & System Services
SubTopic:
Notifications
Tags: