是否可以对AIR应用程序进行编程以处理URL协议?

时间:2010-03-16 21:45:30

标签: actionscript-3 url air protocols handler

我正在编写Adobe AIR中的浏览器(ActionScript,而不是AJAX)。实现的一大部分功能是协议处理。例如,iTunes处理itms协议;当你的朋友给你发送一个以“itms://”开头的链接时,只要安装了它就会启动iTunes。有没有办法编写一个AIR应用程序(要求AIR 2没问题),这样可以成为协议的“处理程序”吗?

4 个答案:

答案 0 :(得分:0)

是。您可以使用URLLoader类以二进制形式(URLLoader.BINARY)下载数据,然后根据需要对其进行解析。请参阅working with external data上的此CS3文档。

答案 1 :(得分:0)

http://www.patrick-heinzelmann.de/labs/lastfm/

我不确定它是如何工作的,我没有看到下载应用程序的方法,所以我甚至无法测试它,但也许它会有所帮助......

答案 2 :(得分:0)

结帐this page。我试图找出同样的事情,但我还没有找到任何解决方案,只用空气做。好像您可能需要自定义安装程序来设置正确的注册表项,以及代理应用程序将输入“清洗”为正确的格式,然后可以使用正确的命令行参数启动应用程序。希望这可以提供任何帮助。

答案 3 :(得分:0)

以编程方式说,具体处理特定协议是没有办法的。但是,有InvokeEvent。当应用程序被"调用"时,或者当它被明确启动或者相关文件或URL被激活时,将触发InvokeEvent。

将您的应用与特定文件类型或协议方案相关联的过程是独立的,取决于应用程序。例如,在iOS中,您需要在CFBundleURLTypes / CFBundleURLSchemes下的Info.plist中指定协议。