Probably dumb question, but why is every app registering their own URL scheme? Is that an iOS requirement?
Example: Game app has buttons on a website to play specific levels with some special powerup, so you can link to it just like a website but in the app play the level and bypass the main screen etc.
It is a bit like DNS hosts within the devices but the only problem is it is not standard and there is no listing so it is more like old school file type or port claiming, there may be clashes/name collisions.
This is so that after auth the Facebook app has a URL to fast app switch back to and handle the authentication result.