Ответ для Windows (не Mac OS, но вдруг кому пригодиться или вы решите портировать):
1. Создать в реестре ключ HKCR\[uri-schemename] (например, HKCR\myapp)
2. В строковой параметр по-умолчанию записать описание (любое, например URL:My APP)
3. Создать строковой параметр URL Protocol без значения
4. Создать ключ HKCR\[uri-schemename]\DefaultIcon
5. В строковой параметр по-умолчанию записать путь до файла с иконкой, например, C:\Program Files\My APP\MyApp.exe,0 (0 здесь - порядковый номер иконки в файле)
6. Создать ключ HKCR\[uri-schemename]\shell\open\command
7. В строковой параметр по-умолчанию записать команду запуска приложения "C:\Program Files\My APP\MyApp.exe" "%1" (%1 здесь- передаваемые атрибуты командной строки)