Я представляю приложение Mac OSX, добавляя его идентификатор пакета и URL-адрес в com.apple.launchservices.secure.plist.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>LSHandlerPreferredVersions</key>
<dict>
<key>LSHandlerRoleAll</key>
<string>-</string>
</dict>
<key>LSHandlerRoleAll</key>
<string>com.iManage.myurl</string>
<key>LSHandlerURLScheme</key>
<string>myurl</string>
</dict>
</plist>
Пока я не перезагружаю машину, я не вижу схемы URL в lsregister - вывод дампа
/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -dump | grep merl
canonical id: com.imanage.myurl (0x80000008)
URL scheme: myurl
all roles: com.imanage.myurl (0x80000008)
Даже сразу после удаления этих записей из plist тоже не отражается в lsregister, мне нужно перезагрузить.
Я попробовал Kill, семя lsregister, но не повезло. Как обновить эту запись в lsregister без перезагрузки