I'm going to deploy my application on one of them, and have no idea which is better.
Amazon's Cloud services, at this time, are much more general and flexible, while Google App Engine essentially fits some specific classes of applications that can live within its specific limitations (those limitations are being gradually relaxed, as GAE adds features and allows you to pay to exceed certain quotas, but that does not mean GAE will become a completely general-purpose platform the way Amazon's services are).
If your app can live within GAE's limitations, then GAE presents advantages: free up to a certain quota, almost no system configuration / administration overhead, etc. But if you need total flexibility -- for example, if you want to code part of your apps in C or C++, and that's just one of many examples -- then GAE is not suitable, while Amazon (for a price, in both money and sysadm overhead) can accomodate you.
If you've already written your app, and just want to deploy it, I'd have to say AWS is your best bet. AWS is a platform (or rather, EC2 is), and deploying an existing app is easy. App Engine, on the other hand, provides an entire development environment, at a much higher level of abstraction, which has significant advantages when it comes to scaling, but requires you to have written your app to work on it.