FDT4.0测试版新增的Profiler是我最喜欢的功能之一,通过这一功能可以很方便的排查内存泄漏等问题。最近升级了M4版本后,调试时不能自动弹出播放器窗口的问题解决了。但是Profiler功能却总是没法连接到播放器。经过一番研究,终于发现问题出在Profiler调用的一个ProfilerAgent.swf文件的安全性限制上。在升级的时候,原先的信任路径没有被更新,造成ProfilerAgent没有权限执行。为了避免日后升级出现同样的问题,一劳永逸的方法是直接把eclipse的安装路径添加到信任策略文件上。
附上系统中信任策略文件的地址,关于Flash Player安全性方面的知识可以参看白皮书:
Windows
- For single-user (replace <user> with actual username):
C:\Users\<user>\AppData\Roaming\Macromedia\Flash Player\#Security\FlashPlayerTrust\ - For all users on the machine:
C:\Windows\System32\Macromed\Flash\FlashPlayerTrust\
Mac
- For single-user (replace <user> with actual username):
/Users/<user>/Library/Preferences/Macromedia/Flash Player/#Security/FlashPlayerTrust - For all users on the machine:
/Library/Application Support/Macromedia/FlashPlayerTrust

Happy FDTing!
ps. FDT M4改进了编译器,大大加快了编译速度,建议升级。
方法:
第一步,打开FDT安装目录下的eclipse.ini,新增两行:
-Dfile.encoding=utf-8
-Dsun.jnu.encoding=utf-8
第二步,转到你的flex sdk下的bin目录,用文本编辑器打开jvm.config文件。找到“java.args=”开头的那一行,同样添加两个参数,修改好的结果如下:
java.args=-Xmx384m -Dsun.io.useCanonCaches=false -Dfile.encoding=utf-8 -Dsun.jnu.encoding=utf-8
大功告成!
原理:
Eclipse默认编码为操作系统内核的编码,中文Windows下就是GBK。在调试的时候控制台接收Flash Player传递过来的信息又是以utf-8编码发送的,所以形成了我们看到的乱码。通过以上设置把Eclipse和Flex SDK的Java虚拟机参数指定为utf-8编码,这样大家都统一用相同的编码来传送信息,就不会再有乱码出现了。
update:
升级到M4版本后,乱码问题好像解决了。请用这个版本的朋友不要再用我的这个方法了。
Filed Under:
Develop by Kevin —
Comments Off2010/05/06
很多FDT的初学者都不知道怎么进行设置才能更顺手,其实网上已经有很多教程了。官方也有一个很详尽的教程列表,值得开发者们都去挖掘一下。作为我的工作流培训的一部分,我也整理了一份FDT的设置教程。如果你还在为此而头疼的话,可以下载下来一步一步照着做。


完成以上设置以后,你也能感受到FDT优秀的代码编写环境的魅力了。接下来你还可以学习使用代码模板、整合SVN或GIT、设置你自己的配色方案等等,进一步打造属于你自己的开发环境。Enjoy Coding!
关于乱码问题:
将as保存为utf-8编码是一个好的做法。使用教程里提供的方法能够解决大部分的乱码问题。但不是最完美的,唯一会出现乱码的情况是编译时的报错(注意,运行时的输出是正常的)。好在FDT的代码检查能够帮我们预防大部分能造成编译错误的问题。
如果你需要编译时不产生乱码,那么删除教程中提到到用于设定编码的两行设置。这样你的FDT默认的编码就是你的系统编码(中文一般为GBK)。问题是这么做在运行时的输出会有乱码。怎么取舍就要你自己来决定吧,如果你有完美的方法,请留言告诉我吧:)