Posted
by
timothy
on Thursday March 04, 2010 @08:30PM
from the you've-been-very-very-naughty dept.

jasonbrown writes "Apple on Thursday began removing another category of apps from its iPhone App Store. This time, it's not porn, it's Wi-Fi. Apple removed several Wi-Fi apps commonly referred to as stumblers, or apps that seek out available Wi-Fi networks near your location. According to a story on Cult of Mac, apps removed by Apple include WiFi-Where, WiFiFoFum, and yFy Network Finder."

It appears Apple's problem with the apps isn't with what they do but with how they do it; namely, using non-public frameworks. There probably isn't a way to do it using public frameworks, though (on Mac OS X, you need to use the private Apple80211.framework, not sure about iPhone OS X).

"We received a very unfortunate e-mail today from Apple stating that WiFi-Where has been removed from sale on the App Store for using private frameworks to access wireless information," WiFi Where-maker Three Jacks Software, wrote on its Web site.
There was no explanation as to what Apple meant by "private frameworks." Apple representatives were not immediately available for comment when contacted by CNET.
TechCrunch says Tonchidot, a Tokyo-based developer, had its app Sekai Camera removed because of its use of Wi-Fi, too. Sekai Camera uses PlaceEngine as a way to determine a user's location over Wi-Fi.
PlaceEngine developer Koozyt says other apps that use its technology have also been removed, including Yahoo! Maps for the iPhone.

So it looks like this may be about the PlaceEngine framework, not wifi per se. And this is why we need to RTFA, there are just too many false and/or misleading summaries.

if it's for using private API's, avoiding the MS bad publicity. everyone worked around MS bugs and Microsoft couldn't make needed changes in their OS's due to developers complaining it was going to cause them to write code. in Vista they had to pull a new anti-virus API because of this.

Apple is just forcing everyone to follow the rules in the developer agreement. last thing Apple wants is to release an iPhone OS update and to have thousands of apps fail due to private API use and then all the devs will complain how it's Apple's fault

All I can say is get a real phone with options you like eg android, nokia 9x ect.
Apple makes a great OS, some great hardware.
Just stay away from the DRM junk and itoys.
Or help port a real OS to it.
As amazon showed with 1984, MS with win 7 mobile and now Apple shows, your just a consumer renting space on their their vision of the world.
Time to disconnect Apple and buy or use/write a real mobile OS.

Apple has NEVER permitted the use of private frameworks in iPhone apps. My company had to rewrite an app we were trying to deploy because we were using some undocumented features for still frame capture from the camera device. We almost made it through the authorization process, then Apple shot us down at the last second because of it. We had to wait a few more minor releases before the functionality we needed was exposed through an approved interface. It had nothing to do with our application, but rather, the way it was implemented.

In general, the use of undocumented APIs is frowned upon throughout the industry, as it makes for flaky application and reverse-vendor-lockin, when an extremely popular application relies on undocumented APIs, the APIs change, then people come bitching to the platform manufacturer for "breaking" their applications. There's nothing weird about this, whatsoever. Chill out, folks.

The term "Kafkaesque" usually refers to Kafka's "The Trial", where a man is arrested and prosecuted without ever being told what the crime is. Although sometimes it refers to "Metamorphosis", which involves people turning into giant roaches. You make the call.

If you refer to his novels, 'Kafkaesque' would most likely denote the endless pain and futility of dealing with an organization where the participant has no idea what hoops to jump through until they are prevented without achieving them.

Kafka used the individual's ignorance of the system as a weapon that is used to dis-empower him. Even the most crazily elaborate set of obstacles can be overcome with planning and diligence if you're aware of them, but in Kafka's novels, there was always a new challenge to overcome whenever the previous one was achieved. This ultimate futility was the driving theme of many of his stories.

Dictionary quote:adjectiveComplex or illogical in a bizarre, surreal, or nightmarish manner.

In either case, the original poster of the phrase miss-appropriated it into their post to express what would be best served just dropping the word and leaving the sentence in tact without "active enforcement of ever-shifting, secret rules against applications" would have served just fine.

I'll repeat this fact one more time: iPhone OS and core Mac OS X share over 80% of their source code (see WWDC'09 sessions). The major difference being the UI on top of the core OS. For the iPad, Apple is pulling even more bits from Mac OS X and putting them into iPhone OS 3.2.

Why no Mac OS X UI or multi-tasking? Desktop UI's make absolutely no sense on a small form factor multi-touch based mobile device. If you want to get a taste of what multi-tasking on a smartphone hardware spec device would be, install Windows 95 on a 600 MHz Pentium III with 128 MB of RAM and a 8 GB hard drive. Disable the swap file. Then install Firefox and a few other small productivity apps and run them at the same time.

Also the issue isn't public APIs (Apple's modus operandi is to keep those around for a while, deprecate them, and a few years later drop them). The issue is private APIs that the developers of those apps had to use since there is, unfortunately, no similar public API exposed. Those specifically are verboten per the agreement that you sign with Apple.

It appears Apple's problem with the apps isn't with what they do but with how they do it; namely, using non-public frameworks. There probably isn't a way to do it using public frameworks, though

No, other apps that do the same thing are still allowed and available in the app store.

(on Mac OS X, you need to use the private Apple80211.framework, not sure about iPhone OS X).

No you don't. Unlike with iPhones and iPads, with their crippled phoneOS, I can use any framework I want that I can install on my MacBook Pro. Developers can even develop for X11 [apple.com]. I have X11 installed on my Mac, it comes on OS X DVDs and can be downloaded as well.

Clutter is the wrong word, however, you are correct in that the use of unpublished APIs should be enforced. The problem with the average use is, that if an App uses a private API and that API changes, the user will blame Apple when the next version of iPhone OS breaks the app. Developers should NOT use unpublished APIs in production software.

Your user number is low enough for you to have been here when/. blew up about Microsoft using internal APIs that no one else knew about. IIRC such actions got them in a little bit of legal trouble.

That was a lot of beers in the past. Perhaps you could refresh my memory and we can actually have a conversation about it. I vaguely remember something of it, but I was using Linux and as such, didn't really care about Microsoft's monopolist practices since I had already escaped them.

But since it is apple we are perfectly happy with letting apple tell us what we can and can't do with our own hardware.

First of all, Apple has nowhere near a monopoly position on the smart phone market, despite what marketing hype might imply. That makes their situation quite different than Microsoft's.

Second, we are talking about applications which are sold through an online store which is owned, managed, and hosted by Apple. It's not unreasonable, to me, to expect that Apple might want a fairly tight degree of control over that, since the impression given by the store and the apps themselves reflects directly on Apple. I've spoken to iPhone users who don't even understand that the applications aren't made by Apple.

Third, Apple isn't telling you what you can do with your hardware. You can develop, install, and run anything you want on your phone. I do not see how phone ownership automatically grants you the right to access any application you want to through Apple's storefront. Your argument is based on the principle of ownership and so surely you must respect Apple's ownership over their own storefront.

Bet you are a BIG FSF / GPL support though.

I am. I have a couple of Mac Minis which I bought mostly because they were extremely small and could fit in the corner of a small desk. I run Linux on them. I don't own an iPhone. Full disclosure...

Apple doesn't get to see your source code. To figure out that you are using an API, they have to, to some extent, reverse-engineer your application.

They have static analysis tools. They nailed one of my apps for subclassing when I shouldn't have. Not a private API, just subclassing something that the docs clearly state (had I read them) shouldn't be subclassed. No way one is going to see that just looking at the app. Used a category instead (which is what I should have done in the first place), and there was no external change to the app. App went through just fine.

I use WiFiFoFum at my hospital to check the strength of the Wireless AP's scattered through the floors. At the moment I'm using it on a Intermec CN3 handheld scanner that we're using for Medicine scanning and verification. I wanted to get an iTouch or an iPhone so I could use it on that device since I may or may not be able to keep the CN3 that I'm currently using as my dedicated Test Platform.

By denying us access to such tools, Apple is alienating the IT Professional community and may drive us to find other applications or even (in their eyes) worse, jail-breaking the damn things so we CAN run whatever the hell we want and not what THEY want us to run.

Remember the days when we used to mock Microsoft and their advertisements by saying "Microsoft: You WILL go here today!"?