Operating systems shouldn't let apps detect screenshots without the user's permission. (And they shouldn't let apps distinguish between not being granted this permission and the user just never taking any screenshots.)
How about certification apps - ones that present questions from a rather small pool. They are incredibly well protected in software, but simple to copy using hardware (or hidden camera)
Better yet: there shouldn't be any capability to detect screenshots.
Do you want the operating system to prevent an app to read/manipulate the pixels of a raster image submitted to it? No, thanks. I would avoid instead any app that forces me into doing something that I don't want to do. Detecting screenshots is just one of the many abusive behaviours that most users accept when they register to those services. The same technology that they abuse enables a lot of useful things. Blame the services, not the tech.
Agreed, I don't see why I need to live with an abusive app and try to restrict is capability to abuse me. Instead, I should vote with my feet and leave.
That's a bad path to go down. Any program should be able to do anything on a device if the owner of the device authorizes it.