Paul Kafasis on Apple's takedown of Airfoil Speakers Touch and its reintroduction into the App Store:
We’re pleased that Airfoil Speakers Touch is once again available in the iOS App Store, enabling you to use Airfoil to send audio from your Mac or PC to Airfoil Speakers Touch running on your iPhone, iPod Touch, or iPad. However, in order to get Airfoil Speakers Touch back into the store as a receiver for Airfoil, we had to remove its ability to receive audio directly from iOS and iTunes via AirPlay. This was quite disappointing to us, as we’d provided a feature that thousands of users found quite useful.
Airfoil Speakers Touch was removed from the App Store on May 24th, specifically for its Enhanced Audio Receiving feature which turned your iPhone or iPod into an AirPlay receiver. For instance, you could stream audio from iTunes to an iOS device that was connected to your home audio equipment. The feature was sold as an in app purchase — Kafasis states that over 7,000 customers paid extra for the functionality.
We now know that Apple’s issue with Airfoil Speakers Touch was specifically related to its recently-added ability to receive audio directly from iOS devices and iTunes. This was not properly conveyed in our initial conversations prior to the removal of Airfoil Speakers Touch from the store, and Apple’s representatives apologized for the fact that the entire process was “poorly handled”.
Apple's problem with Enhanced Audio Receiving stems from Rogue Amoeba's use of AirPlay in the app — Apple hasn't made available any APIs for iOS devices to act as AirPlay receivers. Rogue Amoeba made clear that they weren't using any Private APIs in their implementation. As John Gruber speculated, perhaps it wasn't the issue of an API, but rather that Apple simply didn't want a high profile AirPlay Receiver in their App Store.
I think the bottom line is that Apple is saying that apps are not allowed to act as AirPlay receivers on iOS, but there’s no App Store guideline that explicitly forbids that. So they’re citing App Store Review Guideline 2.5:
Apps that use non-public APIs will be rejected.
Kafasis specifies what guidelines Apple used to remove Airfoil Speakers Touch from the App Store:
Regardless, Apple is using the authority they provide themselves in the guidelines and program license agreement to remove apps they don’t like. Specifically, they cited a provision in the App Store Review Guidelines which allows them to reject apps “for any content or behavior [they] believe is over the line”. That’s certainly disappointing, and frustrating, but it’s the nature of the system Apple has created.
Kafasis is upset, and rightfully upset, this his customers paid for a feature that was swiftly taken away without good reason. It's also frustrating for customers, who may have specifically downloaded the app to pay for and use this feature. Instances like this can have negative impacts on the reputation of the developer if customers are unaware that the removal of a feature they paid for was mandated by Apple. Kafasis writes that Apple licenses AirPlay to lots of vendors, and that Apple might not want their own products to compete with AirPlay enabled hardware sold in stores. Rogue Amoeba had no choice but to comply and do the best they can to provide the remainder of the app's functionality for existing customers. As far as outcomes go, I think it was the best compromise, but certainly not ideal.