I do think it's a bad thing and I believe the EU regulators agree.
There are whole classes of applications that are not possible unless low level device data is exposed via APIs.
And since Apple doesn't provide the apps, the apps won't exist until Apple creates them.
Maybe some sort of 1 year lead time would be a reasonable trade off ?
Like let Apple first do the move, flesh out the issues and overall viability and then require them to open the api ?