Cocoa 使用NPAPI接口加载flash.swf
我试图编写一个直接加载SWF文件的程序,我将使用NPAPI来实现该程序 但是,我不知道怎么开始。我的意思是如何在cocoa和NPAPI之间进行沟通?如何构建程序的体系结构 我在谷歌搜索了很多次,没有很多有用的信息 我希望任何人都能帮助我Cocoa 使用NPAPI接口加载flash.swf,cocoa,flash,npapi,Cocoa,Flash,Npapi,我试图编写一个直接加载SWF文件的程序,我将使用NPAPI来实现该程序 但是,我不知道怎么开始。我的意思是如何在cocoa和NPAPI之间进行沟通?如何构建程序的体系结构 我在谷歌搜索了很多次,没有很多有用的信息 我希望任何人都能帮助我 如果您有任何建议,我们将不胜感激。特别是考虑到您目前为止拥有的插件背景,我强烈建议您使用。它至少会帮你完成插件部分。剩下的就看你了,事情不会那么简单 需要知道的一点是,Mac OS X上的不同浏览器使用不同的绘图模型和不同的事件模型。对于事件模型,一般的经验法则
如果您有任何建议,我们将不胜感激。特别是考虑到您目前为止拥有的插件背景,我强烈建议您使用。它至少会帮你完成插件部分。剩下的就看你了,事情不会那么简单 需要知道的一点是,Mac OS X上的不同浏览器使用不同的绘图模型和不同的事件模型。对于事件模型,一般的经验法则是32位浏览器支持Carbon,64位浏览器支持Cocoa,尽管有些32位浏览器支持Cocoa。根据32/64位和浏览器(和版本),您可能需要使用QuickDraw、Cocoa、CoreAnimation或CoreGraphics进行绘制
FireBreath wiki(主网站)上有一个插件。特别是考虑到目前为止您似乎拥有大量的插件背景,我强烈建议您使用。它至少会帮你完成插件部分。剩下的就看你了,事情不会那么简单 需要知道的一点是,Mac OS X上的不同浏览器使用不同的绘图模型和不同的事件模型。对于事件模型,一般的经验法则是32位浏览器支持Carbon,64位浏览器支持Cocoa,尽管有些32位浏览器支持Cocoa。根据32/64位和浏览器(和版本),您可能需要使用QuickDraw、Cocoa、CoreAnimation或CoreGraphics进行绘制
FireBreath wiki(主网站)上有一个链接。构建NPAPI主机并非易事;如果你真的想自己从头开始,那么最好的办法就是查看Gecko、WebKit和/或Chromium的源代码,然后从那里重复使用任何你能重复使用的东西(假设你的应用程序的源代码许可证可以做到这一点) 除此之外,这是最好的资料来源,以及最新变化的清单(因为你提到了Mac,你至少需要阅读和理解Cocoa、核心图形、核心动画和谈判提案)。请记住,NPAPI的许多工作原理实际上是基于其他浏览器的标准,所以仅仅提供文档是不够的
您在评论中提到,您不想使用WebKit是因为“安全问题”-如果您知道WebKit中存在安全问题,为什么不修复它,而不是从头开始构建一个非常复杂的系统?如果您从头开始实现NPAPI主机,那么您所犯的安全错误将比经过多年测试、调试和改进的成熟实现中所犯的安全错误要少,这是非常非常不可能的;如果你真的想自己从头开始,那么最好的办法就是查看Gecko、WebKit和/或Chromium的源代码,然后从那里重复使用任何你能重复使用的东西(假设你的应用程序的源代码许可证可以做到这一点) 除此之外,这是最好的资料来源,以及最新变化的清单(因为你提到了Mac,你至少需要阅读和理解Cocoa、核心图形、核心动画和谈判提案)。请记住,NPAPI的许多工作原理实际上是基于其他浏览器的标准,所以仅仅提供文档是不够的
您在评论中提到,您不想使用WebKit是因为“安全问题”-如果您知道WebKit中存在安全问题,为什么不修复它,而不是从头开始构建一个非常复杂的系统?如果您从头开始实现NPAPI主机,那么与经过多年测试、调试和改进的成熟实现相比,您所犯的安全错误将更少。这是非常非常不可能的。谢谢您的建议!但是,我不打算做一个插件。我想建立一个Mac窗口应用程序只有一个按钮,只要点击按钮,然后应用程序将弹出一个SWF动画。我不会尝试使用WebKit和Flash应用程序来实现我的程序,因为WebKit有安全问题,Flash应用程序需要花费很多钱。因此,我决定使用NPAPI。谢谢你的建议,希望你能给我更多的建议。谢谢,好的,;我会看看FireBreath中的NPAPIHost项目,它是插件主机的核心。正如斯摩根所说,你所做的是非常平凡的。我会考虑改用WebKit;你要做的不是一件简单的事。不过,我给你的链接仍然很有用,因为如果你不知道如何实现自己的链接,你将无法托管其他人的链接。正如smorgan所说,如果您知道存在安全问题,请修复它——或者至少报告它。非常感谢。安全问题涉及跨域问题。我不知道具体细节,因为那个测试程序不是我自己设计的,所以我只知道这么多。谢谢你的建议!但是,我不打算做一个插件。我想建立一个Mac窗口应用程序只有一个按钮,只要点击按钮,然后应用程序将弹出一个SWF动画。我不会尝试使用WebKit和Flash应用程序来实现我的程序,因为WebKit有安全问题,Flash应用程序需要花费很多钱。因此,我决定使用NPAPI。谢谢你的建议,希望你能给我更多的建议。谢谢,好的,;我会看看FireBreath中的NPAPIHost项目,它是插件主机的核心。正如斯摩根所说,你所做的是非常平凡的。我会考虑改用WebKit;你要做的不是一件简单的事。不过,我给你的链接仍然很有用,因为如果你不知道如何实现自己的链接,你就不会去b