Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Apple to App Developer: Remove the Most Useful Function, Please (mashable.com)
26 points by thinkzig on Aug 28, 2009 | hide | past | favorite | 16 comments


I'll repeat what I commented on Mashable... the "most useful feature" (which is "freeing memory" not "showing free memory, that still works) generate a lot of crash reports.

Whenever you hit the "free memory button" iStat fill the memory of the device until it receive a "low memory warning". In the mean time all background apps are zapped which includes Mail, iPod, ...

I can see why Apple is annoyed to receive crash reports because an app willingly force theirs to crash (gracefully).

Still, iStat is a great app, beautifull and functionnal. I personnaly won't miss this feature.


The concept of "free memory" on a modern system also makes no sense. RAM that is not used is wasted. (Up to a point; the OS will try to keep a percentage actually free so it can always do some work, but this is not much compared to the total.) The more of your RAM that is taken up, the more data you have cached.


> The concept of "free memory" on a modern system also makes no sense. RAM that is not used is wasted.

The problem is that the iPhone OS tends to have issues with releasing memory especially in high-pressure situations e.g. games. It's quite frequent that out of the ~60MB non-OS RAM of a 3G a game only gets to use 10~20MB, and lags (or even crashes for the most intense ones) because of that. The initial "solution" was to reboot the damn phone in order to kill the MobileMail and MobileSafari background processes.

"Free memory" functions give users the ability to kill those without having to restart the phone, which far shorten the time it takes to "reclaim" all your ram and be in an ideal position to launch a demanding game.

And apple's ripping on WiMo's task manager comes to bite the users's asses.


This is the game developer's issue -- on the iPhone, you must avoid extreme memory pressure and ramp up your usage gradually enough to allow the OS to exit background applications.

I wouldn't be surprised if "Free Memory" functionality was a placebo in the vast number of cases: the number jumps from 4 megabytes to 20 megabytes, isn't that an improvement? Never you mind all those cached pages the OS just dropped.

In the cases where it's not a placebo, it's a bug in the original application. If "free memory" functionality allows you to work around that bug, I can see how you would be frustrated with its removal from App Store applications.

Of course, as stupid as I think it is to charge money for a malloc()+bzero() in a loop, I still don't think Apple should be censoring applications.


> on the iPhone, you must avoid extreme memory pressure and ramp up your usage gradually enough to allow the OS to exit background applications.

Definitely, but when you're playing a game which is all in all pretty nice apart from the memory issues (on a 2G or a 3G, he 3GS tends not to have problems there of course), if a simple RAM wipe allows you to spend a nice commute, you're not going to go whine to the dev and then spend an awful commute. I won't anyway.

> I wouldn't be surprised if "Free Memory" functionality was a placebo in the vast number of cases

It's not. The effect is noticeable in many cases.

> Never you mind all those cached pages the OS just dropped.

Since you're usually freeing memory to open a game, you don't really care for those dropped cached pages. You care for the game you're trying to play.


> In the mean time all background apps are zapped which includes Mail, iPod, ...

Yeah but if Mail (and Safari, of all apps) didn't stay running in the background the low mem issue wouldn't happen in the first place…


Author fails to mention that they are using an undocumented API to retrieve this information. Staying away from undocumented API's has been the rule since day one.


What the fuck are you talking about? Making a goddamn syscall to get the VM usage of other processes is not an undocumented API.


Yes -- the API (host_statistics() on Darwin) is in the public headers and is not private.

Of course, it wasn't the ability to show free memory that they removed, rather, the ability to trigger OS low memory handling by allocating (nearly) all available free memory.


Maybe he'll try to tell us "malloc() ain't a part of no public API I ever herd of!"


No this is COMPLETE BS. I haven't cared about Google Voice and all of the other apps that were rejected. But I have personally used iStat and it's predecessor app for a long time. It was the only bloody way for me to know if my edge & 3g phones were going to crash from lack of memory. I have never had problems with these apps. As long as you followed the clearly written instructions about how to free up more memory, you were fine. This is some official bullshit.


There must be a reason for this.

Maybe they run some spyware in the background you could suspect to exist once you compared the memory you use yourself with the memory still available?

It's easy to spy on others using their iPhones and there are several ways the iPhone calls home or can be remotely run by Apple (for instance to delete prohibited apps) so that would be no wonder.


There is no shortage of apps in the App Store that show free memory.


No. Did you read the article? They removed ALL of them not just this one.


> They removed ALL of them not just this one.

They missed a bunch of them then. Memory Status is still up for instance.


Thanks for the pointer

--Steve




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: