Javascript 在HTML Adobe AIR应用程序中加载Facebook ActionScript库

Javascript 在HTML Adobe AIR应用程序中加载Facebook ActionScript库,javascript,facebook,actionscript,air,Javascript,Facebook,Actionscript,Air,我正在使用纯HTML编写一个AdobeAIR应用程序,需要将照片上传到Facebook。我不认为Facebook的JavaScript/Connect库包含照片上传功能,但他们的ActionScript库包含照片上传功能。但是,我在将ActionScript库加载到HTML页面时遇到问题 Adobe的文档描述了这一点,我尝试使用可用的编译Flash库(特别是Facebook_library_和_AIRConnect_v3.4_Flash.swc)。所以我的页面看起来像: <html>

我正在使用纯HTML编写一个AdobeAIR应用程序,需要将照片上传到Facebook。我不认为Facebook的JavaScript/Connect库包含照片上传功能,但他们的ActionScript库包含照片上传功能。但是,我在将ActionScript库加载到HTML页面时遇到问题

Adobe的文档描述了这一点,我尝试使用可用的编译Flash库(特别是Facebook_library_和_AIRConnect_v3.4_Flash.swc)。所以我的页面看起来像:

<html> 
<head> 
    <title>Hello World</title>
    <script src="Facebook_library_with_AIRConnect_v3.4_flash.swc" type="application/x-shockwave-flash"></script>
    <script type="text/javascript"> 
        // code here...
    </script>
</head> 
<body>
    <div>content here...</div>
</body> 
</html>
我不确定这里出了什么问题,但我有几个想法:

  • 我使用的编译库文件是否错误(我是否需要.swf而不是.swc)
  • 如果是这样,我是否需要以某种方式从ActionScript源代码创建自己的编译库
  • 我使用的名称空间是否不正确?(除了com.facebook.facebook(),我还尝试了.facebook()、.fb.facebook()、.facebook.facebook()等)
  • 我应该放弃学习Flex吗

如有任何帮助/见解,将不胜感激

嗯,经过一番思考后,我终于找到了答案

结果我确实需要加载一个.swf文件。.swc是一种容器格式,因此,如果将.swc扩展名更改为.zip并将其解压缩,则会得到一个.swf文件(以及其他几个文件)。我包含了.swf文件而不是.swc文件,现在似乎一切正常:

var fb = new window.runtime.com.facebook.Facebook();
// it works!

嗯,经过一番思考,我终于找到了答案

结果我确实需要加载一个.swf文件。.swc是一种容器格式,因此,如果将.swc扩展名更改为.zip并将其解压缩,则会得到一个.swf文件(以及其他几个文件)。我包含了.swf文件而不是.swc文件,现在似乎一切正常:

var fb = new window.runtime.com.facebook.Facebook();
// it works!