:::: 菜单 ::::
日志标签:flash

AIR文件操作(三):使用FileStream对象读写文件

快速上手例:

例1.读xml

  1. var testXML:XML;
  2. var file:File = File.documentsDirectory.resolvePath("Mousebomb/test.xml");
  3. var fileStream:FileStream = new FileStream();
  4. fileStream.open(file, FileMode.READ);
  5. testXML = XML(fileStream.readUTFBytes(fileStream.bytesAvailable));
  6. fileStream.close();

例中使用readUTFBytes()方法读取内容并转换为XML对象。
[ 阅读全文 ]


AIR文件操作(二):使用文件对象操作文件和目录

文件对象是啥?
文件对象(File对象)是在文件系统中指向文件或目录的指针。由于安全原因,只在AIR中可用。

文件对象能做啥?

  1. 获取特定目录,包括用户目录、用户文档目录、该应用程序启动的目录和程序目录
  2. 拷贝文件和目录
  3. 移动文件和目录
  4. 删除文件和目录(或移至回收站)
  5. 列出某目录中的文件和目录
  6. 创建临时文件和文件夹
  7. 创建目录
  8. 读取文件信息
  9. 获取文件系统信息 [ 阅读全文 ]

不要!AIR网络数据缓存

5.17日,我在饭否AIR客户端中遇到“AIR打开XML后会缓存下来,导致不能及时刷新”的郁闷情况。按照设想,我需要点一下按钮就刷新网络数据的,可是数据被缓存了,AIR优先使用本地数据,不能及时更新,很是郁闷。后来只能使用“非正常手段”——

对付这种由于缓存导致的不能即使刷新,有一招,就是给请求的URL加个参数,比如请求a.xml?user=b;那就每次要刷新时改成请求a.xml?user=b&r=1; 这个r的值每次自增1,这样投机取巧,可以刷新到数据了.

今天在官网上转悠了一下,发现AIR应用中的URLRequest有俩属性能管事(哎呀,总算来个给草民作主的了~),它们是: [ 阅读全文 ]


AIR文件操作(一):AIR文件基础

AIR允许我们开发与文件系统协同工作的应用程序
我们可以使用Adobe® AIR™ 文件系统API提供的类访问主机的文件系统。使用这些类,可以访问、管理目录与文件,建立目录与文件,向文件写数据等等。我把与文件系统协同工作的内容总结为AIR文件操作三部分:

相关类的语言参考

[ 阅读全文 ]


AIR的URL方案

今天FLEX群里有个兄弟提起AIR缓存清除,我又去官方文档转悠了圈,顺便看到AIR的URL方案,有两个没用过的app:app-storage:
详细情况:

下面的标准URL方案是可以在AIR的任何安全沙箱中都支持的:
http:https: 这两个当然就是网页URL
file: 这个当然就是本地文件URL

下面的方案用于运行在应用程序安全沙箱的内容:
app:
使用这个可以指定相对于应用程序安装目录(也就是应用程序源目录)的顶级(就是包含应用描述文件的目录)的路径。比如下面这个就是指向应用程序顶级目录下的resources子目录:
app:/resources [ 阅读全文 ]


AIR管理文件关联

对于文件关联管理,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应用描述文件是设置AIR应用各项基本属性的一个XML文件.在使用FLEX开发时,它位于”项目文件夹/src/主文件名-app.xml”;在使用Flash CS3 开发时也会在创建AIR项目时自动生成,可以通过菜单Commands > AIR – Application and Installer Settings来可视化编辑,也可以手动编辑该XML文档.

应用描述文件包含AIR应用的各项属性,影响整个AIR应用,如它的名称,版本,版权,等等。理论上,应用描述文件可使用任意文件名。当我们使用Flash cs3创建一个空文件,并使用默认设置,应用描述文件会自动更名为application.xml并放进AIR项目的一个特殊目录中。
[ 阅读全文 ]



AIR的Http basic验证

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客户端,所以也没关心这事.今天去官网查了个究竟.取而代之的方法: [ 阅读全文 ]


Flash文件格式说明

SWF文件头
字段
类型
备注
标识
8位
标识字节:
F代表未压缩
C代表已压缩(SWF6以后的版本特有)
标识
8位
代表W
标识
8位
代表S
版本号
8位
代表SWF文件的版本,比如0x06代表SWF6
文件长度
32位
整个文件的所占的字节数
帧大小
RECT结构
SWF场景的大小,单位为1twip(1/20像素)
帧速度
16位
帧数
16位
影片总的帧数目
1. 文件头以三个标识符开始,他们不是0x46, 0x57, 0x53 (“FWS”)就是0x46,0x57, 0x43 (“CWS”).一个FWS标识表示该文件是未压缩文件.CWS标识表示整个文件,在前八个字节,也就是文件长度字段之后所有的内容,都是开放标准 ZLIB压缩过的.用ZLIB库的数据格式,在Request for Comments (RFCs) 1950到1952文档中有所描述.CWS仅在SWF6以后才允许使用.
2. 标识符之后的一个字节是版本号.这个版本号不是一个ASCII字符,而是一个8位的数字.例如,SWF4文件的版本号是0x04,不是ASCII字符”4”(0x35).

[ 阅读全文 ]


页面:123456789