⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bandwidthcheck.as

📁 本人做的Flash播放器源码,仅供大家参考并扩展
💻 AS
字号:
/**
* Check user bandwidth/connection speed over HTTP or RTMP.
*
* @author	Brian Weil
* @author	Stefan Richter
* @author	Jeroen Wijering
* @version	1.0
**/

class com.jeroenwijering.utils.BandwidthCheck {


	/** MovieClipLoader instance **/
	private var loader:MovieClipLoader;
	/** NetConnection instance **/
	private var connector:NetConnection;
	/** MovieClip  instance **/
	private var clip:MovieClip;
	/** Start time of test **/
	private var startTime:Number;


	/** Constructor for the BandwidthCheck **/
	function BandwidthCheck(fil:String) {
		var ref = this;
		if (fil.indexOf("rtmp") == -1) {
			loader = new MovieClipLoader;
			loader.addListener(this);
			clip = _root.createEmptyMovieClip("_bwchecker",1);
			loader.loadClip(fil + "?" + random(9999),clip);
		} else {
			connector = new NetConnection();
			connector.onStatus = function(info) {
				if(info.code != "NetConnection.Connect.Success") {
					ref.onComplete(0);
				}
			};
			connector.connect(fil, true);
			connector.onBWDone = function(kbps,dtd,dtt,lat) {
				ref.onComplete(kbps);
			};
			connector.onBWCheck = function() {};
		}
	};


	/** event handler for finished loading **/
	private function onLoadComplete(tgt:MovieClip,hts:Number) {
		tgt._visible = false;
		var dat = new Date();
		var ttl = clip.getBytesTotal();
		var sec = (dat.getTime() - startTime)/1000;
		var klb = ttl * 0.0078125*0.93;
		var kbps = Math.floor(klb/sec);
		onComplete(kbps);
		clip.removeMovieClip();
	};


	/** event handler for loading error **/
	private function onLoadError(tgt:MovieClip,err:String,stt:Number) {
		onComplete(0);
	};


	/** event handler for loading start **/
	private function onLoadStart() {
		var d = new Date();
		startTime = d.getTime();
	};


	/** event handler for completed test **/
	public function onComplete() {};


}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -