如何在cocoa / objective-c中注册新模式?

时间:2009-09-21 11:18:21

标签: objective-c cocoa

我正在寻找一个简单的教程(框架?),它将解释我必须要做的基本步骤来注册新模式并使用用objective-c和cocoa编写的应用程序来处理它。

说明:某些应用程序(如Adium)已注册架构。用户的模式是类似“adiumxtra://www.adiumxtras.com/download/6636”的URI。因此,当用户点击它(在Web浏览器中或聊天等)时,Mac OS会理解Adium负责协议“adiumxtra”并将用户的请求指向Adium和Adium处理给定URI上的内容。

我想做类似的事情。我已经检查了Adium的来源,但是“架构”处理是以一种非常棘手的方式实现的...也许有人可以用“一点点”简单的方式向我解释它? : - )

提前致谢!

2 个答案:

答案 0 :(得分:6)

您的意思是URL方案,而不是模式(可以引用XML或同步服务)。

第一步是在应用的Info.plist中添加CFBundleURLTypes条目。

第二步是implement an Apple Event handler to handle the getURL event

答案 1 :(得分:2)

对于iPhone,Craig Hockenberry在源代码中有一个很好的例子,说明如何在帖子here中使用自定义URL方案。