Flex中用httpService读取不同域的XML(如http://xml.weather.yahoo.com/forecastrss),会发生Security error accessing url错误. 不过在调试文件夹(默认bin-debug)下却可以正常读取. 这个情况很讨厌.相信不少人被这个安全问题困扰。
为什么仅在调试文件夹下可以呢? 原来,bin-debug文件夹下能用仅仅是因为[系统盘]:Documents and Settings[用户名]Application DataMacromediaFlash Player#SecurityFlashPlayerTrustflexbuilder.cfg里面自动设置了可信,实际运行时是安全禁止的。也就是说我们需要做的就是解决安全禁止的问题。
那么,如何解决呢? [ 阅读全文 ]
对于文件关联管理,air中的flash.desktop.NativeApplication类提供了4个方法:
isSetAsDefaultApplication(extension:String):Boolean
返回当前AIR应用程序是否是指定文件格式的默认打开方式
参数extension是文件扩展名字符串,不用写”.”,比如”flv”,下面3条的extension一样
setAsDefaultApplication(extension:String):void
使当前应用程序与某种文件格式关联
removeAsDefaultApplication(extension:String):void
移除某个AIR应用程序与文件之间的关联
getDefaultApplication(extension:String):String
报告某个文件所关联的应用程序路径
返回应用程序路径的字符串 [ 阅读全文 ]
Air应用描述文件是设置AIR应用各项基本属性的一个XML文件.在使用FLEX开发时,它位于”项目文件夹/src/主文件名-app.xml”;在使用Flash CS3 开发时也会在创建AIR项目时自动生成,可以通过菜单Commands > AIR – Application and Installer Settings来可视化编辑,也可以手动编辑该XML文档.
应用描述文件包含AIR应用的各项属性,影响整个AIR应用,如它的名称,版本,版权,等等。理论上,应用描述文件可使用任意文件名。当我们使用Flash cs3创建一个空文件,并使用默认设置,应用描述文件会自动更名为application.xml并放进AIR项目的一个特殊目录中。
[ 阅读全文 ]
在线安装地址 | 点击下载饭否AIR客户端1.6 | 最新AIR环境下载 | 参考源代码下载
6.26更新
支持最小化到系统托盘:点击最小化按钮不再占据任务栏,而是最小化到系统托盘.
感谢支持.
下载地址:点击下载饭否AIR客户端1.7 | 最新AIR环境下载
[ 阅读全文 ]
flex3或者FLASHcs3开发AIR中如何与需要Http basic验证的web通信?比如
饭否http://fanfou.com/home
用户名中有@符号,如果直接访问
http://“+loginName+”:”+loginPass+”@api.fanfou.com/statuses/update.xml的话会ioErr的.曾经在蓝色理想提问过,等到现在都没回复,网络上也搜索过,大多都是讲如何配置服务器端验证,而不是讲客户端如何登陆……有人提问C#和JAVA的登陆方法, 但是都没有回复,唯一可用的信息是VBs和Js里的方法,ajax实现起来很容易,xml的open方法的参数里就有user和pwd信息。
去年在flex代码里一条一条扫描,发现urlRequest里有个setLoginCredentials方法,加上urlR.setLoginCredentials(loginName,loginPass);这行就可以发送用户验证信息了
现在新版的AIR发布后,这个方法又废弃了.由于我一直没时间去修改我去年的饭否AIR客户端,所以也没关心这事.今天去官网查了个究竟.取而代之的方法: [ 阅读全文 ]
SWF文件头
|
字段
|
类型
|
备注
|
|
标识
|
8位
|
标识字节:
F代表未压缩
C代表已压缩(SWF6以后的版本特有)
|
|
标识
|
8位
|
代表W
|
|
标识
|
8位
|
代表S
|
|
版本号
|
8位
|
代表SWF文件的版本,比如0×06代表SWF6
|
|
文件长度
|
32位
|
整个文件的所占的字节数
|
|
帧大小
|
RECT结构
|
SWF场景的大小,单位为1twip(1/20像素)
|
|
帧速度
|
16位
|
|
|
帧数
|
16位
|
影片总的帧数目
|
1. 文件头以三个标识符开始,他们不是0×46, 0×57, 0×53 (“FWS”)就是0×46,0×57, 0×43 (“CWS”).一个FWS标识表示该文件是未压缩文件.CWS标识表示整个文件,在前八个字节,也就是文件长度字段之后所有的内容,都是开放标准 ZLIB压缩过的.用ZLIB库的数据格式,在Request for Comments (RFCs) 1950到1952文档中有所描述.CWS仅在SWF6以后才允许使用.
2. 在标识符之后的一个字节是版本号.这个版本号不是一个ASCII字符,而是一个8位的数字.例如,SWF4文件的版本号是0×04,不是ASCII字符”4”(0×35).
[ 阅读全文 ]
今天遇到的一个问题:
一个swf文件,要在主文件中来载入这个swf,但是却始终遇到如下问题:
当执行loadSwf(“xxxx.swf”)后报错TypeError: Error #1009: 无法访问空对象引用的属性或方法。
载入代码如下:
- private function loadMainSwf(url):void {
- var urlR:URLRequest=new URLRequest(url);
- containtLoader.unload();
- containtLoader.load(urlR);
- containtLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS,loadHandler);
- containtLoader.contentLoaderInfo.addEventListener(Event.COMPLETE,loadCompHandler);
- }
- private function loadHandler(e:ProgressEvent):void {
- gLoad=e.target.bytesLoaded;
- gAll=e.target.bytesTotal;
- per=Math.floor(gLoad / gAll * 100);
- percent=per + "%";
- perString.text=percent;
- }
- private function loadCompHandler(e:Event):void {
- containtLoader.contentLoaderInfo.removeEventListener(ProgressEvent.PROGRESS,loadHandler);
- containtLoader.contentLoaderInfo.removeEventListener(Event.COMPLETE,loadCompHandler);
- addChild(containtLoader);
- }
[ 阅读全文 ]
前天遇到这个错:
Error: Error #2037: 函数调用序列不正确,或前面的调用不成功。
at flash.media::Sound/_load()
at flash.media::Sound/load()
at org.mousebomb.media.musicPlayerV4::Mp3Container/loadMp3()
at org.mousebomb.media.musicPlayerV4::Mp3Container/nextMp3()
at org.mousebomb.media.musicPlayerV4::MusicPlayer/aC()
经过调查,这个错误的原因是:Sound对象只允许被load一个声音流,即使close()了也不能加载另一个声音.
一旦对某个 Sound 对象调用了 load(),就不能再将另一个声音文件加载到该 Sound 对象中。 若要加载另一个声音文件,请创建新的 Sound 对象。
今天做组卷系统时,发现FLASH挡住浮动层,无论如何都显示在最顶,无法与层共存
遂搜索之,终获解决良方:
让Flash不档住浮动对象或层的关键参数:wmode=opaque
方法:
针对IE 在<object></object>内加上参数<param name=”wmode” value=”opaque” />
针对FF 在<embed />内加上参数wmode=”opaque”
[ 阅读全文 ]