To free up memory on your iPhone (assuming it's new / supports multitasking):
- Double-click the Home Button
This brings up your "recently used apps" tab
- Touch and hold a recently used app
This makes ( - ) buttons appear, allowing you to close apps
- Press the ( - ) button to close a few apps you're not using
There's no need to keep all of these apps running in the background!
It's unfortunate that this feature isn't made clear to iPhone users. It's even more unfortunate that memory isn't handled better behind the scenes! I would think apps running in the background should systematically close before you know, crashing the one app you're using.
I notice in my reviews and also in reviews for other applications: people blame an app if it crashes... and yet this is often the reason why. Why You Gotta Be A Vampire for example runs using < 4 MB of memory, with sound effects. It's rare, but an app can crash with even this small of a memory footprint! For non-developers out there, a typical app should run fine using 25 to 40 MB of memory, I would think: to support background music and 3D graphics for example.
I imagine background execution was intended for apps like Pandora which offer value while running in the background: you can stream Pandora Radio while playing Why You Gotta Be A Vampire. But large games often use background execution solely as a means to start up more quickly, by keeping much of the game loaded in memory. This is fine, maybe even desirable if it's a game you play often. But if you play a variety of games, this can cause you to run out of memory quickly.
A fun thing about Kenny's Apps though: my apps don't run in the background, so they don't waste your memory when you're not playing them. They still show up in the "recently used apps" tab though. This is something I think more developers should support (at least until Apple handles background execution better)!