Baserk.com教程:直接通过swf文件在线升级客户端flash player版本(含源程序及测试工具)


表现形式

  如下图,具体样例可参见http://www.baserk.com。观看前请确定你目前的Flash Player版本低于8.0.5。

点击“否”后:

点击“是”后:

升级结束,快捷方便。


功能作用

  解决用新版本的Macromedia Flash做出的作品在低版本客户端的现实问题,这里我们特别针对解决目前的Flash 8.0作品的观看问题。

  如果通过直接在网页里面设置版本号的方式(如下图)升级客户端flash player,

  则由于目前很多客户端对ActiveX插件采取“禁止弹出安装”,所以很可能导致客户因为接受了浏览器的禁止建议而无法观看到你swf文件令人满意的效果。而直接通过swf文件在线升级客户端flash player版本则可能能在一定程度上解决这种麻烦。


本教程相关资源下载

  HowToDetectVersionOfPlayerAndUpdateItAutomaticallyKit.rar (1.12M)

  ——源程序文件包 & 本地化相关测试工具 & MM的原Kit


下载文件"SourceFiles"部分说明

  1.HTML代码部分

   切记页面中swf的版本设置为5.0,如下:(返回页末

   因为做好的swf文件可以自动帮助客户端5.0到7.0版本的flash player进行自动升级。

   这里如果设置为8.0,则就完全没有使用本教程的必要了。

  2.Fla文件部分

   包含三个场景,如下:

   “Sacn_1_VersionDetector”是判断当前版本好是否达到目标版本号;

   “Scan_2_Updater”是:当当前版本好未达到目标版本号时,进行自动升级的操作;

   “Scan_3_MainContents”是你flash的正式内容。

  3.AS文件部分

   “Sacn_1_VersionDetector.as”是上面Fla文件的场景1“Sacn_1_VersionDetector”引用的逻辑,功能为对当前版本作判断;

   “Scan_2_Update_Player_playerProductInstall.as”是上面Fla文件的场景2“Scan_2_Updater”引用的逻辑,功能为进行升级并设置升级完成后自动跳转的页面;

   “Scan_2_Update_Player_playerProductInstallCallback.as”也是上面Fla文件的场景2“Scan_2_Updater”引用的逻辑,功能为对升级过程的各个状态作自定义;


下载文件"MM's Kit"部分说明

  Macromedia官方Detect&Update的Kit,方便你参考。

下载文件"PlayerTools"部分说明

  解决本机测试的Flash Player版本控制问题。

   uninstall_flash_player.exe : 卸载本机Flash Player & 插件

   flash_player_7_ax.exe : 安装7.0版本Player & 插件

  这样就可反复来回的在本地察看自动升级的准确的过程效果。


下载文件使用说明

  1.HTML代码部分

   需要注意的地方就只要版本号,上面说过,不再复述。

  2.Fla文件部分和AS文件部分一起说(只考虑可能需要修改或注意的部分):

   打开fla文件:

   Example_4DetectorAndUpdate.fla : Sacn_1_VersionDetector : 1 第一场景第一帧

    此场景所将判断当前操作系统的FlashPlayer版本号是否达到目标版本号。所有操作均在其导入的外部AS文件“Sacn_1_VersionDetector.as”中完成。

   Sacn_1_VersionDetector.as 打开“Sacn_1_VersionDetector.as”

    此AS文件第一行为“Stage.showMenu=false;”,目的是隐藏swf的右键菜单,防止因为客户误点“快进”、“后退”而跳过“场景二”,失去自动升级的机会。通常不建议修改。

    此AS文件第21-27行主要内容如下:
     contentVersion = 8;
     contentMajorRevision = 0;
     contentMinorRevision = 5;
     表示升级所参照的目标版本是8.0.5

     此处中短期内最可能修改的值最多是8.5.0,即:
     contentVersion = 8;
     contentMajorRevision = 5;
     contentMinorRevision = 0;
     通常不建议修改。

    此AS文件中的“gotoAndPlay("Scan_3_MainContents",1);”和“gotoAndPlay("Scan_2_Updater",1);”即分别表示当当前版本为目标版本时就跳到第三场景(开始正常播放内容) / 低于目标版本时跳到第二场景(开始自动升级)。通常不建议修改。

   Example_4DetectorAndUpdate.fla : Scan_2_Updater 第二场景

    此场景即自动升级所在场景。

    此场景根时间轴下没有需要特别说明的地方,请选择第一帧,点击下图中红色方框内的元件:

    此元件不要做任何修改,其引用了2个外部AS文件,如下图红色箭头:

    Scan_2_Update_Player_playerProductInstall.as 打开“Scan_2_Update_Player_playerProductInstall.as”

     此AS中需要修改的地方为第26行 “loaderClip.redirectURL = "http://www.baserk.com"; ”,将“http://www.baserk.com”修改成你需要转向的页面地址。(返回页末

     这个参数本身是在升级完成后使用。升级完成后,当前浏览器将变灰白,同时新弹一个IE浏览器出来,这个新弹出的IE浏览器中地址就是这个参数。

    Scan_2_Update_Player_playerProductInstallCallback.as 打开“Scan_2_Update_Player_playerProductInstallCallback.as”

     设置升级过程中状态改变的相应反馈。没有建议修改的地方,打开此文件,其功能一目了然。


回顾必须修改或注意的地方

  页面中html代码部分对swf版本的控制

  升级结束自动转向新页面的地址设置


本教程写的仓促,不足之处敬请包涵,希望能帮助大家尽快普及Flash Player 8.0。^L^

顶级高档网站建设设计四川成都网络公司 成都网站建设设计制作维护开发 顶级高档全Flash纯Flash网站建设设计制作 顶级网站建设网 www.Baserk.comBaserk.com 2005