如何开发Xcode插件


开发Xcode插件

苹果官方对于插件制作没有提供文档支持,但Xcode是默认开启了加载第三方插件的功能,插件是.xcplugin的文件(是bundle文件形式),存放于~/Library/Application Support/Developer/Shared/Xcode/Plug-ins文件夹中。

创建Xcode插件工程

创建一个插件工程, 就是直接创建bundle工程即可,然后通过修改后缀名为.xcplugin,放到~/Library/Application Support/Developer/Shared/Xcode/Plug-ins目录中即可,这个过程需要修改很多的工程配制,不过在Xcode的插件开发中,  Xcode-Plugin-Template很好的帮忙我们解决了创建Xcode plugin工程的繁琐过程,深受大家的喜欢。

安装 Xcode-Plugin-Template 打开https://github.com/kattrali/Xcode-Plugin-Template,发现竟然无法下载,提示404, 原来Xcode-Plugin-Template已经归入Alcatraz

安装Alcatraz

curl -fsSL https://raw.githubusercontent.com/supermarin/Alcatraz/deploy/Scripts/install.sh | sh

打开Xcode点击菜单Package Manager


搜索XCode Plugin并安装

新建项目
菜单里就会出现Xcode Plugin的选项
填入工程名称

点击完成,查看代码

- (void)didApplicationFinishLaunchingNotification:(NSNotification*)noti
{
    //removeObserver
    [[NSNotificationCenter defaultCenter] removeObserver:self name:NSApplicationDidFinishLaunchingNotification object:nil];
    
    // Create menu items, initialize UI, etc.
    // Sample Menu Item:
    NSMenuItem *menuItem = [[NSApp mainMenu] itemWithTitle:@"Edit"];
    if (menuItem) {
        [[menuItem submenu] addItem:[NSMenuItem separatorItem]];
        NSMenuItem *actionMenuItem = [[NSMenuItem alloc] initWithTitle:@"Do Action" action:@selector(doMenuAction) keyEquivalent:@""];
        //[actionMenuItem setKeyEquivalentModifierMask:NSAlphaShiftKeyMask | NSControlKeyMask];
        [actionMenuItem setTarget:self];
        [[menuItem submenu] addItem:actionMenuItem];
    }}

上面这段代码会在Xcode的Edit菜单下新增一个 Do Action菜单

从Xcode5开始,插件都只能运行在特定版本的Xcode中。这也就意味着当新的Xcode更新安装后,所有的第三方插件都将失效,除非你添加了该版本Xcode的UUID。如果部分模板没有起作用,你也没看到一个新的菜单项,可能的原因之一就是因为没有对应版本的UUID,你需要添加对应该版本Xcode的支持

获取UUID:

defaults read /Applications/Xcode.app/Contents/Info DVTPlugInCompatibilityUUID
设置Info.plist文件的DVTPlugInCompatibilityUUIDs选项 

运行此项目,会启动一个新的xcode实例,并点击 Do Action菜单
 

Xcode的插件工程这里就创建完成!

Crasheye Xcode Plugin工程

Crasheye Xcode Plugin完成一键 Crasheye SDK 的安装、升级。


访问Crasheye官网


打开XCode工程


如果未安装或者有新版本时,会提示是否安装、升级


Crasheye Xcode Plugin的代码托管在了github, 工程地址 里面有关于Xcode IDE主要视图如果访问、获取、修改,如何修改工程配制等相关操作。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值