部分解决。
我发现播放器没有内联播放而是重定向到外部页面(全屏模式)的原因是 player.swf 托管在 http 域上。
Facebook 仅播放内联托管的 https 视频并重定向其他人。
首先,我使用谷歌网站在 https 域上加载了我的 swf 播放器,创建了一个公共目录并使用旧的 fb api 在 facebook 上发布 -->
FB.ui({
方法:'stream.publish',
显示:'弹出',
消息:“Facebook 连接”,
attachment:
{
name : 'Test ore 10:24',
caption : 'The Facebook Connect JavaScript SDK',
description : ('desc'),
'media' :
[
{
"type" : "flash",
"swfsrc" : "https://sites.google.com /site/myRootDirectory /Home/player.swf?videoFile=" + escape("rtmp://myStream"),
"imgsrc" : "http://fbrell.com/f8.jpg",
"width" : "80",
"height" : "60",
"expanded_width" : "360",
"expanded_height": "250"
}
]
}
})
结果是视频显示了一个内嵌控件的播放器,但缓冲在 80% 处停止。
在第二次尝试中,我在 google 网站上加载了一个 mp4 视频,引用了 swfsrc。
Facebook 内联创建了一个不可见的对象。
我也关注这个帖子-->
Cannot play embedded videos on facebook wall unless SSL is disabled
没有成功。
附:在这两种情况下,在浏览器中打开 swfsrc 视频都会正常播放。