This topic has already been discussed in depth and to death.
Please consider that thread was locked because we explained our position, and said “no, this is a problem the operating system needs to solve, not thousands of individual software developers”, and people kept coming in and insisting we do it anyway. Please respect that and keep the conversation here to sharing independent solutions (if there are any such things on something like iOS).