A couple points here, and note that I do not completely understand the complaints here.
Apple has typically sold expensive software. That means that the end user pays more and the developer tends to make more. On upshot of this was that Apple products sold less because it was generally considered as a fact that one not only had to pay more for the Apple brand but also to run the machine.
This meant that most developer went for MS Windows, assuming that though writing for MS was a race to the bottom, and knowing that MS could put you out of business any time they wanted, the number of users meant that you would make money.
Writing for Apple could also be more difficult. I,myself, have written very few Apple specific programs. I have not really taken the time to learn the library. I appreciate the fact that Apple has taken the time to standardize much of the work so that once the library is learned, writing an application is easier, as long as one is willing to live within the Apple UI.
So, as I understand the complaints, Apple has created a new mobile market and new software marketing method that has created million of new customers for developers to sell to,and has actually made writing the applications easier, and developers are complaining about it.
Yes, dealing with a UI that is dictating from above is difficult, but that is not different for MS, recall the Ribbon? Yes, dealing with Apple and the App store is probably very expensive. OTOH, I am sure many are like me. I have spent more on applications over the past couple years than I did in the past 10. OOS, no cash cost software, does most of what I want.