Adobe AIR不包含远程文件!

时间:2011-07-26 00:42:34

标签: air

我使用HTML / JS SDK构建AIR应用程序。

我可以包含脚本和样式表,只要它们与我的网站位于同一文件夹中,但不能包含从Internet获取的远程内容!没有远程脚本,既不是来自jquery也不是来自谷歌...我放<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js">但没有任何反应!每个文件都是如此,不仅仅是这个文件。

你遇到过这个问题吗?在AIR文档中,他们似乎总是向我们提供大型mashup和远程包含,但它对我来说仍然无效!

1 个答案:

答案 0 :(得分:2)

您绝对可以在AIR中执行此操作,但您需要解决安全限制,因为默认情况下您无法从加载的第一帧执行此操作。值得庆幸的是,它并不太难。

您需要在主html页面中创建一个iframe(例如index.html)并将所有内容加载到此页面中。您的主html页面然后充当各种控制器,允许您调用需要增强安全权限(文件系统等)的方法,而加载到iframe中的任何代码都允许加载外部媒体和脚本,并允许使用JavaScript eval和其他方法,否则会在应用程序的主框架中被阻止。

您可以在此处阅读http://help.adobe.com/en_US/AIR/1.5/devappshtml/WS5b3ccc516d4fbf351e63e3d118666ade46-7f08.html#WS5b3ccc516d4fbf351e63e3d118666ade46-7f07

阅读整页,以便您了解这个概念,但在设置iframe时要特别注意sandboxRoot和documentRoot属性。