Я уже некоторое время пытаюсь проанализировать информацию, и у меня возникают проблемы с определением того, что все еще актуально.Также кажется, что по какой-то причине информации по этому вопросу меньше, чем должно быть.
Я работаю над приложением, которое распространяется для macOS.Я хотел бы связать пользовательское расширение файла с моим приложением.Я хотел бы, чтобы пользователь мог дважды щелкнуть один из файлов и открыть его приложению.Мне достаточно легко выбрать приложение для открытия файлов, но я не могу понять, как получить имя файла для открытого файла.
Единственное, что я до сих пор нашел, - это создание приложения из AppleScript.Затем AppleScript может анализировать аргументы и вызывать основное приложение с ними.У меня есть две проблемы с этим подходом.
Во-первых, что произойдет, если пользователь изменит его и выберет приложение напрямую?Я предполагал, что это просто не будет работать?Есть ли способ обойти это?
Во-вторых, как мне связать приложение автоматически в первую очередь?Я нашел информацию о CFBundleTypeExtensions, но потом обнаружил, что она устарела.Я нашел некоторую информацию о UTI и Launch Services.Имеет смысл добавить UTI в файл plist и запустить команду lsregister.Как бы вы сделали это автоматически, хотя?Пользователь устанавливает приложение с помощью dmg. В какой момент я могу запустить команду lsregister?