These are business decisions. Apple Customers have the option to buy competitors products. They chose Apples “closed” ecosystem. Most device OS’ ecosystems are closed. Really only laptop and desktop computers are different.
Right? I don’t recall an instance where a product manufacturer told Walmart how to run its store. People go to Walmart from their own will, and that’s the same thing with Apple. You want to distribute your product on a platform that you haven’t created yourself? Then pay the cut.
These arguments miss one very fundamental difference. There is a very major disparity when comparing brick-and-mortar stores with online platform app stores.
To help this make sense, let's consider traditional brick-and-mortar software distribution on CD-ROM. Let's say I own Acme Software and I've written WidgetSoft for PC. Now I want to sell WidgetSoft to my customers. I package it up in a nice box and start calling around. Walmart presents me with terms I just can't agree with (high commission, whatever), so I tell Walmart that I'm not interested. But then I call up Target, Best Buy and Micro Center. They give me deals I can accept. And I also decide to open a few little retail shops of my own to sell WidgetSoft.
Here's the point. In this scenario,
I can still reach any customer I want to. If a customer really wants to use WidgetSoft, even if they are generally a die-hard Walmart shopper, the only barrier for them to get a copy is to choose to buy from another store
just this once. Maybe the customer really isn't a fan of Best Buy in general, but they can go there one time to get my product. In the end, the customer gets the
exact same product they would have gotten had I chosen to sell it at Walmart anyway.
Now here's where mobile platforms differ, especially iOS. Let's say I now make WidgetSoft for iOS. I decide I want to start selling it to iOS users. Naturally, I can only contact one company to do that - Apple. Apple presents me with terms I can't agree with. At that point,
I am shut out of the entire iOS customer base. It doesn't matter if I'd be willing to fund and manage my own distribution channels, advertising, etc.
Apple users simply cannot use my software. This would be the same as "Walmart shoppers simply
cannot use my software."
The fundamental difference that people seem to forget here is the difference in customer barrier. If a customer wants a product that isn't sold at Walmart, they can just go to the other store
for that one product but continue shopping at Walmart for everything else. On the other hand, if a customer wants to use an app that isn't available on iOS (e.g. because Apple and the dev couldn't agree on commissions) then that customer has to 1) get a phone for a competing platform - say, Android, 2) figure out how to transfer all their data - which Apple definitely does not make easy and certainly won't help you do, 3) re-buy any apps you bought on iOS, 4) find alternatives to any apps that don't exist on Android, and 5) deal with issues with friends who can no longer use iOS features like AirDrop, iMessage and FaceTime with you. Even if you say "just get an Android phone in addition to iOS", that has its own set of headaches. Assuming one could afford two phone lines and two phones, again, Apple devices do not make sharing data to other platforms easy. Therefore the motivation to stay on the iOS platform is incredibly strong, and a business who chooses not to deal with Apple has an enormous, possibly insurmountable obstacle to overcome to reach those customers.
With respect to the security, there are ways that could be addressed. Apple could still require code-signing, and retain the ability to disable app stores that continue to release apps with security bugs that are not fixed in a timely fashion. They could take steps to ensure it is
very clear to the user what they're doing when they enable another app store. They could even make an AppStoreKit that third party app stores must adhere to. I could envision some way that third party app stores are given some sort of access to Apple's app validation tools, and apps must still go through those tools somehow (maybe the third party store gets a customized version with an intermediate certificate) to check for things like private API usage etc. I'd even be OK with there being some sort of
flat cost involved with getting all those tools. There's ways it could be done while still maintaining at least the best parts of iOS's security model. Let's not kid ourselves, it's about money and retaining the revenue stream.
If you take nothing from what I said, just try to remember: Comparing app stores to brick-and-mortar stores misses the fundamental difference in customer burden. A Walmart shopper going to Target to buy one item is a much,
much lower barrier than an iOS user having to switch to Android, or deal with the technical skills necessary to manage data across two platforms. It's not the same.