How else can you distribute mobile software? You have only two marketplaces - Google Play Store and Apple App Store. And developers have to use both to reach the audience, because users are locked to a single store and cannot cross-shop: iPhone users cannot download from the Google Play Store and Android users cannot download from the Apple App Store. There is literally no other way to distribute mobile software. So in a way, they are being forced to do it. Or are you ok with ceding complete control of such a huge part of the US economy to Apple and Google?
Hershey's Chocolate has dozens, if not hundreds, of different competing grocery stores in which they can distribute their chocolate. And their potential customers are not locked to any one store. Customer A does not have to shop at Store A, rather Customer A can choose to go to Store B or Store C; in others words, customers can cross-shop. So if Store A gives Hershey's bad terms, Hershey's does not necessary lose Customer A if they choose to stop selling in Store A.
Also, music streaming is unique because the costs are statutory. Spotify and Apple (and Pandora, Amazon, Tidal, etc.) all pay the copyright owners the same rates that are set by the government. Other than striking exclusive deals, there is no way around this by law. The only material difference between Apple and Spotify in terms of their business models is that Spotify must adhere to various rules set up by the marketplaces, but Apple does not have to abide by any rules on their own marketplace. This includes fees, but also restrictions on advertising and such.