It’s very clear that a program “for Mac OS X” works with any personal computer Apple sells, because they all have “Mac” in their name. Unfortunately, the flavor of OS X that runs on the iPhone and iPod Touch is officially called “iPhone OS” by Apple, which it implies an incompatibility with the iPod Touch, and any future device that doesn’t have “phone” in the name.
I don’t know a good way to unambiguously say that a program is for any iPhone OS device, without tedious enumeration.
“For iPhone OS” sounds like it excludes the iPod Touch.
“For all models of iPhone and iPod Touch” sounds terrible. It will sound even worse when Apple comes out with other iPhone OS devices (“…for iPhone or iPod Touch or iTablet or iFPGA…”).
Apple could help by renaming “iPhone OS” to “Mobile OS X”, but I don’t see this happening.
I personally lean towards using “for iPhone” in general writing, and clarifying, if necessary, in “systems requirements” fine print. This feels closest to how the press covers iPhone OS applications, and of course it’s how Apple named the OS.
I’d love to hear what you call iPhone OS applications, and why.