Web apps are not a real alternative. Firstly, an app you can only use on a desktop is a non starter for almost every use case. So you need a mobile layout. Now, some features like background audio and video are not available as a web app. Some are less reliable like user sessions, timers, push notifications and offline behaviour. Technical innovation is not possible due to the standards based approach - for video calls you have to use WebRTC for example, for games you have to use WebGL. Some features like notifications, vibration, were delayed by Apple until users were trained to only accept native apps. There's others like battery status, Apple Watch, Settings pane that I don't know the exact status, but I'm sure App Store gets an advantage there too.