The problem is not that Apple can set the terms, it is that Apple is setting the terms -only- to prevent people from coding the same app and running it other places, so Apple can have the app exclusively and keeping people tied into the iPhone rather than the cheaper, diverse and more feature filled Android, BlackBerry, and other phones.