全屏交互模式安全性

Flash Player 11.3 和更高版本,Adobe AIR 1.0 和更高版本

Flash Player 11.3 和更高版本支持全屏交互模式,在该模式中,Flash Player 中运行的内容可以填满整个屏幕并接受文本输入。若要进入全屏交互模式,需要将 Stage 的 displayState 属性设置为 StageDisplayState.FULL_SCREEN_INTERACTIVE 常量。有关详细信息,请参阅使用全屏模式

对于在远程沙箱中运行的 SWF 文件,存在一些安全注意事项。

若要启用全屏模式,请在包含 SWF 文件引用的 HTML 页中的 <object><embed> 标签中添加 allowFullScreenInteractive 参数,并将其值设置为 "true"(默认值为 "false"),如下例所示:

<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" 
    codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,18,0"  
    width="600" height="400" id="test" align="middle"> 
<param name="allowFullScreenInteractive" value="true" /> 
<param name="movie" value="test.swf" /> 
<param name="bgcolor" value="#333333" /> 
<embed src="test.swf" allowFullScreen="true" bgcolor="#333333"  
    width="600" height="400" 
    name="test" align="middle" type="application/x-shockwave-flash"  
    pluginspage="http://www.macromedia.com/go/getflashplayer" /> 
</object>

HTML 页也可以使用脚本生成 SWF 嵌入标签。您必须更改该脚本,以便它能够插入适当的 allowFullScreenInteractive 设置。Flash Professional 和 Flash Builder 生成的 HTML 页使用 AC_FL_RunContent() 函数嵌入对 SWF 文件的引用,并且您需要添加 allowFullScreenInteractive 参数设置,如下所示:

AC_FL_RunContent( ... "allowFullScreenInteractive", "true", ...)

仅当在响应鼠标事件或键盘事件时,才能调用启动全屏交互模式的 ActionScript。如果在其他情况中调用,Flash Player 会引发异常。

当内容进入全屏交互模式时,会出现叠加消息。此消息显示全屏页面的域、有关如何退出全屏模式的说明以及“允许”按钮。叠加持续到用户单击“允许”时,确认他们处于全屏交互模式。

管理员可以通过在 mms.cfg 文件中设置 FullScreenInteractiveDisable = 1 对浏览器中运行的 SWF 文件禁用全屏交互模式。有关详细信息,请参阅管理员控制

在浏览器中,SWF 文件必须包含在 HTML 页中才能进入全屏交互模式。