How to enable FinderSync Extension in macOS System Preferences

前端 未结 3 593
一向
一向 2020-12-09 12:59

I am integrating FinderSync Extension in my Cocoa Application to show badges in files and folders. Look at the below two scenario:

  1. When i run application using
3条回答
  •  抹茶落季
    2020-12-09 13:24

    Non-debug scheme (#if !DEBUG):

    system("pluginkit -e use -i com.domain.my-finder-extension");
    

    When running under debugger give path to your extension directly:

    NSString *pluginPath = [[[NSBundle mainBundle] builtInPlugInsPath] stringByAppendingPathComponent:@"My Finder Extension.appex"];
    NSString *pluginkitString = [NSString stringWithFormat:@"pluginkit -e use -a \"%@\"", pluginPath];
    system([pluginkitString cStringUsingEncoding:NSUTF8StringEncoding]);
    

    Specify this in your applicationDidFinishLaunching method. You should also manually turn this on only once so that if user turned your extension off in the System Preferences you don't turn it on every time your application starts. I set an NSUserDefaults key the first time user launches my app that has the finder sync extension support.

提交回复
热议问题