包 | flash.events |
类 | public class NetStatusEvent |
继承 | NetStatusEvent Event Object |
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.0 Flash Player 9 |
NetStatusEvent.NET_STATUS
。
另请参见
属性 | 定义方 | ||
---|---|---|---|
bubbles : Boolean [只读 (read-only)] 指示事件是否为冒泡事件。 | Event | ||
cancelable : Boolean [只读 (read-only)] 指示是否可以阻止与事件相关联的行为。 | Event | ||
constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | ||
currentTarget : Object [只读 (read-only)] 当前正在使用某个事件侦听器处理 Event 对象的对象。 | Event | ||
eventPhase : uint [只读 (read-only)] 事件流中的当前阶段。 | Event | ||
info : Object 一个对象,具有描述对象的状态或错误情况的属性。 | NetStatusEvent | ||
prototype : Object [静态]
对类或函数对象的原型对象的引用。 | Object | ||
target : Object [只读 (read-only)] 事件目标。 | Event | ||
type : String [只读 (read-only)] 事件的类型。 | Event |
方法 | 定义方 | ||
---|---|---|---|
NetStatusEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, info:Object = null) 创建一个 Event 对象,其中包含有关 netStatus 事件的信息。 | NetStatusEvent | ||
创建 NetStatusEvent 对象的副本,并设置每个属性的值以匹配原始属性值。 | NetStatusEvent | ||
用于在自定义 ActionScript 3.0 Event 类中实现 toString() 方法的实用程序函数。 | Event | ||
指示对象是否已经定义了指定的属性。 | Object | ||
检查是否已对事件调用 preventDefault() 方法。 | Event | ||
指示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | ||
如果可以取消事件的默认行为,则取消该行为。 | Event | ||
指示指定的属性是否存在、是否可枚举。 | Object | ||
设置循环操作动态属性的可用性。 | Object | ||
防止对事件流中当前节点中和所有后续节点中的事件侦听器进行处理。 | Event | ||
防止对事件流中当前节点的后续节点中的所有事件侦听器进行处理。 | Event | ||
返回一个字符串,其中包含 NetStatusEvent 对象的所有属性。 | NetStatusEvent | ||
返回指定对象的原始值。 | Object |
常量 | 定义方 | ||
---|---|---|---|
ACTIVATE : String = "activate" [静态] ACTIVATE 常量定义 activate 事件对象的 type 属性的值。 | Event | ||
ADDED : String = "added" [静态] Event.ADDED 常量定义 added 事件对象的 type 属性值。 | Event | ||
ADDED_TO_STAGE : String = "addedToStage" [静态] Event.ADDED_TO_STAGE 常量定义 addedToStage 事件对象的 type 属性值。 | Event | ||
CANCEL : String = "cancel" [静态] Event.CANCEL 常量定义 cancel 事件对象的 type 属性的值。 | Event | ||
CHANGE : String = "change" [静态] Event.CHANGE 常量定义 change 事件对象的 type 属性值。 | Event | ||
CLEAR : String = "clear" [静态] Event.CLEAR 常量定义 clear 事件对象的 type 属性的值。 | Event | ||
CLOSE : String = "close" [静态] Event.CLOSE 常量定义 close 事件对象的 type 属性的值。 | Event | ||
CLOSING : String = "closing" [静态] Event.CLOSING 常量定义 closing 事件对象的 type 属性值。 | Event | ||
COMPLETE : String = "complete" [静态] Event.COMPLETE 常量定义 complete 事件对象的 type 属性值。 | Event | ||
CONNECT : String = "connect" [静态] Event.CONNECT 常量定义 connect 事件对象的 type 属性值。 | Event | ||
COPY : String = "copy" [静态] 定义 copy 事件对象的 type 属性值。 | Event | ||
CUT : String = "cut" [静态] 定义 cut 事件对象的 type 属性值。 | Event | ||
DEACTIVATE : String = "deactivate" [静态] Event.DEACTIVATE 常量定义 deactivate 事件对象的 type 属性值。 | Event | ||
DISPLAYING : String = "displaying" [静态] Event.DISPLAYING 常量定义 displaying 事件对象的 type 属性值。 | Event | ||
ENTER_FRAME : String = "enterFrame" [静态] Event.ENTER_FRAME 常量定义 enterFrame 事件对象的 type 属性值。 | Event | ||
EXIT_FRAME : String = "exitFrame" [静态] Event.EXIT_FRAME 常量定义 exitFrame 事件对象的 type 属性的值。 | Event | ||
EXITING : String = "exiting" [静态] Event.EXITING 常量定义 exiting 事件对象的 type 属性值。 | Event | ||
FRAME_CONSTRUCTED : String = "frameConstructed" [静态] Event.FRAME_CONSTRUCTED 常量定义 frameConstructed 事件对象的 type 属性的值。 | Event | ||
FULLSCREEN : String = "fullScreen" [静态] Event.FULL_SCREEN 常量定义 fullScreen 事件对象的 type 属性值。 | Event | ||
HTML_BOUNDS_CHANGE : String = "htmlBoundsChange" [静态] Event.HTML_BOUNDS_CHANGE 常量定义 htmlBoundsChange 事件对象的 type 属性值。 | Event | ||
HTML_DOM_INITIALIZE : String = "htmlDOMInitialize" [静态] Event.HTML_DOM_INITIALIZE 常量定义 htmlDOMInitialize 事件对象的 type 属性值。 | Event | ||
HTML_RENDER : String = "htmlRender" [静态] Event.HTML_RENDER 常量定义 htmlRender 事件对象的 type 属性值。 | Event | ||
ID3 : String = "id3" [静态] Event.ID3 常量定义 id3 事件对象的 type 属性值。 | Event | ||
INIT : String = "init" [静态] Event.INIT 常量定义 init 事件对象的 type 属性值。 | Event | ||
LOCATION_CHANGE : String = "locationChange" [静态] Event.LOCATION_CHANGE 常量定义 locationChange 事件对象的 type 属性值。 | Event | ||
MOUSE_LEAVE : String = "mouseLeave" [静态] Event.MOUSE_LEAVE 常量定义 mouseLeave 事件对象的 type 属性值。 | Event | ||
NET_STATUS : String = "netStatus" [静态] 定义 netStatus 事件对象的 type 属性值。 | NetStatusEvent | ||
NETWORK_CHANGE : String = "networkChange" [静态] Event.NETWORK_CHANGE 常量定义 networkChange 事件对象的 type 属性值。 | Event | ||
OPEN : String = "open" [静态] Event.OPEN 常量用于定义 open 事件对象的 type 属性值。 | Event | ||
PASTE : String = "paste" [静态] Event.PASTE 常量定义 paste 事件对象的 type 属性的值。 | Event | ||
REMOVED : String = "removed" [静态] Event.REMOVED 常量定义 removed 事件对象的 type 属性值。 | Event | ||
REMOVED_FROM_STAGE : String = "removedFromStage" [静态] Event.REMOVED_FROM_STAGE 常量定义 removedFromStage 事件对象的 type 属性值。 | Event | ||
RENDER : String = "render" [静态] Event.RENDER 常量定义 render 事件对象的 type 属性的值。 | Event | ||
RESIZE : String = "resize" [静态] Event.RESIZE 常量定义 resize 事件对象的 type 属性的值。 | Event | ||
SCROLL : String = "scroll" [静态] Event.SCROLL 常量定义 scroll 事件对象的 type 属性值。 | Event | ||
SELECT : String = "select" [静态] Event.SELECT 常量定义 select 事件对象的 type 属性的值。 | Event | ||
SELECT_ALL : String = "selectAll" [静态] Event.SELECT_ALL 常量定义 selectAll 事件对象的 type 属性的值。 | Event | ||
SOUND_COMPLETE : String = "soundComplete" [静态] Event.SOUND_COMPLETE 常量定义 soundComplete 事件对象的 type 属性值。 | Event | ||
TAB_CHILDREN_CHANGE : String = "tabChildrenChange" [静态] Event.TAB_CHILDREN_CHANGE 常量定义 tabChildrenChange 事件对象的 type 属性值。 | Event | ||
TAB_ENABLED_CHANGE : String = "tabEnabledChange" [静态] Event.TAB_ENABLED_CHANGE 常量定义 tabEnabledChange 事件对象的 type 属性值。 | Event | ||
TAB_INDEX_CHANGE : String = "tabIndexChange" [静态] Event.TAB_INDEX_CHANGE 常量定义 tabIndexChange 事件对象的 type 属性值。 | Event | ||
UNLOAD : String = "unload" [静态] Event.UNLOAD 常量定义 unload 事件对象的 type 属性值。 | Event | ||
USER_IDLE : String = "userIdle" [静态] Event.USER_IDLE 常量定义 userIdle 事件对象的 type 属性值。 | Event | ||
USER_PRESENT : String = "userPresent" [静态] Event.USER_PRESENT 常量定义 userPresent 事件对象的 type 属性值。 | Event |
info | 属性 |
info:Object
[读写] 语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.0 Flash Player 9 |
一个对象,具有描述对象的状态或错误情况的属性。
该信息对象可能具有 code
属性(它包含表示特定事件的字符串),或者具有 level
属性(它包含 "status"
或 "error"
字符串)。
该信息对象还可能具有其它属性。由于一些实现和服务器可能发送不同的对象,code
和 level
属性可能不起作用。
P2P 连接使用指示消息所属 NetStream
的信息对象中的 stream
参数,将消息发送给 NetConnection
。
下表说明了 code
和 level
属性可能的字符串值。
代码属性 | 级别属性 | 意义 |
---|---|---|
"NetStream.Buffer.Empty"
|
"status"
|
数据的接收速度不足以填充缓冲区。数据流将在缓冲区重新填充前中断,此时将发送 NetStream.Buffer.Full 消息,并且该流将重新开始播放。
|
"NetStream.Buffer.Full"
|
"status"
| 缓冲区已满并且流将开始播放。 |
"NetStream.Buffer.Flush"
|
"status"
| 数据已完成流式处理,剩余的缓冲区将被清空。 |
"NetStream.Failed"
| "error" | 仅限 Flash Media Server。发生了错误,在其它事件代码中没有列出此错误的原因。 |
"NetStream.Publish.Start"
|
"status"
| 已经成功发布。 |
"NetStream.Publish.BadName"
|
"error"
| 试图发布已经被他人发布的流。 |
"NetStream.Publish.Idle"
|
"status"
| 流发布者空闲而没有在传输数据。 |
"NetStream.Unpublish.Success"
|
"status"
| 已成功执行取消发布操作。 |
"NetStream.Play.Start"
|
"status"
| 播放已开始。 |
"NetStream.Play.Stop"
|
"status"
| 播放已结束。 |
"NetStream.Play.Failed"
|
"error"
| 出于此表中列出的原因之外的某一原因(例如订阅者没有读取权限),播放发生了错误。 |
"NetStream.Play.StreamNotFound"
|
"error"
|
无法找到传递给 play() 方法的 FLV。
|
"NetStream.Play.Reset"
|
"status"
| 由播放列表重置导致。 |
"NetStream.Play.PublishNotify"
|
"status"
| 到流的初始发布被发送到所有的订阅者。 |
"NetStream.Play.UnpublishNotify"
|
"status"
| 从流取消的发布被发送到所有的订阅者。 |
"NetStream.Play.InsufficientBW"
| "warning" | 仅限 Flash Media Server。客户端没有足够的带宽,无法以正常速度播放数据。 |
“NetStream.Play.FileStructureInvalid”
|
"error"
| 应用程序检测到无效的文件结构并且将不会尝试播放这种类型的文件。用于 AIR 和 Flash Player 9.0.115.0 及更高版本。 |
“NetStream.Play.NoSupportedTrackFound”
|
"error"
| 应用程序未检测到任何支持的音轨(视频、音频或数据)并且将不会尝试播放该文件。用于 AIR 和 Flash Player 9.0.115.0 及更高版本。 |
"NetStream.Play.Transition"
|
"status"
|
仅限 Flash Media Server。由位速率流切换而导致的到其他位置的流过渡。此代码指示用于启动流切换的 NetStream.play2() 调用的成功状态事件。如果切换失败,则服务器将改为发送 NetStream.Play.Failed 事件。用于 Flash Player 10 及更高版本。
|
"NetStream.Play.Transition"
|
"status"
|
仅限 Flash Media Server 3.5 和更高版本。服务器收到因位速率流切换而需要过渡到其他流的命令。此代码指示用于启动流切换的 NetStream.play2() 调用的成功状态事件。如果切换失败,则服务器将改为发送 NetStream.Play.Failed 事件。当发生流切换时,将调度带有代码“NetStream.Play.TransitionComplete”的 onPlayStatus 事件。用于 Flash Player 10 及更高版本。
|
"NetStream.Pause.Notify"
|
"status"
| 流已暂停。 |
"NetStream.Unpause.Notify"
|
"status"
| 流已恢复。 |
"NetStream.Record.Start"
|
"status"
| 录制已开始。 |
"NetStream.Record.NoAccess"
|
"error"
| 试图录制仍处于播放状态的流或客户端没有访问权限的流。 |
"NetStream.Record.Stop"
|
"status"
| 录制已停止。 |
"NetStream.Record.Failed"
|
"error"
| 尝试录制流失败。 |
"NetStream.Seek.Failed"
|
"error"
| 搜索失败,如果流处于不可搜索状态,则会发生搜索失败。 |
"NetStream.Seek.InvalidTime"
|
"error"
|
对于使用渐进式下载方式下载的视频,用户已尝试跳过到目前为止已下载的视频数据的结尾或在整个文件已下载后跳过视频的结尾进行搜寻或播放。message.details 属性包含一个时间代码,该代码指出用户可以搜寻的最后一个有效位置。
|
"NetStream.Seek.Notify"
|
"status"
| 搜寻操作完成。 |
"NetConnection.Call.BadVersion"
|
"error"
| 以不能识别的格式编码的数据包。 |
"NetConnection.Call.Failed"
|
"error"
|
NetConnection.call 方法无法调用服务器端的方法或命令。
|
"NetConnection.Call.Prohibited"
|
"error"
|
Action Message Format (AMF) 操作因安全原因而被阻止。AMF URL 与文件(其中包含调用 NetConnection.call() 方法的代码)不在同一个域中,或者 AMF 服务器没有信任文件(其中包含调用 NetConnection.call() 方法的代码)所在域的策略文件。
|
"NetConnection.Connect.Closed"
|
"status"
| 成功关闭连接。 |
"NetConnection.Connect.Failed"
|
"error"
| 连接尝试失败。 |
"NetConnection.Connect.Success"
|
"status"
| 连接尝试成功。 |
"NetConnection.Connect.Rejected"
|
"error"
| 连接尝试没有访问应用程序的权限。 |
"NetStream.Connect.Closed"
|
"status"
|
成功关闭 P2P 连接。info.stream 属性指示已关闭的流。
|
"NetStream.Connect.Failed"
|
"error"
|
P2P 连接尝试失败。info.stream 属性指示已失败的流。
|
"NetStream.Connect.Success"
|
"status"
|
P2P 连接尝试成功。info.stream 属性指示已成功的流。
|
"NetStream.Connect.Rejected"
|
"error"
|
P2P 连接尝试没有访问另一个对等方的权限。info.stream 属性指示被拒绝的流。
|
"NetConnection.Connect.AppShutdown"
|
"error"
| 正在关闭指定的应用程序。 |
"NetConnection.Connect.InvalidApp"
|
"error"
| 连接时指定的应用程序名无效。 |
"SharedObject.Flush.Success"
|
"status"
|
“待定”状态已解析并且 SharedObject.flush() 调用成功。
|
"SharedObject.Flush.Failed"
|
"error"
|
“待定”状态已解析,但 SharedObject.flush() 失败。
|
"SharedObject.BadPersistence"
|
"error"
| 使用永久性标志对共享对象进行了请求,但请求无法被批准,因为已经使用其它标记创建了该对象。 |
"SharedObject.UriMismatch"
|
"error"
| 试图连接到拥有与共享对象不同的 URI (URL) 的 NetConnection 对象。 |
如果您不断地看到有关缓冲区的错误,则请尝试使用 NetStream.bufferTime
属性更改缓冲区。
public function get info():Object
public function set info(value:Object):void
另请参见
NetStatusEvent | () | 构造函数 |
public function NetStatusEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, info:Object = null)
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.0 Flash Player 9 |
创建一个 Event 对象,其中包含有关 netStatus
事件的信息。将 Event 对象作为参数传递给事件侦听器。
type:String —
事件的类型。事件侦听器可以通过继承的 type 属性访问此信息。只有一种类型的状态事件:NetStatusEvent.NET_STATUS 。
| |
bubbles:Boolean (default = false ) —
确定 Event 对象是否参与事件流的冒泡阶段。事件侦听器可以通过继承的 bubbles 属性访问此信息。
| |
cancelable:Boolean (default = false ) —
确定是否可以取消 Event 对象。事件侦听器可以通过继承的 cancelable 属性访问此信息。
| |
info:Object (default = null ) —
一个对象,包含描述其状态的属性。事件侦听器可以通过 info 属性访问此对象。
|
另请参见
clone | () | 方法 |
override public function clone():Event
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.0 Flash Player 9 |
创建 NetStatusEvent 对象的副本,并设置每个属性的值以匹配原始属性值。
返回Event — 其属性值与原始属性值匹配的新 NetStatusEvent 对象。 |
toString | () | 方法 |
override public function toString():String
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.0 Flash Player 9 |
返回一个字符串,其中包含 NetStatusEvent 对象的所有属性。字符串的格式如下:
[NetStatusEvent type=value bubbles=value cancelable=value info=value ]
String — 一个字符串,其中包含 NetStatusEvent 对象的所有属性。 |
NET_STATUS | 常量 |
public static const NET_STATUS:String = "netStatus"
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.0 Flash Player 9 |
定义 netStatus
事件对象的 type
属性值。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles
|
false
|
cancelable
|
false ;没有要取消的默认行为。
|
currentTarget
| 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
info
| 一个对象,具有描述对象的状态或错误情况的属性。 |
target
| 报告其状态的 NetConnection 或 NetStream 对象。 |
另请参见
在此示例中,netStatusHandler
方法作为 NetStatusEvent 事件 NetConnection.netStatus
的侦听器进行注册。当确定了 NetConnection.connect()
尝试的状态(成功或失败)时,netStatus
事件触发此方法。如果连接 NetConnection 对象的尝试取得成功(也就是说,如果 NetStatusEvent 对象的 info
属性由 netStatus
事件调度,并有一个表示成功的 code
属性),则代码创建 Video 和 NetStream 对象并调用 Video.attachNetStream()
和 NetStream.play()
方法。
注意:若要运行此示例,需要一个名称和位置与传递给 videoURL
的变量相匹配的 FLV 文件;在本例中,使用 SWF 文件所在目录下的一个名为 Video.flv 的 FLV 文件。
package { import flash.display.Sprite; import flash.events.*; import flash.media.Video; import flash.net.NetConnection; import flash.net.NetStream; public class NetStatusEventExample extends Sprite { private var videoURL:String = "Video.flv"; private var connection:NetConnection; private var stream:NetStream; public function NetStatusEventExample() { connection = new NetConnection(); connection.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler); connection.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler); connection.connect(null); } private function netStatusHandler(event:NetStatusEvent):void { switch (event.info.code) { case "NetConnection.Connect.Success": connectStream(); break; case "NetStream.Play.StreamNotFound": trace("Unable to locate video: " + videoURL); break; } } private function connectStream():void { var stream:NetStream = new NetStream(connection); stream.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler); stream.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler); var video:Video = new Video(); video.attachNetStream(stream); stream.play(videoURL); addChild(video); } private function securityErrorHandler(event:SecurityErrorEvent):void { trace("securityErrorHandler: " + event); } private function asyncErrorHandler(event:AsyncErrorEvent):void { // ignore AsyncErrorEvent events. } } }