让旧版本的 Flash IDE 支持更新的 Flash Player/AIR 功能
2015-04-03更新: 加入更新 Adobe AIR 的相关内容。
今天在论坛上看到一篇文章:H264VideoStreamSettings无法在cs4里面使用吗?,并做了回复。记录在这里,希望对更多的人有帮助。
H264VideoStreamSettings是Flash Player 11才开始支持的功能,但目前Aodbe发布的最新版的Flash CS5.5,都不支持将Flash Player 11作为目标播放器版本发布。这个问题很容易解决,但涉及到的东西却比较多,我在这里将一一讲解。
首先来个Setp by Step,这里以Flash Player CS5.5为例,但Flash CS4也没有问题(Flash CS3我就不确定了):
第一步 首先下载最新的 playerglobal.swc(基于Flash Player11):
第二步 将其复制到 FlashCS5.5\CommonConfiguration\ActionScript 3.0\FP11.1
,没有这个文件夹请自行建立;
第三步 复制 FlashCS5.5\CommonConfiguration\Players\FlashPlayer10_1.xml
为 `FlashPlayer11_1.xml;
第四步 用 NotePad++/EditPlus/UltraEdit (但不要用windows Notepad,避免换行符问题)之类的软件打开 `FlashPlayer11_1.xml ,修改以下内容:
第3行修改为:
1<player id="FlashPlayer11.1" version="14" asversion="3">
第4行修改为:
1<name>Flash Player 11.1</name>
第8行修改为:
1<playerDefinitionPath as2="$(UserConfig)/Classes/FP10;$(UserConfig)/Classes/FP9;$(UserConfig)/Classes/FP8;$(UserConfig)/Classes/FP7" as3="$(AppConfig)/ActionScript 3.0/FP11_1/playerglobal.swc" />
这是我修改好的,可以直接用:
1<?xml version="1.0" encoding="UTF-8"?>
2<players>
3 <player id="FlashPlayer11.1" version="14" asversion="3">
4 <name>Flash Player 11.1</name>
5 <path builtin="true"/>
6 <path platform="WIN">Device Central/adcdl.exe</path>
7 <path platform="MAC">Device Central/adcdl</path>
8 <playerDefinitionPath as2="$(UserConfig)/Classes/FP10;$(UserConfig)/Classes/FP9;$(UserConfig)/Classes/FP8;$(UserConfig)/Classes/FP7" as3="$(AppConfig)/ActionScript 3.0/FP11_1/playerglobal.swc" />
9 <feature name="multiScreenPublish" supported="true" />
10 <feature name="mobileAuthoringIntegration" supported="true" />
11 <feature name="deviceSound" supported="false"/>
12 <feature name="exportStreamingSound" supported="true"/>
13 <feature name="exportEventSound" supported="true"/>
14 <feature name="FSCommand2" supported="false"/>
15 <feature name="gradient_linearRGB" supported="true" />
16 <feature name="gradient_overflow" supported="true" />
17 <feature name="shape_strokeHint" supported="true" />
18 <feature name="shape_cap" supported="true" />
19 <feature name="shape_join" supported="true" />
20 <feature name="shape_mitre" supported="true" />
21 <feature name="shape_scale" supported="true" />
22 <feature name="linkage_exportForActionscript" supported="true" />
23 <feature name="linkage_exportForRuntimeSharing" supported="true" />
24 <feature name="linkage_exportInFirstFrame" supported="true" />
25 <feature name="linkage_importForRuntimeSharing" supported="true" />
26 <feature name="linkage_importAndAddToCache" supported="false" />
27 <feature name="publish_localPlaybackSecurity" supported="true" />
28 <feature name="publish_hardwareAcceleration" supported="true" />
29 <feature name="symbol_blendMode" supported="true" />
30 <feature name="actionScript_documentClass" supported="true" />
31 <feature name="symbol_blendMode" supported="true" />
32 <feature name="filters" supported="true" />
33 <feature name="component_binding" supported="true" />
34 <feature name="component_schema" supported="true" />
35 <feature name="screens" supported="true" />
36 <feature name="video" supported="true" />
37 <feature name="deviceVideo" supported="false"/>
38 <feature name="accessibility" supported="true" />
39 <feature name="dynamic_text_kerning" supported="true" />
40 <feature name="static_text_charwidth_nondeviceFont" supported="true" />
41 <feature name="static_text_charwidth_deviceFont" supported="true" />
42 <feature name="advanced_anti_alias_text" supported="true" />
43 <feature name="nine_slice_scaling" supported="true" />
44 <feature name="runtimeNumberMinMax" supported="true" />
45 <feature name="use8kSampleRate" supported="true" />
46 <feature name="useDefineFont4ForDeviceText" supported="true" />
47 <feature name="useDefineFont4ForEmbeddedFonts" supported="true" />
48 <feature name="textLayoutFramework" supported="true" />
49 <encodingPresets>
50 <preset uuid="da5cac1a-417a-4d86-b7f7-ef21010a5d7d" name="FLV - Match Source Attributes (High Quality)" ext="flv" default="true"/>
51 </encodingPresets>
52
53 <testmenu>
54 <menu name="ID_testInFlash" default="true"/>
55 <menu name="ID_testInDeviceCentral" />
56 </testmenu>
57
58 <debugmenu>
59 <menu name="ID_debugtInFlash" default="true"/>
60 <menu name="ID_debugInDeviceCentral"/>
61 </debugmenu>
62
63
64 </player>
65</players>
第五步 重新启动Flash CS5.5, 就可以看到新的发布设置生效了,在新建Fla文件的时候选择这个发布设置,就可以支持Flash Player 11.1新增的功能。如下图:
**第六步 为了能够播放和调试新生成的Flash Player 11文件,还需要更新DebugFlashPlayer,在 这里 下载。注意必须下载Debug版本:Windows Flash Player 11.1 Projector content debugger。如果不知道这些版本之间的区别,可以看看我写的这篇文章:有史以来关于Flash Player的最详细说明 。
第七步 下载了上面的文件后,将其复制到 FlashCS5.5\Adobe Flash CS5.5\Players\Debug
,替换原来的FlashPlayerDebugger.exe。
下面是原理讲解(Flash IDE代指Flash CS4/CS5/CS5.5):
在Flash 8时代,编译器和Flash Player是完全同步的。因为那时,只有Flash IDE可以生成swf文件。而Flex问世,以及MacroMedia被Adobe收购以后,Flash的发展就变得多样了,FlashIDE和Flex都可以生成swf文件,Flash Player的发展也更加独立。现在的情况,Flash CS,Flash Builder,Flex SDK,Flash Player的发布已经完全不同步了。尤其是当Adobe将Flex SDK交给Apache发展后,SDK的更新速度估计会更快。Adobe自己又会紧紧将Flash Player攥在手里,保持自己的步调来更新。
Flex SDK/Flash IDE可以和不同版本的Flash Player相配。即使是使用Flex SDK 3.6/Flash CS4,同样也可以开发出Flash Player 11.1支持的swf程序。通过使用不同版本Flash Player提供的playerglobal.swc文件,就可以让旧的Flex SDK/Flash IDE兼容新的Flash Player提供的功能,方法就是修改编译属性中的-swf-version和 -target-player编译属性。当然,也可以让新的Flex SDK兼容旧的Flash Player功能。
以上这段来自我写的这篇文章:Flex编译器参数中-swf-version与-target-player之关系,有修改。
2015-04-03 更新
Flash IDE 整合了 AIR SDK 之后,我们也经常需要将最新的 AIR SDK 更新到 Flash IDE 中。
在 Flash Professional CS6 中,参考这个官方帮助页面即可: Flash Professional Help / Overlay AIR 。
在 Flash CC 中,则已经在 Help 菜单中提供了 Manage Adobe AIR SDK... 命令可供配置。
- 文章ID:1568
- 原文作者:zrong
- 原文链接:https://blog.zengrong.net/post/update-flash-ide-to-support-newer-flash-player/
- 版权声明:本作品采用 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 进行许可,非商业转载请注明出处(原文作者,原文链接),商业转载请联系作者获得授权。