我有一个RTMP流加载,想知道视频的下载时间。有没有办法通过关闭窗口,后退按钮,地址栏等来了解一个人突然离开视频会话的时间?
或者我是否需要使用onunload& amp;等内容从JavaScript到Flash进行外部接口调用? onbeforeunload事件?
我猜它是后者,但是想知道是否有一种方法可以将我的所有代码保存在AS3中。
由于
答案 0 :(得分:0)
您是否考虑过从flash.events.NetStatusEvent
对象听取以下事件:NetConnection
?
我在Adobe's forum上看到NetStatusEvent
事件可能是解决方案的一部分,尽管在所有情况下似乎都不够。有人提到ping功能或数据库日志找出客户端何时断开连接。
我会尝试将NetStatusEvent
功能与Javascript侦听器结合使用。
答案 1 :(得分:0)
我所知道的唯一方法是使用JavaScript,但您可以通过在您的AS3中嵌入JavaScript来避免依赖外部脚本,然后通过ExternalInterface使用document.write,例如:
var script:XML = <javascript>
<![CDATA[
window.onbeforeunload = function() {
[do flash callback here]
}
]]>
</javascript>;
ExternalInterface.call("document.write", '<script type="text/javascript">' + javascript.toString() + '</script>');