如何开发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主要视图如果访问、获取、修改,如何修改工程配制等相关操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值