存档

2009年2月 的存档

Air窗口内存释放

2009年2月26日 评论已被关闭

最近在进行项目的时候,发现新开一个窗口内存占用往上飙,但在关闭这个窗口后,内存却不往下降。
为了解决这个问题,郁闷了几天。最后在打开xp的任务管理器监视的时候,把应用程序的主窗口最小化了,一看,内存占用突然的降了几十兆,心喜啊。。。

如果你实在找不到其它办法,可以试下这个。

分类: AIR 标签: , ,

更改errorToolTip的样式的方法

2009年2月26日 评论已被关闭

更改errorToolTip的样式的方法

.errorTip{
    fontSize: 12;
    borderColor: #CE2929;//底板颜色
    borderStyle:"errorTipRight";//底板默认样式 标签在箭头的右边
    color: #FFFFFF;//字体颜色
    fontWeight: "bold";//字体粗细
    shadowColor: #000000;//阴影颜色
    ……………..

}

分类: Flex 标签: , ,

Adobe AIR 开发人员的发行说明

2009年2月26日 评论已被关闭

欢迎阅读 AIR 1.5.1 的发行说明。本文档包含系统要求、安装说明、已知问题以及有关使用 AIR 1.5.1 运行时的其它信息。

查看http://www.adobe.com/support/documentation/cn/air/1_5_1/releasenotes_developers.html

分类: AIR 标签:

Adobe AIR 1.5.1

2009年2月26日 评论已被关闭

已知问题和限制

AIR 支持网站 http://www.adobe.com/support/air/* 提供了 AIR 问题知识库和其它有用的 AIR 文档。

Mac 和 Windows


当语言是 Español Latinoamérica 时, AIR 应用程序可能无法正常工作
在 Mac OS 上, 如果“系统设置”>“国际”>“语言”中的语言列表包含 Español Latinoamérica (拉美西班牙语), AIR 应用程序可能无法正常工作。请从语言列表中删除此项, 并用 Español (西班牙语)代替。

没有 Adobe Reader 就无法显示 PDF 内容
若要在 AIR 中显示 PDF 内容, 请确保安装 Adobe Reader 8.1 或更高版本。Adobe Reader 可从以下网址下载: http://get.adobe.com/reader。

HTML 中的 SWF: 在无窗口模式下, Ctrl+V 不能执行粘贴
在 Windows 中, 当应用程序使用 HTMLLoader 加载的无窗口模式 SWF 时, Ctrl-V 在文本字段中不能执行粘贴。

SQL 数据库和 Mac OS 10.5 Time Machine 功能
在执行某些 SQL 数据库事务时, 若运行 Mac OS 10.5 Time Machine, 可能会导致数据库中出现不一致。因此, 此问题可能会影响使用 SQLite 数据库的 AIR 应用程序。为确保 AIR 应用程序能够继续正常运行, 请务必从 Time Machine 的自动备份功能中排除 SQLite 数据库。

AIR 应用程序和 MobyDock
MobyDock 是面向 Windows 免费提供的可自定义任务栏应用程序, 它能阻止 AIR 应用程序运行。在安装和运行 AIR 应用程序时, 请关闭 MobyDock。

中国国家标准 GB 18030-2000 的少数民族文字支持
少数民族文字字符 (如藏文)在 AIR 应用程序中可能无法正确显示。

对于 HTML 内 SWF 内容中的密码字段, 没有禁用输入法编辑器
在 AIR 应用程序中, 单击 HTML 页面中嵌入式 Flash 内容内的密码字段时, 不会禁用输入法编辑器。这可能会导致在密码字段中输入非罗马字符。为解决此问题, 请明确更改输入法设置, 以便只能键入罗马字符。

Tablet PC 上的虚拟键盘
Tablet PC 上使用的虚拟键盘功能对 AIR 应用程序中的某些内容可能无效。Tablet PC 的虚拟键盘功能对 Flash 和 HTML 内容有效, 但对 HTML 中嵌入的 Flash 内容无效。

嵌入的 Flash 内容出现显示问题
对于 AIR 应用程序加载的 HTML 页面中嵌入式 Flash 内容, 或者基于 HTML 的应用程序内使用的 Flash 内容, 若这些应用程序使用透明功能, 这些内容将不显示。

Linux
运行时安装
在有些发行版中, 文件名中的 .bin 会有问题。从安装程序文件名删除 .bin, 再运行安装程序即可。
对于基于 Debian 的系统 (如 Ubuntu), 安装时应有 gnomesu/kdesu/kdesudo 进行安装。否则, 安装 xdg-su, 启用 root 用户。
应用程序安装
使用命令行安装 AIR 应用程序时, 必须使用 AIR 文件的绝对路径。
安装进度栏逐渐接近完成, 然后自己又重置。
可能显示 AIR 安装程序的多个条目 (例如, 还要添加至 Ubuntu 中的“其它”菜单)。
文件类型注册
在某些 KDE 发行版中, 不会显示某些未知扩展 (例如 abc、def 等) 的应用程序图标。

Windows 和菜单
透明度对虚拟软件 (如 VMWare) 不起作用。
透明窗口不允许鼠标事件通过。
Flash-AIR 通信
浏览器中 AIR 应用程序和 SWF 之间的通信要求使用 Flash Player 10。

加密的本地存储
当使用 SSH 导出会话或将会话更改为使用 su 的其他用户时, 则无法访问本地存储数据。
ELS 绑定到首次创建 ELS 数据库时的桌面环境。在 GNOME 中无法访问 KDE 中创建的 ELS 存储, 反之亦然。
加密的本地存储使用 Keyring (GNOME) 或 KWallet (KDE)。系统可能提示要输入访问 ELS 数据的密码。
在 KWallet 密码对话框中, 应用程序名称显示为“匿名”。
PDF
要查看 AIR 应用程序中的 PDF 内容, 应安装 Adobe Reader for Linux 8.1.1 或更高版本。

 

以上文字来至:http://www.adobe.com/support/documentation/cn/air/1_5_1/releasenotes_users.html

分类: AIR 标签:

Adobe Air中文官方资源

2009年2月26日 评论已被关闭
分类: AIR 标签:

AS3常用正则表达式

2009年2月25日 评论已被关闭

常用正则表达式
正则表达式用于字符串处理、表单验证等场合,实用高效。现将一些常用的表达式收集于此,以备不时之需。
匹配中文字符的正则表达式: [\u4e00-\u9fa5]
评注:匹配中文还真是个头疼的事,有了这个表达式就好办了
匹配双字节字符(包括汉字在内):[^\x00-\xff]
评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)
匹配空白行的正则表达式:\n\s*\r
评注:可以用来删除空白行
匹配HTML标记的正则表达式:<(\S*?)[^>]*>.*?</\1>|<.*? />
评注:网上流传的版本太糟糕,上面这个也仅仅能匹配部分,对于复杂的嵌套标记依旧无能为力
匹配首尾空白字符的正则表达式:^\s*|\s*$
评注:可以用来删除行首行尾的空白字符(包括空格、制表符、换页符等等),非常有用的表达式
匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
评注:表单验证时很实用
匹配网址URL的正则表达式:[a-zA-z]+://[^\s]*
评注:网上流传的版本功能很有限,上面这个基本可以满足需求
匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$
评注:表单验证时很实用
匹配国内电话号码:\d{3}-\d{8}|\d{4}-\d{7}
评注:匹配形式如 0511-4405222 或 021-87888822
匹配腾讯QQ号:[1-9][0-9]{4,}
评注:腾讯QQ号从10000开始
匹配中国邮政编码:[1-9]\d{5}(?!\d)
评注:中国邮政编码为6位数字
匹配身份证:\d{15}|\d{18}
评注:中国的身份证为15位或18位
匹配ip地址:\d+\.\d+\.\d+\.\d+
评注:提取ip地址时有用
匹配特定数字:
^[1-9]\d*$    //匹配正整数
^-[1-9]\d*$   //匹配负整数
^-?[1-9]\d*$  //匹配整数
^[1-9]\d*|0$  //匹配非负整数(正整数 + 0)
^-[1-9]\d*|0$  //匹配非正整数(负整数 + 0)
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$  //匹配正浮点数
^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$  //匹配负浮点数
^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$  //匹配浮点数
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$  //匹配非负浮点数(正浮点数 + 0)
^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$ //匹配非正浮点数(负浮点数 + 0)
评注:处理大量数据时有用,具体应用时注意修正
匹配特定字符串:
^[A-Za-z]+$ //匹配由26个英文字母组成的字符串
^[A-Z]+$ //匹配由26个英文字母的大写组成的字符串
^[a-z]+$ //匹配由26个英文字母的小写组成的字符串
^[A-Za-z0-9]+$ //匹配由数字和26个英文字母组成的字符串
^\w+$ //匹配由数字、26个英文字母或者下划线组成的字符串
评注:最基本也是最常用的一些表达式

分类: 生活杂谈 标签:

TweenLite/Max Plugin Explorer

2009年2月25日 评论已被关闭

http://www.greensock.com/as/swf/PluginExplorer.swf

分类: 生活杂谈 标签:

(转)FLEX内存释放优化原则

2009年2月23日 评论已被关闭

FLEX内存释放优化原则:

1. 被删除对象在外部的所有引用一定要被删除干净才能被系统当成垃圾回收处理掉;
2. 父对象内部的子对象被外部其他对象引用了,会导致此子对象不会被删除,子对象不会被删除又会导致了父对象不会被删除;
3. 如果一个对象中引用了外部对象,当自己被删除或者不需要使用此引用对象时,一定要记得把此对象的引用设置为null;
4. 本对象删除不了的原因不一定是自己被引用了,也有可能是自己的孩子被外部引用了,孩子删不掉导致父亲也删不掉;
5. 除了引用需要删除外,系统组件或者全局工具、管理类如果提供了卸载方法的就一定要调用删除内部对象,否则有可能会造成内存泄露和性能损失;
6. 父对象立刻被删除了不代表子对象就会被删除或立刻被删除,可能会在后期被系统自动删除或第二次移除操作时被删除;
7. 如果父对象remove了子对象后没有清除对子对象的引用,子对象一样是不能被删除的,父对象也不能被删除;
8. 注册的事件如果没有被移除不影响自定义的强行回收机制,但有可能会影响正常的回收机制,所以最好是做到注册的事件监听器都要记得移除干净。
9. 父对象被删除了不代表其余子对象都删除了,找到一种状态的泄露代码不等于其他状态就没有泄露了,要各模块各状态逐个进行测试分析,直到测试任何状态下都能删除整个对象为止。
内存泄露举例:
1. 引用泄露:对子对象的引用,外部对本对象或子对象的引用都需要置null;
2. 系统类泄露:使用了系统类而忘记做删除操作了,如BindingUtils.bindSetter(),ChangeWatcher.watch()函数时候完毕后需要调用ChangeWatcher.unwatch()函数来清除引用 ,否则使用此函数的对象将不会被删除;
类似的还有MUSIC,VIDEO,IMAGE,TIMER,EVENT,BINDING等。
3. 效果泄露:当对组件应用效果Effect的时候,当本对象本删除时需要把本对象和子对象上的Effect动画停止掉,然后把Effect的target对象置null; 如果不停止掉动画直接把 Effect置null将不能正常移除对象。
4. SWF泄露:要完全删除一个SWF要调用它的unload()方法并且把对象置null;
5. 图片泄露:当Image对象使用完毕后要把source置null;(为测试);
6. 声音、视频泄露: 当不需要一个音乐或视频是需要停止音乐,删除对象,引用置null;
内存泄露解决方法:
1. 在组件的REMOVED_FROM_STAGE事件回掉中做垃圾处理操作(移除所有对外引用(不管是VO还是组件的都需要删除),删除监听器,调用系统类的清除方法)
先remove再置null, 确保被remove或者removeAll后的对象在外部的引用全部释放干净;
2. 利用Flex的性能优化工具Profile来对项目进程进行监控,可知道历史创建过哪些对象,目前有哪些对象没有被删除,创建的数量,占用的内存比例和用量,创建过程等信息;
总结:关键还是要做好清除工作,自己设置的引用自己要记得删除,自己用过的系统类要记得做好回收处理工作。 以上问题解决的好的话不需要自定义强制回收器也有可能被系统正常的自动回收掉。

分类: Flex 标签: ,

CoCoMo更名为AFSC

2009年2月19日 评论已被关闭

Adobe Flash Collaboration Service (以前叫"Cocomo") is a Platform as a Service

http://labs.adobe.com/technologies/afcs/

ShowCase:http://labs.adobe.com/showcase/afcs/

SDK 0.91

What’s new for this release?

• A real, commercial name. Cocomo is now "Adobe Flash Collaboration Services" (AFCS).
• CustomUserField in UserManager is now fully supported.
• RoomManager has been augmented with 4 new settings :
      • guestsNotAllowed: Allows OWNERs to disallow anyone not authenticated to their rooms.
      • roomLocked: Allows OWNERs to prevent any further entry to a room.
      • roomUserLimit: Allows OWNERs to set a user limit on their rooms.
      • roomTimeOut: Allows OWNERs to set timeouts on their rooms (after which the room shuts down).
• Fixed ConnectSession.logout so that rooms can be re-logged in properly. ConnectSession.close() was added to completely clean up a session (doesn’t allow re-login).
• Fixed: Developer Quotas being exceeded was not reported in the AFCS framework (now throws SessionEvents from ConnectSession, or an RTE if it’s not being listened to).
• Management API :
• Server-side: getSessionSecret now returns the current session secret instead of creating a new one.
• Client-side: Added AccountManager.invalidateSession method to invalidate the current session secret
• UserDescriptor.RTMFP added to tell if a user has come in via RTMP.
• Fixed: P2P audio periodically dropping out.
• Fixed: P2P video freezing as it switches to hub and spoke.
• Fixed: Whiteboard not able to set backgroundColor/alpha via MXML.
• Added support for getting/setting nodeConfigurations on every collab and sharedModel component.
• New Examples:
      • MultipleSessions – shows how multiple IConnectSessions can be used in one application.
      • ZoomLayout – builds a custom webcam layout using WebCamSubscriber.
      • PeerToPeerRtmfp – shows how to use P2P/RTMFP for A/V.
• Dev console additions to allow configuration of file and stream groups.
• Dev console additions for managing new RoomManager settings.
• Fixed: XML objects are properly serialized/deserialized went sent via MessageItems.
• Capacity and service performance improvements.

分类: 生活杂谈 标签: ,

电子书下载页面

2009年2月19日 评论已被关闭

提供了一个电子书下载的页面:

http://www.hcxmflash.cn/test/ebook/showall.php

分类: 生活杂谈 标签: