IMO it's not a matter of tap to pay and camera quality, rather a matter of whole system paradigm. Having millions of disconnected services in the "do one thing and do it right" spirit and using text based communication and hundreds of python and shell scripts is relatively maintainable and relatively easy to use, but very inefficient when it comes to CPU cycles - and on a handheld every cycle counts.
And of course every app is optimized for desktops/laptops... but I guess that's a chicken-or-egg problem: once there is a working distro, there will be apps too. And once there will be apps to use, there will be a working distro. Maybe.