У меня были некоторые проблемы с тем, чтобы это работало и в моем приложении. При отладке попытайтесь вызвать NSUpdateDynamicServices()
при запуске приложения и убедитесь, что вы регистрируете поставщика услуг. Проблема может заключаться в том, что ваш сервис вообще не регистрируется. Вы можете использовать терминал, чтобы увидеть, какие услуги зарегистрированы с /System/Library/CoreServices/pbs -dump_pboard
Пример сервиса:
<key>NSServices</key>
<array>
<dict>
<key>NSMenuItem</key>
<dict>
<key>default</key>
<string>Open with app</string>
</dict>
<key>NSMessage</key>
<string>processService</string>
<key>NSPortName</key>
<string>MyApp</string>
<key>NSRequiredContext</key>
<array>
</array>
<key>NSSendTypes</key>
<array>
<string>NSStringPboardType</string>
<string>NSRTFPBoardType</string>
<string>NSURLPBoardType</string>
</array>
</dict>
</array>