huangxiaojing 4 years ago
parent
commit
e8ddf32b8b
5 changed files with 348 additions and 903 deletions
  1. 81 243
      screenIos/WXdraw.js
  2. 40 389
      screenIos/WXtrialInterface.html
  3. 214 242
      screenIos/helper.js
  4. 0 1
      screenIos/pcm-player.js
  5. 13 28
      screenIos/websocket.js

+ 81 - 243
screenIos/WXdraw.js

@@ -1,112 +1,42 @@
-//画布
-var canvas;
-var context;
-//蒙版
+// 蒙版
 var canvas_bak = document.getElementById("box");;
-var context_bak;
 
-var canvasWidth = 720;
-var canvasHeight = 1280;
-
-var canvasTop;
-var canvasLeft;
-var winHeight = window.screen.height - window.innerHeight
-var vowidth = window.screen.width
+var winHeight = window.screen.height - window.innerHeight;
+var vowidth = window.screen.width;
 var topwinHeightDraw = window.screen.height - window.innerHeight + 30; //计算title top 头部
-var numse = window.screen.height //-winHeight
-// function getUrlParam(name) {
-// var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); //构造一个含有目标参数的正则表达式对象
-// var r = window.location.search.substr(1).match(reg); //匹配目标参数
-// if (r != null) return unescape(r[2]); return null; //返回参数值
-// }
-// var sn = getUrlParam('sn');
+var numse = window.screen.height // -winHeight
 //计算title top 头部
 if (numse <= 70) {
-
 	var voheight = window.screen.height - winHeight - 34 - 20
 } else {
-	console.log("numse>>>", numse)
 	var voheight = window.screen.height - topwinHeightDraw - 20
 }
 
-//console.log("画笔大小>>>",window.innerHeight)
 //画笔大小
-var size = 1;
-var color = '#000000';
-var resolving
-//alert(winHeight)
+var resolving;
 var url = window.location.href;
-url = url.split('/')
-
-var query = window.location.search.substring(1);
-// debugger
-// query = "clientType=3&username=WqXTc1593762177&userCardId=377"
-// debugger
-var vars = query.split("&");
-var data = {}
-var clientType = vars.find(e => {
-	return e.startsWith('clientType')
-}) || ''
-var cardIp = vars.find(e => {
-	return e.startsWith('cardIp')
-}) || ''
-var port = vars.find(e => {
-	return e.startsWith('port')
-}) || ''
-
-var sn = vars.find(e => {
-	return e.startsWith('sn')
-}) || ''
-var username = vars.find(e => {
-	return e.startsWith('username')
-}) || ''
-var userCardId = vars.find(e => {
-	return e.startsWith('userCardId')
-}) || ''
-var ip = vars.find(e => {
-	return e.startsWith('ip')
-}) || ''
-
-var data = {}
-data.clientType = clientType.substring(11, clientType.length)
+url = url.split('/');
 
-data.cardIp = cardIp.substring(7, cardIp.length)
+var parameters = GetRequest();
 
-data.port = port.substring(5, port.length)
+var form = {};
+form.clientType = parameters['clientType'];
+form.cardIp = parameters['cardIp'];
+form.port = parameters['port'];
+form.sn = parameters['sn'];
+form.username = parameters['username'];
+form.userCardId = parameters['userCardId'];
+form.ip = parameters['ip'];
 
-data.sn = sn.substring(3, sn.length)
-data.username = username.substring(9, username.length)
-data.userCardId = userCardId.substring(11, userCardId.length)
-data.ip = ip.substring(3, ip.length)
-// var urlss=url[2]
-// urlss = "14.215.128.96"
-urlss = '192.168.31.20'
-// urlss = 'test.androidscloud.com'
-// debugger
-// var cUrl = ''
-// cUrl = "ws://192.168.11.66:9101";
-// var cUrl="14.215.128.98:14102"
-var cUrl = "ws://192.168.198.82:9100/card?cardIp=" + data.ip
-// if (data.clientType == 3) {
-// 	cUrl = "wss://" + urlss + "/authControlWebSocket?" + "clientType=" + data.clientType + "&username=" + data.username +
-// 		"&userCardId=" + data.userCardId
-// } else if (data.clientType == 2) {
-// 	// cUrl = "wss://" + urlss + "/shareWebSocket?" + "clientType=" + data.clientType + "&username=" + data.username +
-// 	// 	"&userCardId=" + data.userCardId + "&ip=" + data.ip
-// 	cUrl = "wss://test.androidscloud.com/videoWebSocket?clientType=1&cardIp=14.215.128.96&port=2005&sn=RK3930C2301900005";
-// } else {
-// 	cUrl = "wss://" + urlss + "/controlWebSocket?" + "clientType=" + data.clientType + "&cardIp=" + data.cardIp + "&port=" +
-// 		data.port + "&sn=" + data.sn
-// }
-console.log(cUrl, 'curl')
+var cUrl = "ws://192.168.198.82:9100/card?cardIp=" + form.ip;
 
+var wsss;
 doConnect();
-
 function doConnect() {
-	var wsss = new WebSocket(cUrl);
+	wsss = new WebSocket(cUrl);
 	wsss.binaryType = 'arraybuffer';
 
-	wsss.onopen = function() {
+	wsss.onopen = function () {
 		var pings = {
 			"event": "getScreenStatus"
 		}
@@ -117,38 +47,21 @@ function doConnect() {
 			},
 			"event": "bitRate"
 		}
-		console.log('打开安卓卡wsss.onopen========', data.sn)
-		// wsss.send(JSON.stringify(bitRate));
-		wsss.send(ExexuteMove(JSON.stringify(bitRate), data.sn))
-	};
-	wsss.onmessage = function(event) {
-		// console.log("onMessage==============", event);
-		// var resets = JSON.parse(event.data)
-		// var resets = event.data;
-		// resets.errorMsg && alert(resets.errorMsg)
-		// resolving = resets.data.orientation
-		// if (resolving == 1) {} else {}
-		// console.log('>>>resolvingresolvingresolving', resolving)
-
+		wsss.send(ExexuteMove(JSON.stringify(bitRate), form.sn))
 	};
-	wsss.onclose = function(event) {
+	wsss.onclose = function (event) {
 		alert("websocket连接断开");
-		// doConnect();
 		wx.miniProgram.switchTab({
 			url: '/pages/home/home'
 		})
 	};
-	wsss.onerror = function(event) {
-		console.log("onerror==============");
-	};
 }
-$('#box').on("click", function() {
-
+$('#box').on("click", function () {
 	draw_graph('pencil', this)
 })
 //剪切板
-$(".upload").on("click", function() {
-	let texts = $(this).attr("data-text")
+$(".upload").on("click", function () {
+	var texts = $(this).attr("data-text")
 	if (texts == "uploads") {
 		$(".mainbox").css({
 			"display": "block"
@@ -156,96 +69,54 @@ $(".upload").on("click", function() {
 		$(".sbox").css({
 			"display": "none"
 		})
-	} else if (texts == "Signout") {
-		//		alert()
-
 	}
 })
 
 //home 控制home
-$(".botmat1img").on("click", function() {
-	let codes = $(this).attr("data-text")
-	console.log("homehomehome---------",codes)
+$(".botmat1img").on("click", function () {
+	var codes = $(this).attr("data-text")
 	if (codes == "home") {
-		// var bitRate = {
-		// 	"data": {
-		// 		"keyCode": 3
-		// 	},
-		// 	"event": "keyCode"
-		// }
-		console.log("打印主页json", data.sn)
-		wsss.send(ExexuteKeyBoard(3, data.sn));
-		// console.log("打印主页json", wsss)
+		wsss.send(ExexuteKeyBoard(3, form.sn));
 	} else if (codes == "return") {
-		// var bitRate = {
-		// 	"data": {
-		// 		"keyCode": "4"
-		// 	},
-		// 	"event": "keyCode"
-		// }
-		// wsss.send(JSON.stringify(bitRate));
-		wsss.send(ExexuteKeyBoard(4, data.sn));
+		wsss.send(ExexuteKeyBoard(4, form.sn));
 	} else if (codes == "gengduo") {
-		// var bitRate = {
-		// 	"data": {
-		// 		"keyCode": "187"
-		// 	},
-		// 	"event": "keyCode"
-		// }
-		// wsss.send(JSON.stringify(bitRate));
-		wsss.send(ExexuteKeyBoard(187, data.sn));
+		wsss.send(ExexuteKeyBoard(187, form.sn));
 	}
-
 })
 //高清控制
-$(".PictureQuality").on("click", function() {
+$(".PictureQuality").on("click", function () {
 	$(this).addClass("avit").siblings().removeClass('avit')
-	let id = $(this).attr("data-id")
+	var id = $(this).attr("data-id")
 	var bitRate = {
 		"data": {
 			"bitRate": id
 		},
 		"event": "bitRate"
 	}
-	// wsss.send(JSON.stringify(bitRate));
-	console.log('打开安卓卡11==============', data.sn)
-	wsss.send(ExexuteMove(JSON.stringify(bitRate), data.sn))
-	console.log(id)
+	wsss.send(ExexuteMove(JSON.stringify(bitRate), form.sn))
 })
-
+var canDraw = false;
 //画图形
-var draw_graph = function(graphType, obj) {
-	console.log('111》》》', graphType)
+var draw_graph = function (graphType) {
 	//把蒙版放于画板上面
-	//$("#canvas_bak").css("z-index",1);
 	$("#container").css("z-index", 30);
 	$("#dedit").css("z-index", 20);
-	//先画在蒙版上 再复制到画布上
-
-	chooseImg(obj);
-	var canDraw = false;
-
-	var startX;
-	var startY;
-
+	// 先画在蒙版上 再复制到画布上
 	//鼠标按下获取 开始xy开始画图
-	var touchstart = function(e) {
+	var touchstart = function (e) {
 		$('.control-right-img').attr({
 			"data-id": "2"
 		})
 		$(".leftmains").css({
 			"right": "-4rem"
 		})
-		//		.toFixed(2)
 		var touchfor = e.originalEvent.targetTouches; //for 的手指数组
-		var touch = e.originalEvent.targetTouches[0];
-		var thochlethng = e.originalEvent.targetTouches.length
 		//是否横屏
 		if (resolving == 0) {
-			let ping
-			for (let i = 0; i < touchfor.length; i++) {
-				let cawidthXs = touchfor[i].pageY * (1280 / voheight)
-				let caheightYs = 720 - touchfor[i].pageX * (720 / vowidth)
+			var ping
+			for (var i = 0; i < touchfor.length; i++) {
+				var cawidthXs = touchfor[i].pageY * (1280 / voheight)
+				var caheightYs = 720 - touchfor[i].pageX * (720 / vowidth)
 				ping = {
 					"data": {
 						"action": 0,
@@ -257,15 +128,12 @@ var draw_graph = function(graphType, obj) {
 					"event": "0"
 				}
 			}
-			// wsss.send(JSON.stringify(ping));
-			console.log('打开安卓卡鼠标按下获取 开始xy开始画图======', data.sn)
-			wsss.send(ExexuteMove(JSON.stringify(ping), data.sn))
-			console.log("鼠标按下>>>", ping, data.sn)
+			wsss.send(ExexuteMove(JSON.stringify(ping), form.sn))
 		} else {
-			let ping
-			for (let i = 0; i < touchfor.length; i++) {
-				let cawidthXs = touchfor[i].pageX * (720 / vowidth)
-				let caheightYs = touchfor[i].pageY * (1280 / voheight)
+			var ping
+			for (var i = 0; i < touchfor.length; i++) {
+				var cawidthXs = touchfor[i].pageX * (720 / vowidth)
+				var caheightYs = touchfor[i].pageY * (1280 / voheight)
 				ping = {
 					"data": {
 						"action": 0,
@@ -278,10 +146,7 @@ var draw_graph = function(graphType, obj) {
 				}
 
 			}
-			// wsss.send(JSON.stringify(ping));
-			console.log('打开安卓卡=22=============', data.sn)
-			wsss.send(ExexuteMove(JSON.stringify(ping), data.sn))
-			console.log("鼠标按下>>>", ping, data.sn)
+			wsss.send(ExexuteMove(JSON.stringify(ping), form.sn))
 		}
 
 		canDraw = true;
@@ -289,17 +154,14 @@ var draw_graph = function(graphType, obj) {
 	};
 
 	//鼠标离开 把蒙版canvas的图片生成到canvas中
-	var touchend = function(e) {
+	var touchend = function (e) {
 		var touchfor = e.originalEvent.changedTouches; //for 的手指数组
-		var touch = e.originalEvent.changedTouches[0];
-		var thochlethng = e.originalEvent.changedTouches.length
-		//	 alert(thochlethng)
 		//是否横屏 morePortionUp
 		if (resolving == 0) {
-			let ping
-			for (let i = 0; i < touchfor.length; i++) {
-				let cawidthXs = touchfor[i].pageY * (1280 / voheight)
-				let caheightYs = 720 - touchfor[i].pageX * (720 / vowidth)
+			var ping
+			for (var i = 0; i < touchfor.length; i++) {
+				var cawidthXs = touchfor[i].pageY * (1280 / voheight)
+				var caheightYs = 720 - touchfor[i].pageX * (720 / vowidth)
 				ping = {
 					"data": {
 						"action": 1,
@@ -311,16 +173,12 @@ var draw_graph = function(graphType, obj) {
 					"event": "1"
 				}
 			}
-
-			// wsss.send(JSON.stringify(ping));
-			console.log('打开安卓卡==33============', data.sn)
-			wsss.send(ExexuteMove(JSON.stringify(ping), data.sn))
-
+			wsss.send(ExexuteMove(JSON.stringify(ping), form.sn))
 		} else {
-			let ping
-			for (let i = 0; i < touchfor.length; i++) {
-				let cawidthXs = touchfor[i].pageX * (720 / vowidth)
-				let caheightYs = touchfor[i].pageY * (1280 / voheight)
+			var ping
+			for (var i = 0; i < touchfor.length; i++) {
+				var cawidthXs = touchfor[i].pageX * (720 / vowidth)
+				var caheightYs = touchfor[i].pageY * (1280 / voheight)
 				ping = {
 					"data": {
 						"action": 1,
@@ -332,36 +190,26 @@ var draw_graph = function(graphType, obj) {
 					"event": "1"
 				}
 			}
-
-			// wsss.send(JSON.stringify(ping));
-			console.log('打开安卓卡=55=============', data.sn)
-			wsss.send(ExexuteMove(JSON.stringify(ping), data.sn))
+			wsss.send(ExexuteMove(JSON.stringify(ping), form.sn))
 		}
-
 		canDraw = false;
-
 	};
 
 	//清空层 云手机超出屏幕的开关
-	var clearContext = function(type) {
+	var clearContext = function () {
 		canDraw = false;
 	}
 
 	// 鼠标移动
-	var touchmove = function(e) {
-
+	var touchmove = function (e) {
 		e = e || window.event;
 		var touchfor = e.originalEvent.targetTouches; //for 的手指数组
-		var touch = e.originalEvent.targetTouches[0];
-		var thochlethng = e.originalEvent.targetTouches.length
-		let ping
+		var ping
 		//是否横屏  morePortionMove
 		if (resolving == 0) {
-			let obj = []
-			for (let i = 0; i < touchfor.length; i++) {
-				let cawidthXs = touchfor[i].pageY * (1280 / voheight)
-				let caheightYs = 720 - touchfor[i].pageX * (720 / vowidth)
-
+			for (var i = 0; i < touchfor.length; i++) {
+				var cawidthXs = touchfor[i].pageY * (1280 / voheight)
+				var caheightYs = 720 - touchfor[i].pageX * (720 / vowidth)
 				ping = {
 					"data": {
 						"action": 2,
@@ -372,17 +220,13 @@ var draw_graph = function(graphType, obj) {
 					},
 					"event": "2"
 				}
-
 			}
-
-			// wsss.send(JSON.stringify(ping));
-			console.log('打开安卓卡==66============', data.sn)
-			wsss.send(ExexuteMove(JSON.stringify(ping), data.sn))
+			wsss.send(ExexuteMove(JSON.stringify(ping), form.sn))
 		} else {
-			let ping
-			for (let i = 0; i < touchfor.length; i++) {
-				let cawidthXs = touchfor[i].pageX * (720 / vowidth)
-				let caheightYs = touchfor[i].pageY * (1280 / voheight)
+			var ping
+			for (var i = 0; i < touchfor.length; i++) {
+				var cawidthXs = touchfor[i].pageX * (720 / vowidth)
+				var caheightYs = touchfor[i].pageY * (1280 / voheight)
 				ping = {
 					"data": {
 						"action": 2,
@@ -393,31 +237,17 @@ var draw_graph = function(graphType, obj) {
 					},
 					"event": "2"
 				}
-
 			}
-
-			// wsss.send(JSON.stringify(ping));
-			console.log('打开安卓卡==88============', data.sn)
-			wsss.send(ExexuteMove(JSON.stringify(ping), data.sn))
+			wsss.send(ExexuteMove(JSON.stringify(ping), form.sn))
 		}
-
-
-
-		//				var ping = {"data":{"action":2,"count":1,"pointerId":0,"x":cawidthX.toFixed(2),"y":caheightY.toFixed(2)},"event":"2"}	    
-
-
-
 	};
 
 	//鼠标离开区域以外 除了涂鸦 都清空
-	var mouseout = function() {
-
+	var mouseout = function () {
 		if (graphType != 'handwriting') {
 			clearContext();
-
 		}
 	}
-
 	$(canvas_bak).unbind();
 	$(canvas_bak).bind('touchstart', touchstart);
 	$(canvas_bak).bind('touchmove', touchmove);
@@ -425,7 +255,15 @@ var draw_graph = function(graphType, obj) {
 	$(canvas_bak).bind('mouseout', mouseout);
 }
 
-//选择功能按钮 修改样式
-function chooseImg(obj) {
-
+function GetRequest() {
+	var url = location.search; // 获取url中"?"符后的字串
+	var obj = new Object();
+	if (url.indexOf("?") != -1) {
+		var str = url.substr(1);
+		strs = str.split("&");
+		for (var i = 0; i < strs.length; i++) {
+			obj[strs[i].split("=")[0]] = (strs[i].split("=")[1]);
+		}
+	}
+	return obj;
 }

+ 40 - 389
screenIos/WXtrialInterface.html

@@ -4,18 +4,10 @@
 <head>
 	<meta charset="utf-8">
 	<title></title>
-	<meta http-equiv="X-UA-Compatible" content="IE=edge">
-	<meta name="viewport" content="initial-scale=1,maximum-scale=1, minimum-scale=1,user-scalable=no">
 	<meta name="x5-orientation" content="portrait" />
 	<meta name="screen-orientation" content="portrait" />
-	<meta name="viewport" content="width=device-width, minimum-scale=1.0,maximum-scale=1.0,user-scalable=no">
-
-	<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
 	<meta name="apple-mobile-web-app-capable" content="yes">
-	<meta name="apple-mobile-web-app-status-bar-style" content="black">
-	<meta name="format-detection" content="telephone=no, email=no">
 	<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
-	<meta name="apple-mobile-web-app-capable" content="yes">
 	<!-- 删除苹果默认的工具栏和菜单栏 -->
 	<meta name="apple-mobile-web-app-status-bar-style" content="black">
 	<!-- 设置苹果工具栏颜��? -->
@@ -29,10 +21,6 @@
 	<meta name="HandheldFriendly" content="true">
 	<!-- 微软的老式浏览��? -->
 	<meta name="MobileOptimized" content="320">
-	<!-- uc强制竖屏 -->
-	<!-- <meta name="screen-orientation" content="portrait"> -->
-	<!-- QQ强制竖屏 -->
-	<!-- <meta name="x5-orientation" content="portrait"> -->
 	<!-- 不能旋转,问题出在这 -->
 	<!-- UC强制全屏 -->
 	<meta name="full-screen" content="yes">
@@ -44,23 +32,17 @@
 	<meta name="x5-page-mode" content="app">
 	<!-- windows phone 点击无高��? -->
 	<meta name="msapplication-tap-highlight" content="no">
-	<title></title>
 	<link rel="stylesheet" type="text/css" href="css/WXtrialInterface.css" />
 </head>
 
 <body class="scroll h-player" style="overscroll-behavior: contain;">
-
 	<div class="container" id="player">
 		<div class="muted" id="btnMuted">
 			<div class="control-right-img" data-id="1">
 				<img src="../static/img/xuanfu_icon.png">
 			</div>
 		</div>
-
 		<div id="wine">
-
-			<!-- <video id="video1" muted="muted" x5-video-orientation="landscape" playsinline="true" autoplay="true"
-				 webkit-playsinline="true" x5-playsinline="true" x5-video-player-type="h5" x5-video-player-fullscreen="false" style="pointer-events: none;"></video> -->
 			<div id="box">
 				<canvas id="playCanvas" width="450" height="800"></canvas>
 			</div>
@@ -72,7 +54,6 @@
 				<div class="PictureQuality" data-id="400000">极速</div>
 				<div class="PictureQuality" data-id="400000">自动</div>
 			</div>
-
 			<div class="operation">
 				<div class="upload" id="showsuss" data-text="uploads">
 					<img src="../static/img/wx/shangchuan_icon.png">
@@ -87,98 +68,64 @@
 					<div>退出</div>
 				</div>
 			</div>
-
 		</div>
 		<div class="bottommains">
 			<div class="botmat1">
 				<div class="botmat1img" data-text="gengduo">
 					<img src="../static/img/wx/gengduo_icon.png">
 				</div>
-
 			</div>
 			<div class="botmat1">
 				<div class="botmat1img" data-text="home">
 					<img src="../static/img/wx/home_icon.png">
 				</div>
-
 			</div>
 			<div class="botmat1">
 				<div class="botmat1img" data-text="return">
 					<img src="../static/img/wx/fanhui_icon.png">
 				</div>
-
 			</div>
 		</div>
-
 		<div class="mainbox" style="display: none;">
 			<div class="boxTitle">提示</div>
 			<div class="boxText">
 				<div>由于小程序的功能限制,此功能暂时</div>
 				<div>无法使用,请下载APP使用更多功能</div>
-
 			</div>
 			<div class="boxbt" onclick="cp(document.getElementById('user_ref_id'));">立即前往下载</div>
-
 			<div class="boximg"><img src="../static/img/wx/guanbi_icon.png"></div>
 		</div>
-
 		<div class="sbox" style="display: none;">
 			<div class="sboxText">下载地址已复制到剪切板</div>
 			<div class="sboxbu">确定</div>
 		</div>
-
 	</div>
-
 	<div id="copy-txt" style="position: absolute;opacity: 0;">
 		<span id="user_ref_id">www.androidsCloud.com</span>
 	</div>
-
 	<script type="text/javascript" src="https://res.wx.qq.com/open/js/jweixin-1.3.2.js"></script>
-	<script src="../static/js/jquery-1.11.0.min.js"></script>
+	<script type="text/javascript" src="../static/js/jquery-1.11.0.min.js"></script>
 	<!-- ffm软解 -->
 	<script type="text/javascript" src="helper.js"></script>
 	<script type="text/javascript" src="pcm-player.js"></script>
 	<script type="text/javascript" src="webgl.js"></script>
-	<!--  音频-->
-	<!-- <script src="../static/js/classlist.js"></script>
-		<script src="../static/js/players.js"></script>
-		<script src="../static/js/auroraplayer.js"></script>
-		<script src="../static/js/aurora.js"></script>
-		<script src="../static/js/aac.js"></script>
-		<script src="../static/js/web.js?id=101"></script> -->
-	<!-- <script src="../static/js/webapk.js"></script> -->
-	<!--  视频-->
-
-	<!-- <script type="text/javascript" src="../static/js/Decoder.js"></script>
-		<script type="text/javascript" src="../static/js/YUVCanvas.js"></script>
-		<script type="text/javascript" src="../static/js/Player.js"></script> -->
-	<script src="https://cdn.bootcss.com/vConsole/3.2.0/vconsole.min.js"></script>
-	<script src="WXdraw.js?id=105"></script>
+	<script type="text/javascript" src="https://cdn.bootcss.com/vConsole/3.2.0/vconsole.min.js"></script>
+	<script type="text/javascript" src="WXdraw.js?id=105"></script>
 
 	<script>
 		var topwinHeight = window.screen.height - window.innerHeight + 30; //计算title top 头部
 		$('#wine').css({
 			"width": window.screen.width,
 			"height": window.screen.height - topwinHeight - 20,
-			"position": "absolute",
-
+			"position": "absolute"
 		})
 		var winese = document.createElement("wine");
 		wine.style.top = "-" + winese + 'px';
 
 		var url = window.location.href;
-		url = url.split('/')
-		// var baseUrl = window.location.href; //"http://192.168.31.20"
-		// var baseUrl = 'https://'+url[2] //url[2] //'http://192.168.31.159'//'http://' + url[2] 
-		var query = window.location.search.substring(1);
-		// query = "clientType=1&cardIp=14.215.128.96&port=2012&sn=RK3930C2301900012&demoTime=3600&id=377&diskName=SC93mBww"
-		var vars = query.split("&");
-		console.log(vars)
-		// var baseUrl = 'http://192.168.31.20'
-		// var baseUrl = 'test.androidscloud.com'
-		// var baseUrl = "http://192.168.199.243";
+		url = url.split('/');
 		var baseUrl = "http://192.168.199.243";
-		var data = {}
+		var form = {}
 		//			 审核
 		$.ajax({
 			url: baseUrl + "/api/user/v1/config/download/isShow",
@@ -186,260 +133,50 @@
 			type: 'get',
 			dataType: 'json',
 			success: function (data) {
-
 				if (data.data) {
 					$("#showsuss").show()
 				} else {
 					$("#showsuss").hide()
 				}
-				//                       
 			}
 		})
-		var clientType = vars.find(e => {
-			return e.startsWith('clientType')
-		}) || ''
-		// console.log(clientType)
-		data.clientType = clientType.substring(11, clientType.length)
-		//			小程序直接进入
-		var diskName = vars.find(e => {
-			return e.startsWith('diskName')
-		}) || ''
-
-		data.diskName = diskName.substring(9, diskName.length)
-
-		// document.title = decodeURI(data.diskName)
-		if (data.clientType == 1) {
-			var cardIp = vars.find(e => {
-				return e.startsWith('cardIp')
-			}) || ''
-			var port = vars.find(e => {
-				return e.startsWith('port')
-			}) || ''
-
-			var sn = vars.find(e => {
-				return e.startsWith('sn')
-			}) || ''
-			var demoTime = vars.find(e => {
-				return e.startsWith('demoTime')
-			}) || ''
-			var id = vars.find(e => {
-				return e.startsWith('id')
-			}) || ''
-
-
-			data.clientType = clientType.substring(11, clientType.length)
-
-			data.cardIp = cardIp.substring(7, cardIp.length)
-
-			data.port = port.substring(5, port.length)
-
-			data.sn = sn.substring(3, sn.length)
-
-			data.demoTime = demoTime.substring(9, demoTime.length)
-			data.id = id.substring(3, id.length)
-			console.log("打印sn卡", data.sn)
-
-		} else if (data.clientType == 2) { //分享屏幕
-			console.log("走到分享屏幕里面啦==========", data.clientTypes);
+		var parameters = GetRequest();
+		form.clientType = parameters('clientType')
+		form.diskName = parameters('clientType')
+
+		if (form.clientType == 1) {
+			form.cardIp = parameters['cardIp'];
+			form.port = parameters['port'];
+			form.sn = parameters['sn'];
+			form.demoTime = parameters['demoTime'];
+			form.id = parameters['id'];
+		} else if (form.clientType == 2) { // 分享屏幕
 			$(".leftmains").css({
 				"right": "-4rem"
 			})
 			$('.leftmains').hide()
 			$('.bottommains').hide()
 			$('#btnMuted').hide()
-			let ip = vars.find(e => {
-				return e.startsWith('ip')
-			}) || ''
-			var username = vars.find(e => {
-				return e.startsWith('username')
-			}) || ''
-			var id = vars.find(e => {
-				return e.startsWith('id')
-			}) || ''
-			var userCardId = vars.find(e => {
-				return e.startsWith('userCardId')
-			}) || ''
-			data.id = id.substring(3, id.length)
-			data.username = username.substring(9, username.length)
-			data.ip = ip.substring(3, ip.length)
-			data.userCardId = userCardId.substring(11, userCardId.length)
+
+			form.id = parameters['id'];
+			form.username = parameters['username'];
+			form.ip = parameters['ip'];
+			form.userCardId = parameters['userCardId'];
 		} else {
-			// $(".leftmains").css({
-			// 					"right":"-4rem"
-			// 				})
-			// 	$('.leftmains').hide()
-			// 	$('.bottommains').hide()
-			// 	$('#btnMuted').hide()
-			var username = vars.find(e => {
-				return e.startsWith('username')
-			}) || ''
-
-			var userCardId = vars.find(e => {
-				return e.startsWith('userCardId')
-			}) || ''
-			data.username = username.substring(9, username.length)
-			data.userCardId = userCardId.substring(11, userCardId.length)
-			console.log(data.ip)
+			form.username = parameters['username'];
+			form.userCardId = parameters['userCardId'];
 		}
 
-
-		//           心跳
-		//			var time = 1000 * 30;
-		//			var interval;
-		//			fun()
-		//
-		//			function run() {
-		//
-		//				interval = setInterval(fun, time);
-		//			}
-		//
-		//			function fun() {
-		//				$.ajax({
-		//					url: baseUrl + "/api/game/v1/cloudGame/dev/get/cardSn",
-		//					data: {
-		//						sn: data.sn
-		//					},
-		//					type: 'get',
-		//					dataType: 'json',
-		//					success: function(data) {
-		//
-		//					}
-		//				})
-		//
-		//			};
-		//			run();
-		// data.clientType=1
-		// data.sn="RK3930C2301900044"
-		// data.cardIp="14.215.128.96"
-		// data.port=2044
-
 		var orientation = 0 //0 竖屏,1横屏
-		var winHeight = window.screen.height - window.innerHeight
-		// var urlss = url[2]
-		// var urlss='192.168.31.20'
-		// var urlss = "14.215.128.96"
-		var urlss = 'test.androidscloud.com'
+
 		document.body.addEventListener('touchmove', function (e) {
 			e.preventDefault()
 		}, {
 			passive: false
 		})
 
-		// 
-		// urlss = "14.215.128.96"
-		// console.log()
-		// data.clientType = 1
-		// data.sn="RK3930C2301900044"
-		// data.cardIp="14.215.128.96"
-		// data.port=2044
-		// if (data.clientType == 3) {
-		// 	var players = AV.Player.fromWebSocket("wss://" + urlss + '/authVideoWebSocket?' + "clientType=" + data.clientType +
-		// 		"&username=" + data.username + "&userCardId=" + data.userCardId);
-		// } else if (data.clientType == 2) {
-		// 	// var players = AV.Player.fromWebSocket("wss://" + urlss + '/shareWebSocket?' + "clientType=" + data.clientType +
-		// 	// 	"&username=" + data.username + "&userCardId=" + data.userCardId + "&ip=" + data.ip);
-
-		// 	var players = AV.Player.fromWebSocket(
-		// 		"wss://test.androidscloud.com/videoWebSocket?clientType=1&cardIp=14.215.128.96&port=2005&sn=RK3930C2301900005");
-		// } else {
-		// 	var players = AV.Player.fromWebSocket("wss://" + urlss + '/videoWebSocket?' + "clientType=" + data.clientType +
-		// 		"&cardIp=" + data.cardIp + "&port=" + data.port + "&sn=" + data.sn);
-		// }
-		// // 			debugger
-		// var players = AV.Player.fromWebSocket('ws://14.215.128.96/authVideoWebSocket?clientType=3&username=WqXTc1593762177&userCardId=377');
-		// players.play();
-		// players.volume = 100
-		//var players = AV.Player.fromWebSocket('ws://14.215.128.96/videoWebSocket?clientType=0&cardIp=30.30.30.58&port=9100&sn=RK3930C2301900060');
-
-		var warid = {
-			id: data.id,
-			type: 1,
-			sn: data.sn
-		}
-		//结束时间 type=2
-		var warids = {
-			id: data.id,
-			type: 2,
-			sn: data.sn
-		}
-
-		//			$.ajax({})
-
-		// 关闭浏览器
-		//			window.onbeforeunload = function() {}
-
-		//撤销的array
-		var cancelList = new Array();
-		//撤销的次数
-		var cancelIndex = 0;
-		var inputType = 0 //输入类型 0:手写,1:键盘输入
-		//判断是否ie
-		var IE_HACK = (/msie/i.test(navigator.userAgent) &&
-			!/opera/i.test(navigator.userAgent));
-		//			云手机相关逻辑	 
-		// var player = new Player({
-		// 	size: {
-		// 		width: 1280,
-		// 		height: 720
-		// 	}
-		// });
-		// var secanv = document.getElementById("wine");
-
-		// secanv.appendChild(player.canvas);
-		// console.log("player=========>>>>", player);
-		// console.log("secanv>>>>", secanv);
-		//             &cardIp="+data.data.extranetIp+"&port="+data.data.extranetPort+"&sn="+data.data.sn
-
-		$(function () {
-			initCanvas();
-		});
-		//初始化
-		var initCanvas = function () {
-
-		}
-
-		window.onload = function () { };
-
-		$("#voew").on("click", function () { })
-
-		$("#box").on("click", function () {
-			//				draw_graph('pencil', this)
-
-		})
-
-		// console.log(player)
-		$('#mocan').on('click', function () {
-			draw_graph('pencil', this)
-		})
-
-		// //初始化一下就可以了,
-		let vConsole = new VConsole();
-		//			 //你打印的数据 比如
-		console.log('test');
-		//就可像小程序一样的看了和调试了。
-		$('.no-ne-an').on('click', function () {
-			//结束时间 type=2
-			let warids = {
-				id: data.id,
-				type: 2,
-				sn: data.sn
-			}
-			$.ajax({
-				url: baseUrl + "/api/game/v1/cloudGame/dev/getSn",
-				data: warid,
-				type: 'get',
-				dataType: 'json',
-				success: function (data) {
-					history.go(-1)
-					if (data.status == 0) {
-
-					} else {
-						alert(data.msg)
-					}
-					//
-				}
-			})
-		})
+		// 初始化一下就可以了,
+		var vConsole = new VConsole();
 
 		var btnMuted = document.querySelector("#btnMuted");
 		btnMuted && (function () {
@@ -469,7 +206,7 @@
 					left: rect.left,
 					width: rect.width,
 					height: rect.height
-				}; //部分低版本浏览器,该属性为只读
+				}; // 部分低版本浏览器,该属性为只读
 				if (loc) {
 					rect.left = loc.left;
 					rect.top = loc.top;
@@ -485,7 +222,6 @@
 				left = Math.max(left, minX);
 				top = Math.min(top, maxY);
 				top = Math.max(top, minY);
-				console.log(rect.top, top, loc);
 				if (loc || top !== rect.top || left !== rect.left) {
 					btnMuted.style.cssText += "left:" + left + "px;top:" + top + "px;";
 				}
@@ -535,23 +271,15 @@
 					fixLoc();
 				} else {
 					//按点击处理
-
 					var set = $('.control-right-img').attr("data-id")
 					if (set == '1') {
 						$('.control-right-img').attr({
 							"data-id": "2"
 						})
-						//							$('.control-right-img').find('img').attr({
-						//								"src": "../static/img/musicturn.png"
-						//							})
-						// players.volume = 100
 						$(".leftmains").css({
 							"right": "-4rem"
 						})
-						// console.log(players)
-						// players.play();
 					} else {
-
 						$('.control-right-img').attr({
 							"data-id": "1"
 						})
@@ -559,17 +287,10 @@
 						$(".leftmains").css({
 							"right": "0rem"
 						})
-						//							$('.control-right-img').find('img').attr({
-						//								"src": "../static/img/musicfalse.png"
-						//							})
-						// players.volume = 0
-						// players.off('pause');
-						// players.pause();
-						// var embed = document.embedPlay;
-						// console.log(players, "fdsfdsf")
 					}
 				}
 			}
+
 			btnMuted.addEventListener("touchstart", function (e) {
 				e.preventDefault();
 				toMove = false;
@@ -585,7 +306,6 @@
 				window.addEventListener("touchend", touchend, {
 					passive: false
 				});
-
 			}, {
 				passive: false
 			});
@@ -602,13 +322,13 @@
 			})
 		})
 
-		//			剪切板
+		// 剪切板
 		$(".sboxbu").on("click", function () {
 			$(".sbox").css({
 				"display": "none"
 			})
 		})
-		//			剪切板
+		// 剪切板
 		$(".uploadss").on("click", function () {
 			$(".sbox").css({
 				"display": "none"
@@ -658,7 +378,6 @@
 
 		Module = {};
 		Module.onRuntimeInitialized = function () {
-			console.log("Wasm 加载成功!")
 			isFinish = true;
 		}
 
@@ -666,24 +385,20 @@
 			var retPtr = Module._malloc(4 * 5 * 1024); //接收的数据
 			var inputPtr = Module._malloc(4 * data.length); //输入数据
 
-			for (i = 0; i < data.length; i++) {
+			for (var i = 0; i < data.length; i++) {
 				Module.HEAPU8[(inputPtr) + i] = data[i]; //转换为堆数据
 			}
 
 			var pcmLen = Module._feedData(retPtr, inputPtr, data.length);
 
 			if (pcmLen >= 0) {
-				//console.log("%d帧 aac 解码成功, %d", decodeCount, pcmLen);
 				var pcmData = new Uint8Array(pcmLen);
-				for (i = 0; i < pcmLen; i++) {
+				for (var i = 0; i < pcmLen; i++) {
 					pcmData[i] = Module.HEAPU8[(retPtr) + i]
 				}
 
 				player.feed(pcmData);
-			} else {
-				console.log("%d帧 aac 解码失败, %d", decodeCount, pcmLen);
 			}
-
 			decodeCount++;
 			Module._free(inputPtr);
 			Module._free(retPtr);
@@ -691,30 +406,18 @@
 		var decodeWoker = new Worker('decoder.js');
 		var myVideo = document.getElementById("playCanvas");
 		decodeWoker.onmessage = function (event) {
-			// console.log("decodeWoker.onmessage",event.data)
 			var objData = event.data;
 
 			switch (objData.cmd) {
 				case 0:
-					// console.log(objData.data);
 					break;
 				case 1:
-					var time = new Date().getTime();
 					webglPlayer.renderFrame(objData.data, 720, 1280, 720 * 1280, (720 / 2) * (1280 / 2));
-				//console.log("渲染耗时", new Date().getTime() - time + "ms");break;
 			}
 
 		}
 
-
-		if (typeof (Worker) !== "undefined") {
-			console.log("支持webworker");
-		} else {
-			alert("不支持webworker");
-		}
-
 		var isFinish = false;
-		// this.canvas = document.getElementById("playCanvas");
 		var webglPlayer = new WebGLPlayer(myVideo, {
 			preserveDrawingBuffer: false
 		});
@@ -731,31 +434,16 @@
 			}
 			return obj;
 		}
-		var parameters = GetRequest();
 		var ip = parameters["ip"];
 		var webSocketWorker = new Worker('websocket.js?ip=' + ip);
-		var startTime = new Date().getTime();
-
-
 
 		webSocketWorker.onmessage = function (event) {
 			decodeWoker.postMessage(event.data);
-			// var input = new Uint8Array(decodeWoker.postMessage(event.data));
-			var input = event.data
-			// decodeAAC(event.data)
-			console.log("音频-----------");
+			var input = event.data;
 			if (input[0] == 0xff) {
 				decodeAAC(input);
-			} else { }
-		}
-
-		document.addEventListener("visibilitychange", () => {
-			if (document.visibilityState == "visible") {
-
-			} else {
-				console.log("页面不可见");
 			}
-		});
+		}
 
 		function Close() { //webworker 关闭,清理
 			var cmd = {
@@ -766,43 +454,13 @@
 			webSocketWorker.postMessage(cmd);
 			webSocketWorker.terminate();
 		}
-		// myVideo.onmousedown = function(event) {
-		// 	console.log("22222")
-		// 	//放在此处只是为了方便演示,实际使用中查找横竖屏只要刚连接上时调用一次就好。	
-		// 	//var checkBuffer = GetScreenState();
-		// 	//ws.send(checkBuffer);
-
-		// if(!isFeed)
-		// {
-		// 	console.log("重新申请I帧");
-		// 	requestTime = new Date().getTime();			
-		// 	var buffer = RequestIFrame();
-		// 	ws.send(buffer);
-		// }
-
-		// 	//console.log("报文 %s", PrintArry(buffer));
-
-
-		// 	if (event.button == 0) {
-		// 		var posX = event.offsetX * 1080 * 1.0 / myVideo.clientWidth;
-		// 		var posY = event.offsetY * 1920 * 1.0 / myVideo.clientHeight;
-		// 		var buffer = ExexuteMouseDown(posX.toString(), posY.toString());
-		// 		// ws.send(buffer);
-		// 		// decodeWoker.postMessage(event.data);
-		// 		console.log("打印buffer", PrintArry(buffer))
-		// 		decodeWoker.postMessage(buffer);
-		// 		isDrag = true;
-		// 	}
-
-		// }
+
 		var isDrag = false;
 		myVideo.onmousedown = function (event) {
-			console.log('5555555555安卓卡', data.sn)
 			if (event.button == 0) {
 				var posX = event.offsetX * 720 * 1.0 / myVideo.clientWidth;
 				var posY = event.offsetY * 1280 * 1.0 / myVideo.clientHeight;
-				var buffer = ExexuteMouseDown(posX.toString(), posY.toString(), data.sn);
-				// console.log('55555', buffer)
+				var buffer = ExexuteMouseDown(posX.toString(), posY.toString(), form.sn);
 				webSocketWorker.postMessage(buffer);
 				isDrag = true;
 			}
@@ -813,29 +471,22 @@
 			if (isDrag && event.button == 0) {
 				var posX = event.offsetX * 720 * 1.0 / myVideo.clientWidth;
 				var posY = event.offsetY * 1280 * 1.0 / myVideo.clientHeight;
-				var buffer = ExexuteMouseMove(posX.toString(), posY.toString(), data.sn);
-				// ws.send(buffer);
-				console.log('55555', buffer)
+				var buffer = ExexuteMouseMove(posX.toString(), posY.toString(), form.sn);
 				webSocketWorker.postMessage(buffer);
-				console.log("移动位置 %d, %d", posX, posY);
 			}
 
 		}
 
 		myVideo.onmouseup = function (event) {
-			console.log('5555555555')
 			isDrag = false;
 			var posX = event.offsetX * 720 * 1.0 / myVideo.clientWidth;
 			var posY = event.offsetY * 1280 * 1.0 / myVideo.clientHeight;
-			var buffer = ExexuteMouseUp(posX.toString(), posY.toString(), data.sn);
-			// ws.send(buffer);
+			var buffer = ExexuteMouseUp(posX.toString(), posY.toString(), form.sn);
 			webSocketWorker.postMessage(buffer);
-
 		}
 
 		myVideo.onkeydown = function (event) {
-			console.log('5555555555')
-			ExexuteKeyDown(e.keyCode, data.sn);
+			ExexuteKeyDown(e.keyCode, form.sn);
 		}
 	</script>
 	<script type="text/javascript" src="aac.js"></script>

File diff suppressed because it is too large
+ 214 - 242
screenIos/helper.js


+ 0 - 1
screenIos/pcm-player.js

@@ -117,7 +117,6 @@ PCMPlayer.prototype.flush = function() {
     if (this.startTime < this.audioCtx.currentTime) {
         this.startTime = this.audioCtx.currentTime;
     }
-    //console.log('start vs current '+this.startTime+' vs '+this.audioCtx.currentTime+' duration: '+audioBuffer.duration);
     bufferSource.buffer = audioBuffer;
     bufferSource.connect(this.gainNode);
     bufferSource.start(this.startTime);

+ 13 - 28
screenIos/websocket.js

@@ -1,12 +1,7 @@
 self.importScripts("helper.js");
-// self.importScripts("pcm-player.js");
-// self.importScripts("pcm-player.min.js");
 var parameters = GetRequest();
 var ip = parameters["ip"];
 var socketURL = "ws://192.168.198.82:9100/card?cardIp=" + ip;
-// var socketURL = "14.215.128.98:14102";
-// var socketURL = "ws://14.215.128.98:14102"
-// socketURL = "ws://127.0.0.1:8081"
 
 doConnect();
 
@@ -15,34 +10,24 @@ function doConnect() {
 	ws.binaryType = 'arraybuffer';
 
 	ws.onclose = function (e) {
-		console.log('websocket 断开: ' + e.code + ' ' + e.reason + ' ' + e.wasClean);
-		console.log("时间: " + new Date() + e);
 		alert("websocket连接断开,准备重连");
 		doConnect();
 	}
 
-	ws.addEventListener('open', function(event) {
-		console.log("发送配置帧");
-		// ws.send(ConfigChannel("RK3923C1201900139"));
+	ws.addEventListener('open', function (event) {
 		ws.send(ConfigChannel("RK3923C1201900139"));
 		var buffer = RequestIFrame();
 		ws.send(buffer);
 	});
 
-	self.addEventListener('message', function(e) {
-		// console.log("收到数据", e.data);
+	self.addEventListener('message', function (e) {
 		ws.send(e.data);
-		console.log('ws', ws)
 	}, false);
-	ws.addEventListener('message', function(event) {
-		//var objData = {type:0, data:input};
+	ws.addEventListener('message', function (event) {
 		var input = new Uint8Array(event.data);
 
 		if (input[0] == 0xff) {
-			// console.log("1111111")
-			// decodeAAC(input);
 			self.postMessage(input);
-
 		} else {
 			self.postMessage(input);
 		}
@@ -50,14 +35,14 @@ function doConnect() {
 }
 
 function GetRequest() {
-  var url = location.search; // 获取url中"?"符后的字串
-  var obj= new Object();
-  if (url.indexOf("?") != -1) {
-    var str = url.substr(1);
-    strs = str.split("&");
-    for(var i = 0; i < strs.length; i ++) {
-      obj[strs[i].split("=")[0]]=(strs[i].split("=")[1]);
-    }
-  }
-  return obj;
+	var url = location.search; // 获取url中"?"符后的字串
+	var obj = new Object();
+	if (url.indexOf("?") != -1) {
+		var str = url.substr(1);
+		strs = str.split("&");
+		for (var i = 0; i < strs.length; i++) {
+			obj[strs[i].split("=")[0]] = (strs[i].split("=")[1]);
+		}
+	}
+	return obj;
 }