Here we go again. Not long after apps with
inappropriate content were
pulled from the App Store, Apple removed all traces of another kind of app on Thursday—this time for less controversial reasons.
The victims of the moment are apps with Wi-Fi stumbling features, such as
Sekai Camera. These are applications that can not only show the location of every nearby Wi-Fi hotspot based on information from an online directory, but also can dynamically add more listings based on what Wi-Fi access points the iPhone detects in the immediate vicinity. There’s just one problem; that feature, dubbed “stumbling,” is accomplished through the use of undocumented, private APIs.
Private APIs are software development frameworks tailored for the iPhone system software and nothing else. Apple may completely change, replace, or remove them in a future iPhone OS update. The moment that happens, any third party iPhone app that depends on the private API in question will likely display strange behavior, become crash-prone, or simply fail to work. That’s why the iPhone development terms state that third party apps are forbidden from using private APIs. However, a few
exceptions and compromises have been made.
You might have heard that Apple has previously pulled apps from the store that rely upon private APIs. Recently, however, the company has taken steps to avoid those drastic measures by contacting developers to request that they remove features dependent on private APIs in their application’s next update. In the case of
USB syncing, one developer
came to an agreement which allowed longtime users to continue using that feature in all future updates, on the condition that they don’t uninstall that app from their iPhone.
Though Apple’s response this time has been relatively swift and uncompromising, it doesn’t affect Wi-Fi hotspot seeking apps that only search from a directory, like
Wi-Fi Finder and
Spots. 3jacks Software, developers of Wifi-Where, has stated that it hopes that “Apple will allow [Wi-Fi stumbling] functionality in a future SDK.“