Have you ever had problems opening an App Store app when you’ve been streaming with AirPlay? A new article by Chris Liscio reveals how this happens, and how it can be fixed.
This doesn’t affect all apps obtained from the App Store. However, what happens is fairly unmistakable. If you’re using a wired built-in Ethernet adaptor (not necessarily to stream) and streaming over AirPlay, when you try to open a susceptible App Store app, you’re told that the app is damaged. You trash the app and download it again, and if you’re still streaming, the same thing happens again. And again.
In these circumstances, the only way to open that app is to disconnect from AirPlay, in which case everything works normally again.
The reason for this is, ultimately, a bug in macOS. When a Mac plays audio using AirPlay, the latter creates a bogus en0 network device. That’s a pretty fundamental howler which could cause problems elsewhere in Macs which are using the real en0 device (the built-in Ethernet adaptor) for networking.
This affects some App Store apps because they are expected to perform their own verification, that they were purchased legitimately. Having never developed an App Store app, that seems absurd to me – I would have expected Apple to perform that verification. It doesn’t, instead providing developers with sample code which triggers this bug!
Chris Liscio helpfully provides a fix to Apple’s sample code in his article. If you develop an App Store app, you’ll want to rush to read how to fix this, so your users don’t suffer the bug.
Hopefully, Apple will get round to fixing its two bugs quickly now they’ve been reported.
Thanks to Jeff Johnson @lapcatsoftware for drawing attention to Chris Liscio’s article.