我有一款游戏可以在Flash Player 11(使用Molehill)中更好地工作,但也适用于10.3。我想让玩家尽可能快地自动更新到11(当然是在发布之后),但不想强迫它们。
我试着用SWFObject嵌入它:
swfobject.embedSWF(
// url
"game.swf?version=1",
// content to replace
"flashContent",
// size
"910", "658",
// flash version
"11",
// expressInstall
"playerProductInstall.swf",
// flashvars
{},
// params
{
wmode: "transparent",
allowScriptAccess: "always"
},
// object attributes
{},
// callback
function(e) {
if (e.success) {
console.log("SWF loaded", e);
gameSwf = e.ref;
} else {
console.log("SWF not loaded", e);
}
}
);
然而,这将使游戏需要 11,这意味着如果快速安装不起作用(Linux)或被用户取消,游戏就不会加载,即使它会运行得很好。
还有其他方法可以做我想要的吗?
答案 0 :(得分:0)
制作所需的版本10.3 然后编写javascript以检测版本是否为11.如果不是,请显示更新链接。
最好还是要求fp11,它不会造成伤害
答案 1 :(得分:0)
与Pravnav的答案类似,我会使用10.3嵌入游戏,然后在电影上方放置一个小横幅,表示他们的Flash Player版本已过期,游戏在FP 11+中表现最佳。使横幅可单击并使用swfobject的swfobject.showExpressInstall
方法触发快速安装。
棘手的部分是快速安装支持:正如你所说,EI在Linux中不起作用,但它在谷歌浏览器中也不起作用,因为Chrome使用嵌入式自我更新版本的FP。编写一些嗅探JS可能会很有用,它为这些浏览器提供了一个指向Adobe.com的链接,而不是使用快速安装。