Live data from Hacker News

RogueSheep’s Postage App Flagged by Apple’s Static Analysis Tool

daringfireball.net

11–13 of 13 posts

Re: RogueSheep’s Postage App Flagged by Apple’s Static Analysis Tool

#11

Earlier quoted context omitted.

40,000,000 more potential customers.

And forty million other apps to compete with for attention.

100,000, actually: http://www.apple.com/pr/library/2009/11/04appstore.html

Re: RogueSheep’s Postage App Flagged by Apple’s Static Analysis Tool

#12

This is getting ridiculous. The Objective-C runtime allows dynamic method calls, using performSelector: which takes a selector name, which can be constructed from any random string. This basically means any static analysis tool can be trivially fooled. Apple might as well start rejecting all apps which use any "features" of their runtime. Who cares whether a method was overridden or called or whatever -- if it's in t…

Who cares whether a method was overridden or called or whatever -- if it's in the runtime it can be invoked.

API's aren't hidden to make developers lives harder, but rather because they may not be stable and may or may not exist in future releases. And if they do exist, they may not do the same thing anymore.

So, users care. Not about the method itself, but about why their app that they may have paid money for has stopped working after they upgraded their iPhone.

Re: RogueSheep’s Postage App Flagged by Apple’s Static Analysis Tool

#13
post #12

This is getting ridiculous. The Objective-C runtime allows dynamic method calls, using performSelector: which takes a selector name, which can be constructed from any random string. This basically means any static analysis tool can be trivially fooled. Apple might as well start rejecting all apps which use any "features" of their runtime. Who cares whether a method was overridden or called or whatever -- if it's in t…

Who cares whether a method was overridden or called or whatever -- if it's in the runtime it can be invoked. API's aren't hidden to make developers lives harder, but rather because they may not be stable and may or may not exist in future releases. And if they do exist, they may not do the same thing anymore. So, users care. Not about the method itself, but about why their app that they may have paid money for has st…

I wasn't implying that we should all start using hidden APIs. Personally, I have a hard enough time using the documented API. My point was that a tool to catch such uses is pretty pointless, as it can be defeated using other entirely "legitimate" API calls.

To your second point, even apps that stick to using only documented API methods have known to fail after iPhone OS upgrades. So, let's not delude ourselves (or the users) into thinking we're writing robust (or worse, future proof) software simply by adhering to Apple's guidelines. All I would ask from Apple is that they get out of my way of getting an update to my users as quickly as I can.

Post reply on HN