11月 292012
 

这个做着玩的,直接用别人写好的东西。可惜,都没有轻轻播放器好看。想破解没破解到。以后,将各种功能慢慢完善吧。
有一点需要注意,Event.SOUND_COMPLETE侦听失效。当你使用SoundChannel.stop(); 方法的时候,这个侦听就已经卸载了。想要不失效,必须要再建立一个侦听。
private function addChannelHandler()
{
if(!myChannel.hasEventListener(Event.SOUND_COMPLETE))
{
myChannel.addEventListener(Event.SOUND_COMPLETE,soundCompleteHandler);
}
}

点击这里网页查看

 Posted by at 上午12:18
11月 202012
 

本地共享对象SharedObject的体验,有兴趣的朋友可以去:www.vini123.com/chatroom/ 体验。 (1)注册一个账号,然后登陆进去。 (2)关闭该浏览器窗口。 (3)然后再输入网址,进去。
SharedObject(共享对象)分本地共享对象和服务器共享对象。本地SharedObject(共享对象)可以作为cookie来使用,服务器SharedObject(共享对象),FMS用到。相当于FMS里边的broadcastMsg效果。本质是共享实时数据。现在,分两种情况来把SharedObject(共享对象)的用法分享下。加深下记忆。
其实,远程共享对象还可以分为在服务器上存储共享数据,相当于本地的一样,只是将数据存储在服务器上。连接服务器成功就可以用。还有一个就是实时共享数据。也就是上边所说的broadcastMsg的效果。
Continue reading »

11月 192012
 

首先要明确一点。数组的深复制浅复制是针对,数组里边有包含复杂数据类型的数据(可以理解为引用类型的数据,似乎也不能这么说。)如果数组里边全是基元数据,数组的深复制,浅复制所达到的效果是一样的。
还有,要注意一点。就是赋值。我们用“=”。只要是数组的赋值,只要一个数组的引用变了,另外一个也跟着改变了。不管数组里边的数据类型是什么样子的。这点和数组的深复制浅复制是不一样的。

数组的深复制用到ByteArray,浅复制用concat,slice。

下边贴出demo。点击按钮,分别测试数组的深复制,赋值,浅复制,浅复制。复杂数据类型仅用Array表示。

 

AS3 CODE:
Continue reading »

11月 172012
 

json,之前只是了解了下,没太在意。今天,面试被人问到json。就再温习一遍。为什么要用,有哪些好处。这里就不说了。

json由{},[],””,:加字符串组成。基本格式是{“字符串”:”字符串”},也可以像数组一样嵌套。

用到json主要有他的两个方法:decode 和 encode。decode是从服务器取得json,encode是从本地(也就是flash自身)发送给服务器。前者可以理解为解码,后者可以理解为编码。

贴出 AS:

Continue reading »

11月 102012
 

这里仅仅是人物的渲染,鼠标点击控制人物的行走以及键盘4个方向键控制人物的行走。先说下注意点,以便以后犯错。
1丶坐标的转换,角度的计算。如果在渲染人物Char.as类中,进行人物的坐标移动,那么Char被实例化,添加的舞台的时候。其坐标一定要是(0,0)。要不,当鼠标点击舞台计算角度的时候会不正确。
2丶char 继承Sprite。将它添加到舞台的时候。如果要用到stage属性。就要用“Event.ADDED_TO_STAGE”事件,进行来侦听。否则会出错。如果你不用它,那就没事。
3丶角度,弧度的计算。以及人物方向的计算注意下就可以了。人物的渲染,资源消耗,效率方面也要注意。

文档类:Main.as
Continue reading »

11月 092012
 

htmlText 超链接的使用。

这个的用处还是蛮多的,普通的就是链接一个网址。直接用:eg:

txt.htmlText=<a href=\”http://www.vini123.com/chatroom/\” target=\”_blank\”> “FLASH聊天室” </a>

还可以自己去编写自己想要的字符串协议,让字符串包含不同的信息行为。html中,超链接必须以”event:”开头,将超链接要发送的信息放置在它的后边,以字符串的形式变现。这样,当用户单节超连接时,会发出一个事件。是flash.events.TextEvent类的实例,事件类型是TextEvent.LINK。”event:”后面的字符串信息会包裹在这个时间对象的text属性中,供监听器使用。
给字符串定义相当于一个编码的过程,点击链接触发时间,进行字符串的处理,相当于一个解码的过程。在”event:”后边,你可以定义更多自己想做的事情。

最近,自己在做一个聊天室。聊天室当然有人发言。一般都是以“某某人”+”时间“+”所说的话“的形式展现在对话框中。很多人聊天,就出现很多人的名字和他们说的话。要想点击某个人的名字就可以和某个人私聊。用上边这个做法就不错。你可以将链接的类型(有的不一定是聊天,比如我想点击链接加载一个swf,就是另外一个类型了),人物的昵称,人物的id等你所需要的信息编码进来。当点击链接触,根据自己的需要去处理。

还有一点,这里的应用也离不开字符串的处理。其实,有时候,我们可以把信息编在一个xml里边,也可以编在一串字符串里边。xml自然有它处理的规则。而字符串的”split“方法才是爽。很多时候都用到它。
好了,看下边的源码吧:

Continue reading »

11月 062012
 

遇到什么补充什么:

字符串换行: \n
字符串空格:\t

\b Backspace字符(ASCII 8)
\f 走纸换页字符(ASCII 12)
\n 换行字符(ASCII 10)
\r 回车自负(ASCII 13)
\t 制表符(Tab)(ASCII 9)
\” 双引号
\’; 单引号
\\ 反斜线符号(\)
\000~\377 一个用8进制指定的字符(占一个字节)
\x00~\xFF 一个用16进制指定的字符(占一个字节)
\u0000~\uFFFF 一个用16进制指定的Unicode字符(占两个字符)

Continue reading »

 Posted by at 下午10:32
11月 022012
 

最近一个星期,都在做flash聊天室。音频和视频是分开的。其实,在这个过程中,界面,其他的一些排队,送礼物,列表这些都不是难题。问题就出在音频和视频上。因为音频和视频是分开的。所要测试的环境也多点。当然,从最简单,消耗带宽最小的测试开始。
测试环境。fms装在远程双线服务器上。带宽具体多大的我也不知道。家里就一台笔记本,一个台式机。都连接网络。笔记本连接无线路由。
(1)单独发布音频流的情况
a,单独发布音频流,发布端缓冲时间和客户端缓冲时间都为2秒:
microphone的rate属性值有44,22,11,8,5.默认值是8.是麦克风捕捉音频的频率,单位是KHZ。网上有说声音延迟和这个参数设置有关。我分别将microphone的rate值设置为8和44,测试的结果几乎一样。也许和 麦克风还有和客户端的个数有关系吧。
先排除这个不管他。接着测试其他的参数。
b,单独发布音频流,发布端缓冲时间设置为2秒,客户端缓冲时间为0秒。发现不了延迟。
c,单独发布音频流,发布端缓冲时间设置为0秒,客户端缓冲时间为2秒。发现了延迟。
到这里。感觉发布端没有必要设置缓冲吧。客户端总是要播放发布端发布到服务器上的流。发布端设置缓冲,似乎有点掩耳盗铃的意思。

这些设置到现在还不够。不能用到实际中。测试过了,说话还可以,如果用来唱歌,感觉声音每个字都被扯了一样。很难听。最好,客户端音频缓冲0.5秒,视频缓冲1秒。参数多,测试起来是有点麻烦。网上也看了些资料。

Continue reading »

网站地图