Professionals working for bigger companies who build apps for millions of users or on commission for businesses get paid pretty well. But for people working alone on in small groups, developing apps for smaller crowds, the income isn't all that good, because they are competing with hobbyists. Another factor is the size of the market: in principle it is nice for any developer to have a market of 10s of millions of potential customers, but in practice it alters the economics and customer expectations to their disadvantage.
There are really two kinds of apps. You have the ones by companies who are selling products incidental to the app - e.g., banking, shopping, social media, streaming media and other apps. The app makes life convenient and increases sales of the core service,.
Then there are apps that are designed for the device itself - which can be subdivided into two more categories - indies and non-indies. Non indies would be the big publishers in your platform - the EA, Ubisoft, Microsoft, Google and others, while the indies are everyone else.
And just like on the PC, indies have practically never made money - sure you get maybe the 0.01% that rise up and become mainstream and make tons of money, but the rest of the crap gets released, forgotten, and doesn't make money. Doesn't matter if it's Apple's App Store, Google Play, Steam (though its curation is even more stringent than Apple, so a lot of the crap is filtered out, but there's still a large chunk), Xbox Live Indie Arcade, or the general entire PC ecosystem.
As for the 30% cut, running your own ecommerce platform isn't easy - if you want to deal with re-downloads/updates, accounts (and security!), merchanting (Paypal or direct credit cards and PCI-DSS) and other things. It's why sites like Shopify and Amazon exist, but surprise surprise, they also have their cut (typically 10% if not more) and you still have to do a lot of work on your end.
You can try to do it yourself, but then you have security issues - ongoing maintenance is expensive and even today there's still a bunch of sites vulnerable to Heartbleed (!). Or SQL injections making them one step away from having your personal information compromised.
Sure 30% seems expensive, but in the end, having a lot of that stuff taken care of for you makes it more worthwhile for a bunch of developers who would rather work on their app, not figuring out why updating the SSL library to fix Heartbleed broke their ecommerce system.