If the OS is built from the ground up to support multi tasking e.g. Windows, MacOS then no extra work is required by the devs to support it. The problem with iOS is devs have to jump through extra hoops to support split screen, background refresh, slide over, different resolutions. For a free or $1.99 app that’s hardly worth the effort.
I’d say the biggest difference is that iOS and macOS take very different approaches to process management, and a much stricter approach to entitlements on iOS. But yeah, it is still related to the amount of work devs have to do.
Interestingly, you don’t have to support slide over as a feature, or split screen, or even different resolutions. You just need to support automatic layout and get all three. But the fact that auto layout was introduced later, after many of the major iOS apps came into existence, means that a lot of devs won’t switch over quickly, or will do hacks to avoid going to auto layout.
Or you run into folks that think using automatic layout is for suckers, or have problems with it, or are using something like React Native which prevents you from using it, and then never use it. It’s these folks though that I don’t have much sympathy for, TBH.
Honestly, a new app has no excuse not to support it. It’s not an additional expense when bootstrapping a new codebase. I have a couple apps I wrote in Swift 1 originally that took minutes to update for the iPhone X, iPad Pros, Split Screen, etc. Mostly just testing and finding layout bugs.
That said, I don’t think there’s a lot of user demand here. The feature hasn’t exactly been getting better. I’d say in some ways it’s worse in iOS 13 than in 11. Which is depressing.