Fun fact -- I have never bought a single app on Amazon's Android App Store even though I fire it up every day to see what I can get for free. Why buy an app for $1-10 dollars (even if I may get that amount of enjoyment/practical use out of it) when it MIGHT BE FREE tomorrow?
The same thing holds to a lesser extent on those giant Steam sales. I never buy any games on Steam full price even if I want to play them badly because I know if I wait a few months I'll be able to get them for pennies on the dollar in some crazy sale or other.
As a consumer this is great for me. As a developer, not so much.
The price of an app (or anything, really) is based on both. It's not dictated by the supply curve or the demand curve; it's dictated by the intersection of the curves. This argument was settled centuries ago.
Paying for an app based on effort going into making it is nonsense. An app should be paid for based on the value it provides. If it could have provided that same value with less effort, it probably should have.
Now, if you want to complain that it's hard to charge based on the value the app will provide, I'd believe you! It's still very, very hard to provide users with information which will let them evaluate your product and determine that it is, in fact, a quality product worth paying lots of money for.