Browse Source

feat(): 重置分支到master-new

zengzhixiang 2 years ago
parent
commit
b43b96f14a
100 changed files with 511 additions and 21628 deletions
  1. 13 0
      .editorconfig
  2. 21 0
      .env.development
  3. 18 0
      .env.production
  4. 19 0
      .env.test
  5. 19 0
      .env.uat
  6. 4 0
      .eslintignore
  7. 20 0
      .eslintrc.js
  8. 92 0
      .gitignore
  9. 0 5
      .idea/.gitignore
  10. 0 12
      .idea/android-cloud-H5.iml
  11. 0 6
      .idea/misc.xml
  12. 0 8
      .idea/modules.xml
  13. 0 6
      .idea/vcs.xml
  14. 1 0
      .npmrc
  15. 97 0
      .prettierignore
  16. 5 0
      .prettierrc
  17. 4 0
      .stylelintignore
  18. 0 15
      .vscode/launch.json
  19. 0 603
      CloudGames/experienceCenter.html
  20. 0 1096
      CloudGames/trialInterface.html
  21. 84 0
      README.md
  22. 4 0
      api/activity/invite-user.js
  23. 2 0
      api/message/phone.js
  24. 7 0
      api/public/agreement.js
  25. 2 0
      api/user/client.js
  26. 6 0
      api/wx/index.js
  27. BIN
      assets/image/activity/invite-user/bg@2x.png
  28. BIN
      assets/image/activity/invite-user/box@2x.png
  29. BIN
      assets/image/activity/invite-user/cybz-content@2x.png
  30. BIN
      assets/image/activity/invite-user/share-button@2x.png
  31. 7 0
      assets/style/main.scss
  32. 1 0
      assets/style/variables.less
  33. 6 0
      assets/style/variables.scss
  34. 0 415
      decoker/screenAndroid/WXdraw.js
  35. 0 1002
      decoker/screenAndroid/WXtrialInterface.html
  36. 0 161
      decoker/screenAndroid/control.js
  37. 0 340
      decoker/screenAndroid/css/WXtrialInterface.css
  38. 0 125
      decoker/screenAndroid/helper.js
  39. 0 185
      decoker/screenAndroid/helper5555.js
  40. 0 1728
      decoker/screenAndroid/home.html
  41. 0 1702
      decoker/screenAndroid/homeNew.html
  42. BIN
      decoker/screenAndroid/images/loader-thumb.jpg
  43. BIN
      decoker/screenAndroid/img/homebg.png
  44. 0 411
      decoker/screenAndroid/index - 副本.html
  45. 0 382
      decoker/screenAndroid/index.html
  46. 0 669
      decoker/screenAndroid/mobile.vue
  47. 0 3
      decoker/screenAndroid/package-lock.json
  48. 0 173
      decoker/screenAndroid/temp.html
  49. 0 428
      decoker/screenIosEdit/WXdraw.js
  50. 0 811
      decoker/screenIosEdit/WXtrialInterface.html
  51. 0 340
      decoker/screenIosEdit/css/WXtrialInterface.css
  52. 0 134
      decoker/screenIosEdit/css/homePage.css
  53. 0 163
      decoker/screenIosEdit/decoder.js
  54. 0 1
      decoker/screenIosEdit/ffmpeghelper.js
  55. BIN
      decoker/screenIosEdit/ffmpeghelper.wasm
  56. 0 1
      decoker/screenIosEdit/ffmpeghelper.worker.js
  57. 0 269
      decoker/screenIosEdit/helper.js
  58. 0 185
      decoker/screenIosEdit/helper55.js
  59. 0 1239
      decoker/screenIosEdit/home.html
  60. 0 1192
      decoker/screenIosEdit/homeNew.html
  61. 0 100
      decoker/screenIosEdit/homePage.html
  62. BIN
      decoker/screenIosEdit/img/homebg.png
  63. 0 109
      decoker/screenIosEdit/index.html
  64. 0 669
      decoker/screenIosEdit/mobile.vue
  65. 0 126
      decoker/screenIosEdit/pcm-player.js
  66. 0 66
      decoker/screenIosEdit/websocket.js
  67. 0 309
      decoker/static/js/draw.js
  68. 0 49
      highDemo/index.html
  69. 0 3671
      highDemo/wfs.js
  70. 0 42
      index.html
  71. 12 0
      jsconfig.json
  72. 2 0
      layouts/default.js
  73. 22 0
      layouts/empty.vue
  74. 43 0
      layouts/error.vue
  75. 0 468
      microserviceUserH5/static/css/changePhoneActivity.css
  76. 0 716
      microserviceUserH5/static/css/doubleChristmasActivity.css
  77. 0 604
      microserviceUserH5/static/css/exchangePhoneActivity.css
  78. 0 168
      microserviceUserH5/static/css/experience.css
  79. 0 721
      microserviceUserH5/static/css/springFestivalActivity.css
  80. BIN
      microserviceUserH5/static/img/doubleChristmasActivity/bg.png
  81. BIN
      microserviceUserH5/static/img/doubleChristmasActivity/buyphone2.png
  82. BIN
      microserviceUserH5/static/img/doubleChristmasActivity/distribution-reward-btn.png
  83. BIN
      microserviceUserH5/static/img/doubleChristmasActivity/finish-btn.png
  84. BIN
      microserviceUserH5/static/img/doubleChristmasActivity/footer-cloud.png
  85. BIN
      microserviceUserH5/static/img/doubleChristmasActivity/get-btn.png
  86. BIN
      microserviceUserH5/static/img/doubleChristmasActivity/home_list_icon_xingyao.png
  87. BIN
      microserviceUserH5/static/img/doubleChristmasActivity/hongbao.png
  88. BIN
      microserviceUserH5/static/img/doubleChristmasActivity/middle-cloud.png
  89. BIN
      microserviceUserH5/static/img/doubleChristmasActivity/reward-tip-img.png
  90. BIN
      microserviceUserH5/static/img/doubleChristmasActivity/reward.png
  91. BIN
      microserviceUserH5/static/img/doubleChristmasActivity/rule.png
  92. BIN
      microserviceUserH5/static/img/doubleChristmasActivity/tab-bg.png
  93. BIN
      microserviceUserH5/static/img/doubleChristmasActivity/three-reward.png
  94. BIN
      microserviceUserH5/static/img/doubleChristmasActivity/time-title-bg.png
  95. BIN
      microserviceUserH5/static/img/doubleChristmasActivity/tip.png
  96. BIN
      microserviceUserH5/static/img/doubleChristmasActivity/top-banner.png
  97. BIN
      microserviceUserH5/static/img/springFestivalActivity/award.png
  98. BIN
      microserviceUserH5/static/img/springFestivalActivity/awardBg.png
  99. BIN
      microserviceUserH5/static/img/springFestivalActivity/awardResultBg.png
  100. 0 0
      microserviceUserH5/static/img/springFestivalActivity/awardResultCard.png

+ 13 - 0
.editorconfig

@@ -0,0 +1,13 @@
+# editorconfig.org
+root = true
+
+[*]
+indent_style = space
+indent_size = 2
+end_of_line = lf
+charset = utf-8
+trim_trailing_whitespace = true
+insert_final_newline = true
+
+[*.md]
+trim_trailing_whitespace = false

+ 21 - 0
.env.development

@@ -0,0 +1,21 @@
+# 开发环境变量
+MODE = "development"
+
+# 接口服务器
+API_PREFIX = "/api"
+API_HOST = "192.168.31.194"
+API_PORT = 80
+API_HTTPS = false
+
+# 文件服务器
+FILE_PREFIX = "/file"
+FILE_HOST = "file.phone.androidscloud.com"
+FILE_PORT = 8121
+FILE_UPLOAD_KEY = "e858720c23ke455aa60e"
+FILE_HTTPS = true
+
+# 友盟统计
+UMENG_DATASOURCES_APP_KEY = "62ad961905844627b5b8638c"
+
+# 百度统计
+BAIDU_TONGJI_KEY = "fb2fdf29d47485e36ea2ec253bf6ac06"

+ 18 - 0
.env.production

@@ -0,0 +1,18 @@
+MODE = "production"
+API_PREFIX = "/api"
+API_HOST = "client.phone.androidscloud.com"
+API_PORT = 443
+API_HTTPS = true
+
+# 文件服务器
+FILE_PREFIX = "/"
+FILE_HOST = "file.phone.androidscloud.com"
+FILE_PORT = 8210
+FILE_UPLOAD_KEY = "edv834e74a9c43eaac02"
+FILE_HTTPS = true
+
+# 友盟统计
+UMENG_DATASOURCES_APP_KEY = "62ad961905844627b5b8638c"
+
+# 百度统计
+BAIDU_TONGJI_KEY = "fb2fdf29d47485e36ea2ec253bf6ac06"

+ 19 - 0
.env.test

@@ -0,0 +1,19 @@
+# 测试环境变量
+MODE = "test"
+API_PREFIX = "/api"
+API_HOST = "gntest.phone.androidscloud.com"
+API_PORT = 1280
+API_HTTPS = false
+
+# 文件服务器
+FILE_PREFIX = "/"
+FILE_HOST = "file.phone.androidscloud.com"
+FILE_PORT = 8210
+FILE_UPLOAD_KEY = "3dn9b4585511476691c6"
+FILE_HTTPS = true
+
+# 友盟统计
+UMENG_DATASOURCES_APP_KEY = "62ad961905844627b5b8638c"
+
+# 百度统计
+BAIDU_TONGJI_KEY = "fb2fdf29d47485e36ea2ec253bf6ac06"

+ 19 - 0
.env.uat

@@ -0,0 +1,19 @@
+# 预生产环境变量
+MODE = "uat"
+API_PREFIX = "/api"
+API_HOST = "prese.phone.androidscloud.com"
+API_PORT = 443
+API_HTTPS = true
+
+# 文件服务器
+FILE_PREFIX = "/"
+FILE_HOST = "file.phone.androidscloud.com"
+FILE_PORT = 8210
+FILE_UPLOAD_KEY = "347905r86eb745a1sc38"
+FILE_HTTPS = true
+
+# 友盟统计
+UMENG_DATASOURCES_APP_KEY = "62ad961905844627b5b8638c"
+
+# 百度统计
+BAIDU_TONGJI_KEY = "fb2fdf29d47485e36ea2ec253bf6ac06"

+ 4 - 0
.eslintignore

@@ -0,0 +1,4 @@
+node_modules/
+.nuxt/
+static/
+dist/

+ 20 - 0
.eslintrc.js

@@ -0,0 +1,20 @@
+module.exports = {
+  root: true,
+  env: {
+    browser: true,
+    node: true,
+  },
+  parserOptions: {
+    parser: '@babel/eslint-parser',
+    requireConfigFile: false,
+  },
+  extends: ['@nuxtjs', 'plugin:nuxt/recommended', 'prettier'],
+  plugins: [],
+  // add your custom rules here
+  rules: {
+    'no-var': ['warn'],
+    'no-unused-vars': ['warn'],
+    'vue/multi-word-component-names': ['off'],
+  },
+  ignorePatterns: ['node_modules/', 'static/'],
+};

+ 92 - 0
.gitignore

@@ -0,0 +1,92 @@
+# Created by .ignore support plugin (hsz.mobi)
+### Node template
+# Logs
+/logs
+*.log
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+
+# Runtime data
+pids
+*.pid
+*.seed
+*.pid.lock
+
+# Directory for instrumented libs generated by jscoverage/JSCover
+lib-cov
+
+# Coverage directory used by tools like istanbul
+coverage
+
+# nyc test coverage
+.nyc_output
+
+# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
+.grunt
+
+# Bower dependency directory (https://bower.io/)
+bower_components
+
+# node-waf configuration
+.lock-wscript
+
+# Compiled binary addons (https://nodejs.org/api/addons.html)
+build/Release
+
+# Dependency directories
+node_modules/
+jspm_packages/
+
+# TypeScript v1 declaration files
+typings/
+
+# Optional npm cache directory
+.npm
+
+# Optional eslint cache
+.eslintcache
+
+# Optional REPL history
+.node_repl_history
+
+# Output of 'npm pack'
+*.tgz
+
+# Yarn Integrity file
+.yarn-integrity
+
+# dotenv environment variables file
+.env
+
+# parcel-bundler cache (https://parceljs.org/)
+.cache
+
+# next.js build output
+.next
+
+# nuxt.js build output
+.nuxt
+
+# Nuxt generate
+dist
+
+# vuepress build output
+.vuepress/dist
+
+# Serverless directories
+.serverless
+
+# IDE / Editor
+.idea
+
+# Service worker
+sw.*
+
+# macOS
+.DS_Store
+
+# Vim swap files
+*.swp
+components.d.ts
+.vscode/

+ 0 - 5
.idea/.gitignore

@@ -1,5 +0,0 @@
-# Default ignored files
-/shelf/
-/workspace.xml
-# Editor-based HTTP Client requests
-/httpRequests/

+ 0 - 12
.idea/android-cloud-H5.iml

@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<module type="WEB_MODULE" version="4">
-  <component name="NewModuleRootManager">
-    <content url="file://$MODULE_DIR$">
-      <excludeFolder url="file://$MODULE_DIR$/.tmp" />
-      <excludeFolder url="file://$MODULE_DIR$/temp" />
-      <excludeFolder url="file://$MODULE_DIR$/tmp" />
-    </content>
-    <orderEntry type="inheritedJdk" />
-    <orderEntry type="sourceFolder" forTests="false" />
-  </component>
-</module>

+ 0 - 6
.idea/misc.xml

@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
-  <component name="JavaScriptSettings">
-    <option name="languageLevel" value="ES6" />
-  </component>
-</project>

+ 0 - 8
.idea/modules.xml

@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
-  <component name="ProjectModuleManager">
-    <modules>
-      <module fileurl="file://$PROJECT_DIR$/.idea/android-cloud-H5.iml" filepath="$PROJECT_DIR$/.idea/android-cloud-H5.iml" />
-    </modules>
-  </component>
-</project>

+ 0 - 6
.idea/vcs.xml

@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
-  <component name="VcsDirectoryMappings">
-    <mapping directory="$PROJECT_DIR$" vcs="Git" />
-  </component>
-</project>

+ 1 - 0
.npmrc

@@ -0,0 +1 @@
+registry = "https://registry.npmmirror.com/"

+ 97 - 0
.prettierignore

@@ -0,0 +1,97 @@
+###
+# Place your Prettier ignore content here
+
+###
+# .gitignore content is duplicated here due to https://github.com/prettier/prettier/issues/8506
+
+# Created by .ignore support plugin (hsz.mobi)
+### Node template
+# Logs
+/logs
+*.log
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+
+# Runtime data
+pids
+*.pid
+*.seed
+*.pid.lock
+
+# Directory for instrumented libs generated by jscoverage/JSCover
+lib-cov
+
+# Coverage directory used by tools like istanbul
+coverage
+
+# nyc test coverage
+.nyc_output
+
+# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
+.grunt
+
+# Bower dependency directory (https://bower.io/)
+bower_components
+
+# node-waf configuration
+.lock-wscript
+
+# Compiled binary addons (https://nodejs.org/api/addons.html)
+build/Release
+
+# Dependency directories
+node_modules/
+jspm_packages/
+
+# TypeScript v1 declaration files
+typings/
+
+# Optional npm cache directory
+.npm
+
+# Optional eslint cache
+.eslintcache
+
+# Optional REPL history
+.node_repl_history
+
+# Output of 'npm pack'
+*.tgz
+
+# Yarn Integrity file
+.yarn-integrity
+
+# dotenv environment variables file
+.env
+
+# parcel-bundler cache (https://parceljs.org/)
+.cache
+
+# next.js build output
+.next
+
+# nuxt.js build output
+.nuxt
+
+# Nuxt generate
+dist
+
+# vuepress build output
+.vuepress/dist
+
+# Serverless directories
+.serverless
+
+# IDE / Editor
+.idea
+
+# Service worker
+sw.*
+
+# macOS
+.DS_Store
+
+# Vim swap files
+*.swp
+# static/

+ 5 - 0
.prettierrc

@@ -0,0 +1,5 @@
+{
+  "semi": true,
+  "singleQuote": true,
+  "trailingComma": "all"
+}

+ 4 - 0
.stylelintignore

@@ -0,0 +1,4 @@
+node_modules/
+.nuxt/
+static/
+dist/

+ 0 - 15
.vscode/launch.json

@@ -1,15 +0,0 @@
-{
-    // 使用 IntelliSense 了解相关属性。 
-    // 悬停以查看现有属性的描述。
-    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
-    "version": "0.2.0",
-    "configurations": [
-        {
-            "type": "pwa-chrome",
-            "request": "launch",
-            "name": "Launch Chrome against localhost",
-            "url": "http://localhost:8080",
-            "webRoot": "${workspaceFolder}"
-        }
-    ]
-}

+ 0 - 603
CloudGames/experienceCenter.html

@@ -1,603 +0,0 @@
-<!DOCTYPE html>
-<html>
-
-<head>
-    <meta charset="utf-8">
-    <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
-    <title>云游戏</title>
-    <link rel="stylesheet" href="../static/css/index.css">
-    <style>
-			.heads {
-				position: absolute;
-				top: 0;
-				left: 0;
-				width: 100%;
-				height: 60px;
-				background: rgba(0, 0, 0, 0.3);
-			}
-			
-			.heads-right {
-				width: 280px;
-				height: 60px;
-			}
-			
-			.heads-img-left {
-				width: 24px;
-				height: 24px;
-				margin-top: 18px;
-				margin-right: 2rem;
-			}
-		}
-		.heads-img-left img {
-			width: 100%;
-			height: 100%;
-		}
-		
-    </style>
-</head>
-
-<body>
-			<div class="heads">
-			<div class="heads-right right">
-				<div class="heads-img-left right">
-					<img src="../static/img/home_icon.png">
-				</div>
-				
-			</div>
-		</div>
-    <div class="containerse">
-        <div class="main">
-            <div class="head-title top-title">
-                <div class="head-text">体验中心</div>
-            </div>
-        </div>
-
-        <div class="site">
-            <div class="wrapper horizontal demo1" ondragstart="return false">
-                <ul class="container" id="containerse">
-
-                </ul>
-
-                <div class="kuan">
-                    <div class="kuan-leth"></div>
-                    <div class="kuan-right"></div>
-                    <img src="../static/img/expenienceCenter/biankuang_tiyanzhongxin_pic.png">
-                    <div class="bt-an">
-                        <!--<img src="img/anniu_icon.png">-->
-                        开始试玩
-                    </div>
-                </div>
-
-                <i class="btn-direct btn-left" id="prev">
-						<img src="../static/img/expenienceCenter/zuo2_icon.png">
-					</i>
-                <i class="btn-direct btn-right" id="nevr">
-						<img src="../static/img/expenienceCenter/you2_icon.png">
-					</i>
-            </div>
-        </div>
-
-        <div class="nav">
-            <!--<div class="nav-gse nav-gse-ave left">
-					<div class="nav-bg ">
-						<div class="nav-buseqw nav-mnaires"> </div>
-						<div class="nav-img">
-							<img src="img/expenienceCenter/youimg.png">
-						</div>
-
-					</div>
-				</div>
-
-				<div class="nav-gse left">
-					<div class="nav-bg ">
-						<div class="nav-buseqw nav-mnai"> </div>
-						<div class="nav-img">
-							<img src="img/expenienceCenter/youimg.png">
-						</div>
-
-					</div>
-				</div>
-
-				<div class="nav-gse left">
-					<div class="nav-bg ">
-						<div class="nav-buseqw nav-mnai"> </div>
-						<div class="nav-img">
-							<img src="img/expenienceCenter/youimg.png">
-						</div>
-
-					</div>
-				</div>-->
-
-            <!--<div class="nav-bg left">
-					<div class="nav-mnai"> </div>
-					 	<div class="nav-img">
-						<img src="img/youimg.png">
-					</div>
-
-				</div>-->
-        </div>
-
-        <div class="mains">
-            <div class="head-title">
-                <div class="head-text">游戏说明</div>
-            </div>
-        </div>
-
-        <div class="site sitenow">
-            <div class="wrapper horizontal demo2 con-bottom" ondragstart="return false">
-                <ul class="container containerss" id="contain2" style="">
-                    <!--<li class="cards_list" n="6" style="position: absolute; left: 50%; transition: all 400ms ease 0s; margin-left: -40px; z-index: 4; opacity: 0.9; transform: scale(0.9, 0.9);">
-							<div class="img" id="bottom_block_0">
-								<img src="img/expenienceCenter/bg.png" alt="">
-							</div>
-						</li>
-						<li class="cards_list" n="7" style="position: absolute; left: 50%; transition: all 400ms ease 0s; margin-left: 80px; z-index: 3; opacity: 0.81; transform: scale(0.81, 0.81);">
-							<div class="img" id="bottom_block_1">
-								<img src="img/expenienceCenter/bg2.png" alt="">
-							</div>
-						</li>
-						<li class="cards_list" n="8" style="position: absolute; left: 50%; transition: all 400ms ease 0s; margin-left: 200px; z-index: 2; opacity: 0.729; transform: scale(0.729, 0.729);">
-							<div class="img" id="bottom_block_2">
-								<img src="img/expenienceCenter/bg2.png" alt="">
-							</div>
-						</li>-->
-
-                </ul>
-                <div class="kuan">
-                    <div class="kuan-leths"></div>
-                    <div class="kuan-rights"></div>
-                    <img src="../static/img/expenienceCenter/biankuang_shuoming_pic.png">
-                    <!--<div class="bt-an">-->
-                    <!--<img src="img/anniu_icon.png">-->
-                    <!--开始试玩-->
-                    <!--</div>-->
-                </div>
-                <i class="btn-direct btn-left">
-						<img src="../static/img/expenienceCenter/zuo2_icon.png">
-					</i>
-                <i class="btn-direct btn-right">
-						<img src="../static/img/expenienceCenter/you2_icon.png">
-					</i>
-            </div>
-        </div>
-
-    </div>
-
-    <script src="../static/js/jquery-1.10.2.js"></script>
-    <script src="../static/js/jquery.min.js"></script>
-    <script src="../static/js/carousel.js"></script>
-    <script>
-        var linkid
-        var url = window.location.href;
-        url = url.split('/')
-            // var baseUrl = window.location.href; //"http://192.168.31.20"
-        var baseUrl ='http://' + url[2]
-        var $demo1 = $("div.demo1"),
-            $demo2 = $("div.demo2"),
-            $demo3 = $("div.demo3"),
-            $demo4 = $("div.demo4");
-        $(document).ready(function() {
-            var srt = ''
-            var sty = ''
-            var sse = {
-                id: 1,
-                pageNum: 1,
-                pageSize: 10
-            }
-            $.ajax({
-                url: baseUrl + "/api/game/v1/client/gameInfo?id=1",
-                type: 'get',
-                contentType: "application/json",
-                dataType: 'json',
-                success: function(data) {
-                    var dataList = data.data
-                        // dataList = [dataList[0]]
-                        // 测试多条数据
-                        // dataList = [...dataList, ...dataList, ...dataList];
-                    var visitType
-                    var conType
-                    linkid = data.data
-                    if (data.status == 0) {
-                        var srt2 = ""
-                        var datalistse = dataList[0].visitImage
-
-                        console.log(dataList)
-                        for (var n = 0; n < datalistse.length; n++) {
-                            var imgese = baseUrl + datalistse[n]
-                                //						console.log(datalistse[n])
-                            srt2 += '<li class="cards_list cards_lists cards_listsss" id="cards_list" n="' + i + '" data-n="' + i +
-                                '" data-id="34" data-wareHouseId="59" >' +
-                                '<div class="img">' +
-                                '<img src="' + imgese + '" alt="">' +
-                                '</div>' +
-                                '</li>';
-                        }
-                        $("#contain2").append(srt2)
-
-                        //						nav
-                        for (var i = 0; i < dataList.length; i++) {
-                            var imge = baseUrl + dataList[i].visitVideo
-                            var iconImg = baseUrl + dataList[i].visitIcon
-                            visitType = dataList[i].visitVideoType
-                            if (visitType == 'image') {
-                                srt += '<li class="cards_list cards_listnew" n="' + i + '" data-n="' + i +
-                                    '" data-id="34" data-wareHouseId="59" style="">' +
-                                    '<div class="img">' +
-                                    '<img src="' + imge + '" alt="">' +
-                                    '</div>' +
-                                    '</li>';
-                            } else {
-                                srt += '<li class="cards_list cards_listnew" n="' + i + '" data-n="' + i +
-                                    '" data-id="34" data-wareHouseId="59" style="">' +
-                                    '<div class="img">' +
-                                    '<video controls="controls" class="video-size"  autoplay muted loop>' +
-                                    '  <source src="' + imge + '" type="video/ogg" />' +
-                                    '  <source src="' + imge + '" type="video/mp4" />' +
-                                    '</video>' +
-                                    '</div>' +
-                                    '</li>';
-                            }
-
-                            if (i == 0) {
-                                sty += '<div class="nav-gse nav-gse-ave left" data-id=' + i + '>' +
-                                    '<div class="nav-bg ">' +
-                                    '<div class="nav-buseqw nav-mnaires"> </div>' +
-                                    '<div class="nav-img">' +
-                                    '<img src="' + iconImg + '">' +
-                                    '</div>' +
-                                    '</div>' +
-                                    '</div>';
-                            } else {
-                                sty += '<div class="nav-gse left" data-id=' + i + '>' +
-                                    '<div class="nav-bg ">' +
-                                    '<div class="nav-buseqw nav-mnai"> </div>' +
-                                    '<div class="nav-img">' +
-                                    '<img src="' + iconImg + '">' +
-                                    '</div>' +
-                                    '</div>' +
-                                    '</div>';
-                            }
-
-                        }
-                        $('#containerse').append(srt)
-                        $('.nav').append(sty)
-                        console.log("111111111111.", dataList.length)
-						// datalistse = datalistse.slice(0,3)
-                        if (dataList.length == 1) {
-                            $('.container .cards_listnew').css({
-                                "margin-left": "-177%"
-                            })
-                        }
-                        if (datalistse.length == 1) {
-
-
-                            $('#containerse .cards_list').css({
-                                "margin-left": "-177%"
-                            })
-
-                            $('.cards_listsss').css({
-                                "margin-left": "-177%"
-                            })
-
-
-                        }
-
-                        $('.nav-gse').on('click', function() {
-
-                            console.log('黄飞》》》', $(this).attr("data-id"))
-
-
-                            console.time("t");
-
-                            var carousel1 = new Carousel($demo1.children("ul.container"), {
-                                opacity: .9,
-                                scale: [.9],
-                                transition: "0ms",
-                                switchBtn: $demo1.children("i.btn-direct"),
-                                isClickCard: true,
-                                isAuto: false,
-                                interval: 4000,
-                                dataList: dataList,
-                                n: $(this).attr("data-id"),
-                                nav: 1,
-                                showPicNumber: 3
-                            });
-
-
-
-                            $(this).addClass('nav-gse-ave')
-                            $(this).siblings().removeClass('nav-gse-ave')
-                                //					css({"background":"red"})
-                            $(this).find('.nav-bg').find('.nav-mnai').removeClass('nav-mnai')
-                            $(this).siblings().find('.nav-bg').find('.nav-buseqw').addClass('nav-mnai')
-                            commprev($(this).attr("data-id"))
-                        })
-
-                        $("div.wrapper").each(function(i, e) {
-                            $(e).attr("ondragstart", "return false");
-                        });
-
-
-
-                        console.time("t");
-
-                        var carousel1 = new Carousel($demo1.children("ul.container"), {
-                            opacity: .9,
-                            scale: [.9],
-                            transition: "0ms",
-                            switchBtn: $demo1.children("i.btn-direct"),
-                            isClickCard: true,
-                            isAuto: false,
-                            interval: 4000,
-                            dataList: dataList,
-                            n: 0,
-                            nav: 0,
-                            showPicNumber: 3
-                        });
-                        var carousel2 = new Carousel($demo2.children("ul.container"), {
-                            opacity: .6,
-                            scale: [.9],
-                            transition: "0ms",
-                            switchBtn: $demo2.children("i.btn-direct"),
-                            isClickCard: true,
-                            isAuto: false,
-                            interval: 4000,
-                            dataList: dataList,
-                            n: 0,
-                            nav: 0,
-                            // showPicNumber: 3
-                        });
-
-                    }
-                    /* var CheckId = +findCheckId[1]
-                    dataList.map( e => {
-                    	linkid = e
-                    	if (e.wareHouseId === CheckId) {
-                    		bottomList = e.visitImage
-                    		bottomList.map( (e, k) => {
-                    			bottomId = '#bottom_block_' + k
-                    			tip = `<img src="` + baseUrl + e + `" alt="">`
-                    			$(bottomId).append(tip)
-                    		})
-                    	}
-                    })*/
-
-                    var perindex
-                    $("#prev").on("click", function() {
-
-                        setTimeout(() => {
-                            commprev("prev")
-                        }, 100);
-
-                    })
-                    $(document).on("click", "#nevr", function() {
-                        // alert(2)
-                        setTimeout(() => {
-                            commprev("nevr")
-                        }, 100);
-
-                    })
-
-                    function commprev(text) {
-                        if (text >= 0) {
-
-                            perindex = text
-                        } else {
-                            $("#containerse li").each(function(i, e) {
-                                if ($(e).css("opacity") == 1) {
-                                    perindex = i
-                                }
-                            });
-                        }
-
-                        //			             上一个
-                        if (text == "prev") {
-
-                            //								  alert(perindex);
-                            $(".nav .nav-gse").eq(perindex).addClass('nav-gse-ave')
-                            $(".nav .nav-gse").eq(perindex).siblings().removeClass('nav-gse-ave')
-
-                            $(".nav .nav-gse").eq(perindex).find('.nav-bg').find('.nav-mnai').removeClass('nav-mnai')
-                            $(".nav .nav-gse").eq(perindex).siblings().find('.nav-bg').find('.nav-buseqw').addClass('nav-mnai')
-
-                        } else if (text == "nevr") {
-
-                            //                              alert(perindex);
-                            $(".nav .nav-gse").eq(perindex).addClass('nav-gse-ave')
-                            $(".nav .nav-gse").eq(perindex).siblings().removeClass('nav-gse-ave')
-
-                            $(".nav .nav-gse").eq(perindex).find('.nav-bg').find('.nav-mnai').removeClass('nav-mnai')
-                            $(".nav .nav-gse").eq(perindex).siblings().find('.nav-bg').find('.nav-buseqw').addClass('nav-mnai')
-
-                        } else {
-                            //								alert()
-                            $(".nav .nav-gse").eq(text).addClass('nav-gse-ave')
-                            $(".nav .nav-gse").eq(text).siblings().removeClass('nav-gse-ave')
-
-                            $(".nav .nav-gse").eq(text).find('.nav-bg').find('.nav-mnai').removeClass('nav-mnai')
-                            $(".nav .nav-gse").eq(text).siblings().find('.nav-bg').find('.nav-buseqw').addClass('nav-mnai')
-
-                        }
-
-
-                        $("#contain2 li").remove()
-                        var srt3 = ""
-                        console.log(perindex)
-                        var perindexs = perindex
-                        var datalistse = dataList[perindexs].visitImage
-                        console.log(perindexs)
-                        for (var n = 0; n < datalistse.length; n++) {
-                            var imgese = baseUrl + datalistse[n]
-
-                            //						console.log(datalistse[n])
-                            srt3 += '<li class="cards_list sss" n="' + i + '" data-n="' + i +
-                                '" data-id="34" data-wareHouseId="59" style="">' +
-                                '<div class="img">' +
-                                '<img src="' + imgese + '" alt="">' +
-                                '</div>' +
-                                '</li>';
-                        }
-                        $("#contain2").append(srt3)
-                        if (datalistse.length == 1) {
-                            $('#cards_list').css({
-                                "margin-left": "-53%"
-                            })
-                            $('.sss').css({
-                                "margin-left": "-177%"
-                            })
-                        }
-
-
-                        var carousel2 = new Carousel($demo2.children("ul.container"), {
-                            opacity: .6,
-                            scale: [.9],
-                            transition: "400ms",
-                            switchBtn: $demo2.children("i.btn-direct"),
-                            isClickCard: true,
-                            isAuto: false,
-                            interval: 4000,
-                            dataList: dataList,
-                            // showPicNumber: 3
-                        });
-
-                        //			            console.log('dataList>>>',dataList[perindex])
-
-                    }
-                }
-            })
-        })
-
-        $(".nav-mnai").on('click', function() {
-            $('.cards_list').eq(0).attr('n', '2')
-        })
-
-        $('.bt-an').on('click', function() {
-            var indexs
-            $("#containerse li").each(function(i, e) {
-                if ($(e).css("opacity") == 1) {
-                    indexs = i
-                }
-            });
-            //			alert(linkid[indexs].wareHouseId)
-            //			return
-            var warid = {
-                id: linkid[indexs].wareHouseId,
-                type: 0,
-                sn: ""
-            }
-
-            $.ajax({
-                url: baseUrl + "/api/game/v1/cloudGame/dev/getSn",
-                data: warid,
-                type: 'get',
-                dataType: 'json',
-                success: function(data) {
-
-                    //                   return
-                    if (data.status == 0) {
-                        var trialInterface = {
-                            id: linkid[indexs].wareHouseId,
-                            type: 2,
-                            sn: data.data.sn
-                        }
-                        localStorage.setItem("trialInterface", JSON.stringify(trialInterface))
-                        console.log(data)
-                        if (window.screen.width >= 1000) {
-                        	localStorage.setItem("temps", 2)
-                            window.location.href = "/api/game/center/trialInterface?clientType=0" + "&cardIp=" + data.data.androidcardIp +
-                                "&port=" + data.data.androidcardPort + "&sn=" + data.data.sn + "&demoTime=" + data.data.demoTime + "&id=" +
-                                linkid[indexs].wareHouseId;
-                        } else {
-                        	
-var u = navigator.userAgent;
-if (u.indexOf('Android') > -1 || u.indexOf('Linux') > -1) {//安卓手机
-console.log("安卓手机");
-window.location.href = "/api/game/center/trialInterface3?clientType=0" + "&cardIp=" + data.data.androidcardIp +"&port=" + data.data.androidcardPort + "&sn=" + data.data.sn + "&demoTime=" + data.data.demoTime + "&id=" +linkid[indexs].wareHouseId
-  
-} else if (u.indexOf('iPhone') > -1) {//苹果手机
-window.location.href = "/api/game/center/trialInterface2?clientType=0" + "&cardIp=" + data.data.androidcardIp +"&port=" + data.data.androidcardPort + "&sn=" + data.data.sn + "&demoTime=" + data.data.demoTime + "&id=" +linkid[indexs].wareHouseId
-                                linkid[indexs].wareHouseId;
-} else if (u.indexOf('Windows Phone') > -1) {//winphone手机
-window.location.href = "/api/game/center/trialInterface2?clientType=0" + "&cardIp=" + data.data.androidcardIp +"&port=" + data.data.androidcardPort + "&sn=" + data.data.sn + "&demoTime=" + data.data.demoTime + "&id=" +linkid[indexs].wareHouseId
- 
-}
-                        	
-                        	
-                        	
-                            
-                        }
-
-                        //
-                    } else {
-                        // 为了兼容云手机
-                        // 						var jsonsn =  localStorage.getItem("trialInterface")
-                        // 						var jsonarr = JSON.parse(jsonsn)
-
-                        // 						console.log(jsonarr.sn);
-                        // 						$.ajax({
-                        // 							url: baseUrl + "/api/game/v1/cloudGame/dev/getSn",
-                        // 							data: jsonarr,
-                        // 							type: 'get',
-                        // 							dataType: 'json',
-                        // 							success: function(data) {
-                        // 								//                   return
-                        // 								if(data.status == 0) {
-
-                        // 								} else {
-                        // 									alert(data.msg)
-                        // 								}
-
-                        // 							}
-                        // 						})
-
-
-
-                        alert(data.msg)
-                    }
-
-                }
-            })
-        })
-        
-        
-        			var homeip = ""
-			$.ajax({
-				url: baseUrl + "/api/user/v1/promote/webUrl",
-				data: {},
-				type: 'get',
-				async: false,
-
-				success: function(data) {
-					console.log("官网》》》", data)
-					homeip = data
-					//
-				}
-			})
-
-			$(".heads-img-left").on("click", function() {  
-				var newStr = homeip.indexOf("http");
-				var urlhome   
-				if(newStr == 0) {
-
-					    
-					console.log("字符串是以http开头的!")
-					urlhome = homeip
-					$(window).attr('location', urlhome);  
-				}
-
-				  
-				if(newStr == -1) {
-					urlhome = 'http://' + homeip
-					$(window).attr('location', urlhome);    
-					console.log("字符串不是以http开头的!")
-
-					  
-				}
-
-			})
-
-    </script>
-
-</body>
-
-</html>

File diff suppressed because it is too large
+ 0 - 1096
CloudGames/trialInterface.html


+ 84 - 0
README.md

@@ -0,0 +1,84 @@
+# android-cloud-H5-nuxt
+
+## 部分环境变量含义
+
+### process.env.NODE_ENV
+
+打包模式 两种模式
+development 表示开发模式
+production 表示发布模式
+
+### process.env.MODE
+
+服务器环境 四个环境
+development 开发环境
+test 测试环境
+staging 验收环境
+production 生产环境
+
+## Build Setup
+
+```bash
+# install dependencies
+$ npm install
+
+# serve with hot reload at localhost:3000
+$ npm run dev
+
+# build for production and launch server
+$ npm run build
+$ npm run start
+
+# generate static project
+$ npm run generate
+```
+
+For detailed explanation on how things work, check out the [documentation](https://nuxtjs.org).
+
+## Special Directories
+
+You can create the following extra directories, some of which have special behaviors. Only `pages` is required; you can delete them if you don't want to use their functionality.
+
+### `assets`
+
+The assets directory contains your uncompiled assets such as Stylus or Sass files, images, or fonts.
+
+More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/assets).
+
+### `components`
+
+The components directory contains your Vue.js components. Components make up the different parts of your page and can be reused and imported into your pages, layouts and even other components.
+
+More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/components).
+
+### `layouts`
+
+Layouts are a great help when you want to change the look and feel of your Nuxt app, whether you want to include a sidebar or have distinct layouts for mobile and desktop.
+
+More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/layouts).
+
+### `pages`
+
+This directory contains your application views and routes. Nuxt will read all the `*.vue` files inside this directory and setup Vue Router automatically.
+
+More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/get-started/routing).
+
+### `plugins`
+
+The plugins directory contains JavaScript plugins that you want to run before instantiating the root Vue.js Application. This is the place to add Vue plugins and to inject functions or constants. Every time you need to use `Vue.use()`, you should create a file in `plugins/` and add its path to plugins in `nuxt.config.js`.
+
+More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/plugins).
+
+### `static`
+
+This directory contains your static files. Each file inside this directory is mapped to `/`.
+
+Example: `/static/robots.txt` is mapped as `/robots.txt`.
+
+More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/static).
+
+### `store`
+
+This directory contains your Vuex store files. Creating a file in this directory automatically activates Vuex.
+
+More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/store).

+ 4 - 0
api/activity/invite-user.js

@@ -0,0 +1,4 @@
+export const getStarCoinOverview = ({ $axios }, params) =>
+  $axios.$get('/activity/v1/inviteUser/orderRelation/starCoinOverview', {
+    params,
+  });

+ 2 - 0
api/message/phone.js

@@ -0,0 +1,2 @@
+export const sendSmsCode = ({ $axios }, data) =>
+  $axios.$post('/message/v5/phone/send', data);

+ 7 - 0
api/public/agreement.js

@@ -0,0 +1,7 @@
+export const getContentByType = ({ $axios }, agreementCoding, type = 1) =>
+  $axios.$get('/public/v5/agreementApi/content/getContentByType', {
+    params: {
+      agreementCoding,
+      type,
+    },
+  });

+ 2 - 0
api/user/client.js

@@ -0,0 +1,2 @@
+export const registerForInvite = ({ $axios }, data) =>
+  $axios.$post('/user/v5/client/register/forLachineH5', data);

+ 6 - 0
api/wx/index.js

@@ -0,0 +1,6 @@
+export const getConfig = ({ $axios }, url) =>
+  $axios.$get('/wx/getConfig', {
+    params: {
+      url,
+    },
+  });

BIN
assets/image/activity/invite-user/bg@2x.png


BIN
assets/image/activity/invite-user/box@2x.png


BIN
assets/image/activity/invite-user/cybz-content@2x.png


BIN
assets/image/activity/invite-user/share-button@2x.png


+ 7 - 0
assets/style/main.scss

@@ -0,0 +1,7 @@
+html {
+  font-size: 16px;
+  // box-sizing: border-box;
+  // * {
+  //   box-sizing: inherit;
+  // }
+}

+ 1 - 0
assets/style/variables.less

@@ -0,0 +1 @@
+// @co: red;

+ 6 - 0
assets/style/variables.scss

@@ -0,0 +1,6 @@
+// Ref: https://github.com/nuxt-community/vuetify-module#customvariables
+//
+// The variables you want to modify
+// $font-size-root: 20px;
+// $c: red;
+$snackbar-bottom: env(safe-area-inset-bottom, 0px);

+ 0 - 415
decoker/screenAndroid/WXdraw.js

@@ -1,415 +0,0 @@
-//画布
-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 topwinHeightDraw = window.screen.height - window.innerHeight + 30; //计算title top 头部
-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 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)
-
-data.cardIp = cardIp.substring(7, cardIp.length)
-
-data.port = port.substring(5, port.length)
-
-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="wss://www.ted2018.com:9101"
-// var cUrl = "ws://192.168.198.21:9101"
-var cUrl = "ws://14.215.128.97:15508"
-// 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 = Number(data.clientType) === 3? "ws://"+urlss+"/authControlWebSocket?"+"clientType="+data.clientType+"&username="+data.username+"&userCardId="+data.userCardId : "ws://"+urlss+"/controlWebSocket?"+"clientType="+data.clientType+"&cardIp="+data.cardIp+"&port="+data.port+"&sn="+data.sn
-var wsss = new WebSocket(cUrl);
-console.log('wsssss==============', wsss)
-wsss.binaryType = 'arraybuffer';
-////
-// wsss = new WebSocket(
-// 	"ws://14.215.128.96/authControlWebSocket?clientType=3&username=WqXTc1593762177&userCardId=377");
-
-wsss.onopen = function() {
-	console.log("onopen==============");
-	var pings = {
-		"event": "getScreenStatus"
-	}
-	wsss.send(JSON.stringify(pings));
-	var bitRate = {
-		"data": {
-			"bitRate": 2243000
-		},
-		"event": "bitRate"
-	}
-	// 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.onclose = function(event) {
-	console.log("onclose==============");
-};
-wsss.onerror = function(event) {
-	console.log("onerror==============");
-};
-$('#box').on("click", function() {
-
-	draw_graph('pencil', this)
-})
-//剪切板
-$(".upload").on("click", function() {
-	let texts = $(this).attr("data-text")
-	if (texts == "uploads") {
-		$(".mainbox").css({
-			"display": "block"
-		})
-		$(".sbox").css({
-			"display": "none"
-		})
-	} else if (texts == "Signout") {
-		//		alert()
-
-	}
-})
-
-//home 控制home
-$(".botmat1img").on("click", function() {
-	let codes = $(this).attr("data-text")
-	console.log(codes)
-	if (codes == "home") {
-		// var bitRate = {
-		// 	"data": {
-		// 		"keyCode": 3
-		// 	},
-		// 	"event": "keyCode"
-		// }
-		// console.log("打印主页json", JSON.stringify(bitRate))
-		wsss.send(ExexuteKeyBoard(3),data.sn);
-		// console.log("打印主页json", wsss)
-	} else if (codes == "return") {
-		// var bitRate = {
-		// 	"data": {
-		// 		"keyCode": "4"
-		// 	},
-		// 	"event": "keyCode"
-		// }
-		// wsss.send(JSON.stringify(bitRate));
-		wsss.send(ExexuteKeyBoard(4),data.sn);
-	} else if (codes == "gengduo") {
-		// var bitRate = {
-		// 	"data": {
-		// 		"keyCode": "187"
-		// 	},
-		// 	"event": "keyCode"
-		// }
-		// wsss.send(JSON.stringify(bitRate));
-		wsss.send(ExexuteKeyBoard(187),data.sn);
-	}
-
-})
-//高清控制
-$(".PictureQuality").on("click", function() {
-	$(this).addClass("avit").siblings().removeClass('avit')
-	let id = $(this).attr("data-id")
-	var bitRate = {
-		"data": {
-			"bitRate": id
-		},
-		"event": "bitRate"
-	}
-	wsss.send(ExexuteMove(JSON.stringify(bitRate),data.sn)) 
-	console.log(id)
-})
-
-//画图形
-var draw_graph = function(graphType, obj) {
-	console.log('111》》》', 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) {
-		$('.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)
-				ping = {
-					"data": {
-						"action": 0,
-						"count": touchfor.length,
-						"pointerId": i,
-						"x": cawidthXs.toFixed(2),
-						"y": caheightYs.toFixed(2)
-					},
-					"event": "0"
-				}
-			}
-			// wsss.send(JSON.stringify(ping));
-			wsss.send(ExexuteMove(JSON.stringify(ping),data.sn)) 
-			console.log("鼠标按下>>>", ping)
-		} 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)
-				ping = {
-					"data": {
-						"action": 0,
-						"count": touchfor.length,
-						"pointerId": i,
-						"x": cawidthXs.toFixed(2),
-						"y": caheightYs.toFixed(2)
-					},
-					"event": "0"
-				}
-
-			}
-			// wsss.send(JSON.stringify(ping));
-			wsss.send(ExexuteMove(JSON.stringify(ping),data.sn)) 
-			console.log("鼠标按下>>>", ping)
-		}
-
-		canDraw = true;
-
-	};
-
-	//鼠标离开 把蒙版canvas的图片生成到canvas中
-	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)
-				ping = {
-					"data": {
-						"action": 1,
-						"count": touchfor.length,
-						"pointerId": i,
-						"x": cawidthXs.toFixed(2),
-						"y": caheightYs.toFixed(2)
-					},
-					"event": "1"
-				}
-			}
-
-			// wsss.send(JSON.stringify(ping));
-			wsss.send(ExexuteMove(JSON.stringify(ping),data.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)
-				ping = {
-					"data": {
-						"action": 1,
-						"count": touchfor.length,
-						"pointerId": i,
-						"x": cawidthXs.toFixed(2),
-						"y": caheightYs.toFixed(2)
-					},
-					"event": "1"
-				}
-			}
-
-			// wsss.send(JSON.stringify(ping));
-			wsss.send(ExexuteMove(JSON.stringify(ping),data.sn)) 
-		}
-
-		canDraw = false;
-
-	};
-
-	//清空层 云手机超出屏幕的开关
-	var clearContext = function(type) {
-		canDraw = false;
-	}
-
-	// 鼠标移动
-	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
-		//是否横屏  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)
-
-				ping = {
-					"data": {
-						"action": 2,
-						"count": touchfor.length,
-						"pointerId": i,
-						"x": cawidthXs.toFixed(2),
-						"y": caheightYs.toFixed(2)
-					},
-					"event": "2"
-				}
-
-			}
-
-			// wsss.send(JSON.stringify(ping));
-			wsss.send(ExexuteMove(JSON.stringify(ping),data.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)
-				ping = {
-					"data": {
-						"action": 2,
-						"count": touchfor.length,
-						"pointerId": i,
-						"x": cawidthXs.toFixed(2),
-						"y": caheightYs.toFixed(2)
-					},
-					"event": "2"
-				}
-
-			}
-
-			// wsss.send(JSON.stringify(ping));
-			wsss.send(ExexuteMove(JSON.stringify(ping),data.sn)) 
-		}
-
-
-
-		//				var ping = {"data":{"action":2,"count":1,"pointerId":0,"x":cawidthX.toFixed(2),"y":caheightY.toFixed(2)},"event":"2"}	    
-
-
-
-	};
-
-	//鼠标离开区域以外 除了涂鸦 都清空
-	var mouseout = function() {
-
-		if (graphType != 'handwriting') {
-			clearContext();
-
-		}
-	}
-
-	$(canvas_bak).unbind();
-	$(canvas_bak).bind('touchstart', touchstart);
-	$(canvas_bak).bind('touchmove', touchmove);
-	$(canvas_bak).bind('touchend', touchend);
-	$(canvas_bak).bind('mouseout', mouseout);
-}
-
-//选择功能按钮 修改样式
-function chooseImg(obj) {
-
-}

File diff suppressed because it is too large
+ 0 - 1002
decoker/screenAndroid/WXtrialInterface.html


+ 0 - 161
decoker/screenAndroid/control.js

@@ -1,161 +0,0 @@
-/**
- * 此文件实现将控制命令封装成协议,具体协议内容请看:
- * 链接:http://note.youdao.com/noteshare?id=dabda6c613adef7a416bd2625cd770a1
- */
-
-/**
- * bcc校验码计算
- * arry: 要计算的数组
- * 返回计算协议中校验位的校验码
- */
-export function calBcc(arry) {
-  var bcc = 0
-  for (let i = 0; i < arry.length; i++) {
-    bcc ^= arry[i]
-  }
-  return bcc
-}
-
-// 数组打印,调试用
-export function PrintArry(data) {
-  var str = ''
-
-  for (let i = 0; i < data.length; i++) {
-    str = str + data[i].toString(16).padStart(2, '0')
-  }
-
-  str = str.toUpperCase()
-  return str
-}
-/**
- * @param {*} sn: 板卡sn号,stirng
- * @param {*} dataType:数据类型,数字
- * @param {*} jsonCmd: json命令
- * 返回值:生成一个Uint8Array,通过websocket发送给板卡
- */
-export function makeFrame(sn, dataType, jsonCmd) {
-  var index = 0
-  var dataLen = jsonCmd.length
-  var frameLen = dataLen + 26
-  var outPut = new Uint8Array(frameLen)
-  outPut[index++] = 0x68
-  outPut[index++] = (dataLen & 0xff000000) >> 24
-  outPut[index++] = (dataLen & 0x00ff0000) >> 16
-  outPut[index++] = (dataLen & 0x0000ff00) >> 8
-  outPut[index++] = dataLen & 0x000000ff
-  outPut[index++] = 0 // 类型为client
-
-  // sn号赋值,string转ascii
-  for (let i = 0; i < sn.length; i++) {
-    outPut[index++] = sn[i].charCodeAt()
-  }
-
-  outPut[index++] = dataType // 指定数据类型为json
-  // json string转ascii
-  for (let i = 0; i < jsonCmd.length; i++) {
-    outPut[index++] = jsonCmd[i].charCodeAt()
-  }
-
-  var bccBuffer = outPut.slice(1, frameLen - 3 + 1) // 忽略协议头和协议尾
-  outPut[index++] = calBcc(bccBuffer)
-  outPut[index++] = 0x16
-  return outPut
-}
-
-/**
- * 触发键盘事件, code表示键盘值
- * 音量加减、home键、back事件(keyCode的值分别表示为25减音量,24加音量,4为返回键,3为home键,187为切换菜单)
- */
-export function ExexuteKeyDown(code, sn) {
-  var jsonObj = { 'data': { 'keyCode': code.toString() }, 'type': 'keyDown' }
-  var json = JSON.stringify(jsonObj)
-  return makeFrame(sn, 0, json)
-}
-
-// 触发鼠标按下事件,x:x坐标, y:y坐标
-export function ExexuteMouseDown(x, y, sn) {
-  var jsonObj = { 'data': { 'action': 0, 'count': 1, 'pointerId': 0, 'x': x, 'y': y }, 'type': '0' }
-  var json = JSON.stringify(jsonObj)
-  return makeFrame(sn, 0, json)
-}
-
-// 触发鼠标移动事件,x:x坐标, y:y坐标
-export function ExexuteMouseMove(x, y, sn) {
-  var jsonObj = { 'data': { 'action': 2, 'count': 1, 'pointerId': 0, 'x': x, 'y': y }, 'type': '2' }
-  var json = JSON.stringify(jsonObj)
-  return makeFrame(sn, 0, json)
-}
-
-// 触发鼠标抬起事件,x:x坐标, y:y坐标
-export function ExexuteMouseUp(x, y, sn) {
-  var jsonObj = { 'data': { 'action': 1, 'count': 1, 'pointerId': 0, 'x': x, 'y': y }, 'type': '1' }
-  var json = JSON.stringify(jsonObj)
-  return makeFrame(sn, 0, json)
-}
-
-// 设置像素(200:自动/400000:极速/2243000:标清/3072000:高清)
-export function ExexutePixel(bitRate, sn) {
-  const jsonObj = { 'data': { 'bitRate': Number(bitRate) }, 'type': 'setBitRate' }
-  const json = JSON.stringify(jsonObj)
-  return makeFrame(sn, 0, json)
-}
-
-// 关闭连接事件
-export function ExexuteCloseServer(sn) {
-  const jsonObj = { 'data': { 'x': '0', 'y': '0' }, 'type': 'closeServer' }
-  const json = JSON.stringify(jsonObj)
-  return makeFrame(sn, 0, json)
-}
-
-// 根据报文识别屏幕方向, 0横屏,1竖屏
-export function CheckScreenDirection(data) {
-  let screen
-  if (data[0] === 0 && data[1] === 0 && data[2] === 0 && data[3] === 1) {
-    if (data[4] === 1 && data[5] === 1) {
-      if (data[6] === 1) {
-        screen = data[7]
-        return screen
-      }
-    }
-  }
-}
-
-// 加个请求I帧的报文
-export function RequestIFrame(sn) {
-  var outPut = new Uint8Array([0x20])
-  return makeFrameExtend(sn, 6, outPut)
-}
-
-function makeFrameExtend(sn, dataType, body) {
-  var index = 0
-  var dataLen = body.length
-  var frameLen = dataLen + 26
-  var outPut = new Uint8Array(frameLen)
-  outPut[index++] = 0x68
-  outPut[index++] = (dataLen & 0xff000000) >> 24
-  outPut[index++] = (dataLen & 0x00ff0000) >> 16
-  outPut[index++] = (dataLen & 0x0000ff00) >> 8
-  outPut[index++] = dataLen & 0x000000ff
-  outPut[index++] = 0 // 类型为client
-
-  // sn号赋值,string转ascii
-  for (let i = 0; i < sn.length; i++) {
-    outPut[index++] = sn[i].charCodeAt()
-  }
-
-  outPut[index++] = dataType // 指定数据类型为json
-  // json string转ascii
-  for (let i = 0; i < body.length; i++) {
-    outPut[index++] = body[i]
-  }
-
-  var bccBuffer = outPut.slice(1, frameLen - 3 + 1) // 忽略协议头和协议尾
-  outPut[index++] = calBcc(bccBuffer)
-  outPut[index++] = 0x16
-  return outPut
-}
-
-export function ConfigChannel(sn) {
-  var outPut = new Uint8Array([0x07])
-  return makeFrameExtend(sn, 6, outPut)
-}

+ 0 - 340
decoker/screenAndroid/css/WXtrialInterface.css

@@ -1,340 +0,0 @@
-body {
-				font-size: .2592592593rem;
-				margin: 0 auto;
-				width: 100%;
-				min-width: 320px;
-			}
-			
-			.h-player {
-				height: 100%;
-				overflow: hidden;
-				background: #000;
-			}
-			
-			.container {
-				width: 100%;
-				height: 100%;
-				position: relative;
-				user-select: none;
-			}
-			
-			#video1 {
-				display: block;
-				width: 100%;
-				height: 100%;
-				top: 0px;
-				left: 0px;
-				opacity: 1;
-			}
-			
-			#box {
-				width: 100%;
-				height: 100%;
-				position: absolute;
-				left: 0;
-				top: 0;
-				z-index: 9999;
-				/*width: 667px;
-    height: 375px; http://192.168.31.8:8848/cloudmMobilePhone1.11/Player/trialInterface2.html
-    position: absolute;
-    left: -146px;
-    top: 146px;
-   background: red;*/
-				/*    transform: rotate(-90deg);*/
-				/* opacity: 0.3;*/
-			}
-			
-			.scroll {
-				position: absolute;
-				/* overflow: scroll; */
-				-webkit-overflow-scrolling: touch;
-				top: 0;
-				left: 0;
-				bottom: 0;
-				right: 0;
-			}
-			
-			body:before {
-				width: 100%;
-				height: 100%;
-				content: ' ';
-				position: fixed;
-				z-index: -1;
-				top: 0;
-				left: 0;
-				background: #000;
-			}
-			
-			#wine {
-				user-select: none;
-				-webkit-user-drag: none;
-				position: absolute;
-				z-index: 0;
-				/*  visibility: hidden;*/
-			}
-			
-			#video1 {
-				/*	 transform: rotate(180deg);*/
-			}
-			
-			canvas {
-				display: block;
-				width: 100%;
-				height: 100%;
-				z-index: 999;
-			}
-			/*主屏*/
-			
-			.control {
-				width: 900px;
-				overflow: hidden;
-				margin: 0 auto;
-				margin-top: 90px;
-				margin-bottom: 17px;
-			}
-			
-			.control-left-img {
-				width: 26px;
-				height: 26px;
-			}
-			
-			.control-left-img img {
-				width: 100%;
-				height: 100%;
-			}
-			
-			#mainScreen-main {
-				/* overflow: hidden; */
-				user-select: none;
-				-webkit-user-drag: none;
-				position: relative;
-				z-index: 0;
-				width: 100%;
-				height: 100%;
-				top: 0px;
-				/* left: 652.667px; */
-				/* left: 270PX; */
-				/* transform-origin: 0% 0%; */
-				background: #000;
-			}
-			
-			#mocan {
-				position: absolute;
-				left: -269px;
-				top: 2px;
-				/* opacity: 0.2; */
-				width: 901px;
-				height: 555px;
-				z-index: 9999;
-				opacity: 0.7;
-			}
-			
-			#no-ne {
-				width: 100%;
-				height: 100%;
-				position: absolute;
-				top: 0;
-				background: #000000;
-				z-index: 99999;
-				font-size: 18px;
-				color: #FFFFFF;
-				text-align: center;
-			}
-			
-			.no-ne-text {
-				margin-top: 60%;
-			}
-			
-			.no-ne-an {
-				width: 171px;
-				height: 47px;
-				background: #eb6100;
-				line-height: 47px;
-				text-align: center;
-				color: #FFFFFF;
-				margin: 0 auto;
-				margin-top: 20px;
-			}
-			
-			.container .muted {
-				position: absolute;
-				right: .46296rem;
-				top: .46296rem;
-				z-index: 9999999;
-				/*background: #000;*/
-				border-radius: 50%;
-				   /* opacity: 0.5;*/
-			}
-			
-			.muted {
-				width: 2.62963rem;
-				height: 2.62963rem;
-				background-position: -1.78704rem -8.43519rem;
-			}
-			
-			html {
-				height: 100%
-			}
-			
-			.control-right-img {
-				width: 42px;
-				height: 42px;
-				margin: 0 auto;
-				/* margin: 1rem; */
-				margin-top: 0.6rem;
-			}
-			
-			.control-right-img img {
-				width: 100%;
-				height: 100%;
-			}
-			
-			.leftmains {
-				width: 3.5rem;
-				height: 100%;
-				background: #333333;
-				position: fixed;
-				right: 0rem;
-				top: 0;
-					
-transition: all 0.2s ease-in;
-			}
-			
-			.PictureQualityMain {
-				margin-top: 3rem;
-			}
-			
-			.PictureQuality {
-				margin: 0 auto;
-				width: 2.5rem;
-				height: 1.8rem;
-				line-height: 1.8rem;
-				color: #fff;
-				text-align: center;
-				font-size: 15px;
-				margin-top: 1rem;
-			}
-			
-			.avit {
-				background: rgba(255, 255, 255, 1);
-				color: #000 !important;
-				border-radius: 3px;
-			}
-			
-			.upload {
-				margin: 0 auto;
-				width: 3rem;
-				height: 1.8rem;
-				line-height: 1.8rem;
-				color: #fff;
-				text-align: center;
-				font-size: 16px;
-				margin-top: 3rem;
-			}
-			
-			.upload img {
-				width: 1.5rem;
-				height: 1.5rem;
-			}
-			
-			.upload div {
-				margin-top: -0.5rem;
-				font-size: 14px;
-			}
-			
-			.operation {
-				margin-top: 9rem;
-			}
-			
-			.bottommains {
-				width: 100%;
-				height: 50px;
-				background: #333333;
-				position: fixed;
-				left: 0;
-				bottom: 0;
-			}
-			
-			.botmat1 {
-				width: 33%;
-				float: left;
-			}
-			
-			.botmat1img {
-				margin: 0 auto;
-				width: 1.5rem;
-				height: 1.5rem;
-				margin-top: 0.5rem;
-			}
-			
-			.botmat1img img {
-				width: 100%;
-				height: 100%;
-			}
-			
-			.mainbox {
-				width: 18rem;
-				height: 10rem;
-				background: #fff;
-				position: fixed;
-				top: 38%;
-				left: 5%;
-				border-radius: 5px;
-			}
-			
-			.boxTitle {
-				text-align: center;
-				font-size: 18px;
-				padding: 10px 0px;
-			}
-			
-			.boxText {
-				text-align: center;
-				font-size: 16px;
-			}
-			
-			.boxbt {
-				width: 60%;
-				height: 2.5rem;
-				background: #0886F5;
-				margin: 0 auto;
-				font-size: 16px;
-				text-align: center;
-				line-height: 2.5rem;
-				color: #fff;
-				border-radius: 5px;
-				margin-top: 1rem;
-			}
-			
-			.sbox {
-				width: 18rem;
-				height: 5.5rem;
-				background: #fff;
-				position: fixed;
-				top: 38%;
-				left: 5%;
-				border-radius: 5px;
-			}
-			
-			.sboxText {
-				padding: 17px;
-				font-size: 16px;
-			}
-			
-			.sboxbu {
-				text-align: right;
-				color: #0886F5;
-				font-size: 16px;
-				margin-right: 2rem;
-			}
-			
-			.boximg {
-				position: absolute;
-				width: 1rem;
-				height: 1rem;
-				left: 45%;
-				bottom: -22%;
-			}
-			#showsuss{
-				display: none;
-			}

+ 0 - 125
decoker/screenAndroid/helper.js

@@ -1,125 +0,0 @@
- //此文件实现将控制命令封装成协议,具体协议内容请看:
-//链接:http://note.youdao.com/noteshare?id=dabda6c613adef7a416bd2625cd770a1
- 
- //bcc校验码计算
- //arry: 要计算的数组
- //返回计算协议中校验位的校验码
- function calBcc(arry)
- {
-	var bcc = 0;
-	for(i = 0;i < arry.length;i++)
-	{
-		bcc ^= arry[i];
-	}
-	return bcc;
- }
- 
- //数组打印,调试用
- function PrintArry(data)
- {
-	 var str = "";
-	 
-	 for(i = 0;i < data.length;i++)
-	 {
-		 str =  str + data[i].toString(16).padStart(2,'0');
-	 }
-	 
-	 str = str.toUpperCase();
-	 return str;
- }
- 
- //sn:板卡sn号,stirng
- //type:数据类型,数字
- //jsonCmd: json命令
- //返回值:生成一个Uint8Array,通过websocket发送给板卡
- function makeFrame(sn, dataType, jsonCmd)
- {
-	 var index = 0;
-	 var dataLen  = jsonCmd.length;
-	 var frameLen = dataLen + 26;
-	 var outPut = new Uint8Array(frameLen);
-	 outPut[index++] = 0x68;
-	 outPut[index++] = (dataLen & 0xff000000) >> 24;
-	 outPut[index++] = (dataLen & 0x00ff0000) >> 16;
-	 outPut[index++] = (dataLen & 0x0000ff00) >> 8;
-	 outPut[index++] =  dataLen & 0x000000ff;
-	 outPut[index++] = 0;//类型为client
-	 
-	 //sn号赋值,string转ascii
-	 for( i = 0;i< sn.length;i++)
-	 {
-		 outPut[index++] = sn[i].charCodeAt();
-	 }
-	 
-	 outPut[index++] = dataType;//指定数据类型为json
-	 //json string转ascii
-	 for( i = 0;i< jsonCmd.length;i++)
-	 {
-		 outPut[index++] = jsonCmd[i].charCodeAt();
-	 }
-	 
-	 var bccBuffer = outPut.slice(1, frameLen-3 + 1);//忽略协议头和协议尾
-	 outPut[index++] = calBcc(bccBuffer);
-	 outPut[index++] = 0x16;
-	 // console.log("打印数组:%s", PrintArry(outPut));
-	 console.log("数组长度:%d", outPut.length);
-	 //return PrintArry(outPut);
-	 return outPut;
- }
- //触发键盘事件, code表示键盘值
- function ExexuteKeyDown(code)
- {	 
-	 var jsonObj = {"data":{"keyCode":code, "event":"keyDown"}};
-	 var json = JSON.stringify(jsonObj);
-	 console.log("json==================",json);
-	 var sn = "RK3923C1201900139";
-	 return makeFrame(sn, 0, json);
- }
- //触发鼠标按下事件,x:x坐标, y:y坐标
- function ExexuteMouseDown(x, y)
- {
-	 var jsonObj = {"data":{"action":0, "count":1, "pointerId":0,"x":x, "y":y}, "event":"0"};
-	 var json = JSON.stringify(jsonObj);
-	 console.log("json==================",json);
-	 var sn = "RK3923C1201900139";
-	 return  makeFrame(sn, 0, json);
- }
-  //触发鼠标移动事件,x:x坐标, y:y坐标
- function ExexuteMouseMove(x, y)
- {
-	 var jsonObj = {"data":{"action":2, "count":1, "pointerId":0,"x":x, "y":y}, "event":"2"};
-	 var json = JSON.stringify(jsonObj);
-	 var sn = "RK3923C1201900139";
-	 return  makeFrame(sn, 0, json);	 
- }
- 
- function ExexuteKeyBoard(keycode)
- {
- 	 var jsonObj = {"data":{"keyCode":keycode.toString()},"event":"keyCode"};
- 	 var json = JSON.stringify(jsonObj);
- 	 var sn = "RK3923C1201900139";
- 	 return  makeFrame(sn, 0, json);	 
- }
- 
-  //触发鼠标抬起事件,x:x坐标, y:y坐标
- function ExexuteMouseUp(x, y)
- {
-	 var jsonObj = {"data":{"action":1, "count":1, "pointerId":0,"x":x, "y":y}, "event":"1"};
-	 var json = JSON.stringify(jsonObj);
-	 var sn = "RK3923C1201900139";
-	 return makeFrame(sn, 0, json);	 
- }
- //触发滑动事件
- function ExexuteMove(data,sn)
- {
- 	 // var jsonObj = {"data":{"action":1, "count":1, "pointerId":0,"x":x, "y":y}, "event":"1"};
- 	 // var json = JSON.stringify(jsonObj);
- 	 // var sn = "RK3923C1201900139";
- 	 return makeFrame(sn, 0, data);	 
- }
- //示例:
- //var sn = "RK3923C1201900139";
- //var json = "{\"data\":{\"keyCode\":24},\"type\":\"keyDown\"}";
-// makeFrame(sn, 0, json);
-//ExexuteKeyDown()
- 

File diff suppressed because it is too large
+ 0 - 185
decoker/screenAndroid/helper5555.js


File diff suppressed because it is too large
+ 0 - 1728
decoker/screenAndroid/home.html


File diff suppressed because it is too large
+ 0 - 1702
decoker/screenAndroid/homeNew.html


BIN
decoker/screenAndroid/images/loader-thumb.jpg


BIN
decoker/screenAndroid/img/homebg.png


+ 0 - 411
decoker/screenAndroid/index - 副本.html

@@ -1,411 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-<head>
-    <meta charset="UTF-8">
-    <meta name="description" content="jMuxer - a simple javascript mp4 muxer for non-standard streaming communications protocol">
-    <meta name="keywords" content="h264 player, mp4 player, mse, mp4 muxing, jmuxer, aac player">
-    <title>JMuxer demo</title>
-    <script async defer src="https://buttons.github.io/buttons.js"></script>
-    <style type="text/css">
-        .github-tools {
-            position: absolute;
-            top: 15px;
-            right: 15px;
-        }
-        a.h264-player {
-            font-size: 20px;
-            text-decoration: none;
-            color: #07568e;
-            margin-top: 10px;
-            display: block;
-        }
-        .gesture {
-            font-size: 15px;
-            color: #ad4903;
-            margin-top: 10px;
-        }
-</style>
-</head>
-<body>
-
-<h2>jMuxer Demo</h2>
-<p>Sample demo node server is running on heroku free hosting</p>
-<br /><br />
-<div class="github-tools">
-<!-- Place this tag where you want the button to render. -->
-
-</div>
-
-<div id="container" style="width: 600px; margin: 0 auto;"> 
-    <video width="100%"   disablePictureInPicture ="true" autoplay poster="images/loader-thumb.jpg" id="player"></video>
-	<audio width="50%"  preload="none" autoplay controls poster="images/loader-thumb.jpg" id="audioPlayer" ></audio>
-    <div class="gesture">If it does not play automatically, Click the `video play button` to initiate the video</div>
-</div>
-
-<body oncontextmenu="Back()">
-</body>
-
-<script src="helper.js" >
-</script>
-
-<script>
-	//隐藏控件 controls
-  var fpsCount = 0;
-  var requestCount = 0;
-  var timeCount = 0;
-  var isVisuable = true;
-  var isFeed = true;
-  var isDrag = false;
-  var isEnough = true;
-  
-  var delayTime = new Date().getTime();
-  var feedTime = new Date().getTime();
-  var requestTime = new Date().getTime() ;
-  var curTime = new Date().getTime();
-  var requestTime = new Date().getTime();//记录离开时间
-  var myVideo = document.getElementById("player");
-  var myAudio = document.getElementById("audioPlayer");
-  var audioBuffer = [];
-  var audioBack = [];
-  
-  document.addEventListener("visibilitychange", () => {
-	
-    if (document.visibilityState == "visible") 
-	{
-		console.log("页面可见,继续喂视频");
-		//requestTime = new Date().getTime();	
-		isVisuable = true;
-    }
-	else
-	{
-		isVisuable = false;
-		isFeed = false;
-		myVideo.pause();
-	}
-	
-
-});  
-  
-  myVideo.addEventListener('pause',function(){
-            //console.log("视频播放暂停");
-			isFeed = false;
-        });
-		
-  myAudio.addEventListener('pause',function(){
-            console.log("音频播放暂停");
-			myAudio.play();
-        });
- 
- //解协议
- function ParseProto(data)
- {
-	var temp = "";
-	var input = new Uint8Array(data),
-	duration,
-	video,
-	audio;
-	
-	if(input[0] == 0 && input[1] == 0 && input[2] == 0 && input[3] == 1)
-	{
-		// debugger
-		video = input;
-		duration = 24;
-		var nalType = input[4] &0x1f;//nalType == 0x07|| nalType == 0x08 || nalType == 0x05
-		
-		if(!isFeed)
-		{	
-			if(nalType == 0x05)
-			{
-				console.log("发现I帧");
-			}
-		
-			 if(nalType  == 0x05 && isVisuable)
-			 {
-				console.log("检测到I帧 %d,重新渲染, 耗时 %d ms", nalType , new Date().getTime() - requestTime);
-				isFeed = true;	
-			 }			 			 	
-		}
-		
-	}
-	else if(input[0] == 0xff)
-	{
-		if(!isEnough)
-		{
-			requestCount++;
-		}
-		audio = input;
-		
-		if(new Date().getTime() - curTime > 100)
-		{
-			delayTime = new Date().getTime();
-			console.log("接收时间 %d ms", new Date().getTime() - curTime);
-		}
-		curTime = new Date().getTime();				
-		duration = 24;
-		//console.log("duration %d", duration);
-		
-	}
-	else if(input[0] == 0x68)
-	{	
-		if(input[23] == 0x05)//横竖屏标识
-		{
-			var state = CheckScreenDirection(input.slice(24, 24 + 8));
-			
-			if(state == 1)
-			{
-				console.log("安卓卡此时竖屏");
-				//竖屏处理
-			}
-			else
-			{
-				console.log("安卓卡此时横屏");
-				//横屏处理
-			}
-		}
-		
-		if(input[23] == 0x0b)
-		{
-			console.log("多端登陆");
-		}
-		//console.log("屏幕旋转 %s", PrintArry(input));
-	}
-
-	return {
-        audio: audio,
-        video: video,
-        duration: duration
-      };
- }
- 
- window.onload = function() {
-    var socketURL = 'wss://jmuxer-demo-server.herokuapp.com';
-	 //socketURL = "ws://127.0.0.1:8080"
-	//socketURL = "ws://192.168.11.238:8080"
-	//socketURL = "ws://14.215.128.98:14112";
-	socketURL = "ws://192.168.11.66:9101";
-	//socketURL = "wss://192.168.11.242:9104";
-
-	
-    var jmuxer = new JMuxer({
-        node: 'player',
-		flushingTime:15 ,
-        fps: 30,
-		mode:'video',
-        debug: false
-     });
-	 
-	 var audioMuxer = new JMuxer({
-        node: 'audioPlayer',
-		flushingTime:1,
-		clearBuffer: true,
-        fps: 60,//可以不选,原先43
-		mode:'audio',
-        debug: false
-     });
-	 
-
-	 /*var costTime =  new Date().getTime() - curTime;
-	 if(costTime > 5)
-	 {
-		console.log("websocket接收延迟 %d ms", costTime);
-	 }*/
-	 
-	 curTime = new Date().getTime();	
-     var ws = new WebSocket(socketURL);
-     ws.binaryType = 'arraybuffer';
-	  
-	 //断开检测
-	 ws.onclose = function (e) {
-                alert("websocket连接断开");
-				console.log('websocket 断开: ' + e.code + ' ' + e.reason + ' ' + e.wasClean);
-				console.log(e);
-            }
-							
-	ws.addEventListener('open', function (event) {
-		console.log("发送配置帧");
-		ws.send(ConfigChannel("RK3923C1201900139"));
-	});
-	
-	ws.addEventListener('error', function (event) {
-		console.log("连接失败");
-	});
-	
-
-	/*setInterval(function()
-	{ 	
-		var audioData = 
-		{
-			audio: null,
-			video: null,
-			duration: 24
-		};
-				
-	    if(myAudio != null)
-		{	
-			if(audioBuffer.length < 1)
-			{			
-				if(audioBack.length > 0)
-				{
-					audioData.audio = audioBack[0];
-					audioMuxer.feed(audioData);
-					audioBack.shift();
-				}
-																	
-				return;
-			}
-			
-			if(audioBack.length > 10)
-			{
-				audioBack.shift();
-			}
-		
-			if(audioBuffer.length > 50)
-			{
-				console.log("当前大小 %d", audioBuffer.length);
-				audioBuffer = [];
-			}
-			else if(audioBuffer.length > 1)
-			{		    		   						
-				
-				var time = new Date().getTime();
-				audioData.audio = audioBuffer[0];
-				audioMuxer.feed(audioData);
-				
-				if(time - feedTime > 80)
-				{								
-					console.log("喂数据间隔 %d ms, 队列长度", time - feedTime, audioBuffer.length);
-				}
-				feedTime = time;
-				
-				audioBuffer.shift();
-			}
-		}
-	}, 1);*/
-	
-     ws.addEventListener('message',function(event) {
-		  var data = ParseProto(event.data);//JAVA服务器转发
-		  //console.log("收到数据");
-					
-		  var audioData = {
-			audio: data.audio,
-			video: null,
-			duration: data.duration
-		  };
-		  
-		  var videoData = {
-			audio: null,
-			video: data.video,
-			duration: data.duration
-		  };	  
-		 	 
-		
-		  if(myAudio.readyState == 2)
-		  {
-			requestTime = new Date().getTime();
-			isEnough = false;
-			console.log("数据存储不够,出现声音停止");
-			//myAudio.playbackRate = 2;
-		  }
-		  else if(myAudio.readyState == 4 && isEnough== false)
-		  {
-				var time = new Date().getTime();
-				isEnough = true;
-				console.log("填满耗时 %d ms, 填充帧数 %d, 填充延迟 %d ms", time - requestTime, requestCount, requestCount * 23);
-				requestCount = 0;
-				console.log("----接收到启动 %d ms---", time - delayTime);
-		  }
-		  
-		  if(data.audio != null)//喂音频
-		  {				
-			//audioBuffer.push(data.audio);
-			//audioBack.push(data.audio)			;
-			audioMuxer.feed(audioData);
-		  }		  
-		  
-		  if(data.video != null)//喂视频
-		  {
-			 if(isFeed)
-			 {
-				jmuxer.feed(data);
-			 }
-			 
-			 //jmuxer.feed(videoData);
-		  }
-		   	 	 	 	  
-     });
-	 
-	
-	myVideo.onmousedown = function(event)
-    {
-		//放在此处只是为了方便演示,实际使用中查找横竖屏只要刚连接上时调用一次就好。	
-		//var checkBuffer = GetScreenState();
-		//ws.send(checkBuffer);
-
-		if(!isFeed)
-		{
-			console.log("重新申请I帧");
-			requestTime = new Date().getTime();			
-			var buffer = RequestIFrame();
-			//var buffer = new Uint8Array([0x01]);
-			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);
-			isDrag = true;
-		}
-			
-    }
-	
-	myVideo.onmousemove = function(event)
-	{
-		if(isDrag && event.button == 0)
-		{
-			var posX = event.offsetX * 1080 *1.0/myVideo.clientWidth;
-			var posY = event.offsetY * 1920 *1.0/myVideo.clientHeight;
-			var buffer = ExexuteMouseMove(posX.toString(), posY.toString());
-			ws.send(buffer);
-			//console.log("移动位置 %d, %d", posX, posY);
-		}
-		
-	}
-	
-	myVideo.onmouseup = function(event)
-	{	
-		isDrag = false;
-		var posX = event.offsetX * 1080 *1.0/myVideo.clientWidth;
-		var posY = event.offsetY * 1920 *1.0/myVideo.clientHeight;
-		var buffer = ExexuteMouseUp(posX.toString(), posY.toString());
-		ws.send(buffer);
-		
-	}
-	
-	myVideo.onkeydown = function(event)
-	{	
-		ExexuteKeyDown(e.keyCode);
-	}
-	
- }  
-
-function Back()
-{	
-	if(event.button == 2)
-	{
-		//ExexuteKeyDown(4);
-	}
-	ExexuteKeyDown(4);
-	window.event.returnValue=false;  
-    return false;  
-}
- 
-</script>
-<script type="text/javascript" src="jmuxer.js"></script>
-</body>
-</html>

+ 0 - 382
decoker/screenAndroid/index.html

@@ -1,382 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-	<head>
-		<meta charset="UTF-8">
-		<meta name="description" content="jMuxer - a simple javascript mp4 muxer for non-standard streaming communications protocol">
-		<meta name="keywords" content="h264 player, mp4 player, mse, mp4 muxing, jmuxer, aac player">
-		<title>JMuxer demo</title>
-		<script async defer src="https://buttons.github.io/buttons.js"></script>
-		<style type="text/css">
-			.github-tools {
-				position: absolute;
-				top: 15px;
-				right: 15px;
-			}
-
-			a.h264-player {
-				font-size: 20px;
-				text-decoration: none;
-				color: #07568e;
-				margin-top: 10px;
-				display: block;
-			}
-
-			.gesture {
-				font-size: 15px;
-				color: #ad4903;
-				margin-top: 10px;
-			}
-		</style>
-	</head>
-	<body>
-
-		<h2>jMuxer Demo</h2>
-		<p>Sample demo node server is running on heroku free hosting</p>
-		<br /><br />
-		<div class="github-tools">
-			<!-- Place this tag where you want the button to render. -->
-
-		</div>
-
-		<div id="container" style="width: 600px; margin: 0 auto;">
-			<video width="70%" disablePictureInPicture="true" autoplay poster="images/loader-thumb.jpg" id="player"></video>
-			<audio width="50%" preload="auto" autoplay controls poster="images/loader-thumb.jpg" id="audioPlayer"></audio>
-			<div class="gesture">If it does not play automatically, Click the `video play button` to initiate the video</div>
-		</div>
-
-		<body oncontextmenu="Back()">
-		</body>
-
-		<script src="helper.js">
-		</script>
-
-		<script>
-			//隐藏控件 controls
-			var fpsCount = 0;
-			var requestCount = 0;
-			var timeCount = 0;
-			var isVisuable = true;
-			var isFeed = true;
-			var isDrag = false;
-			var shoudDrop = false;
-			var isEnough = true;
-			var ifCanPlay = false;
-			var isFinish = false;
-
-			var delayTime = new Date().getTime();
-			var feedTime = new Date().getTime();
-			var readyTime = new Date().getTime();
-			var requestTime = new Date().getTime();
-			var curTime = new Date().getTime();
-			var requestTime = new Date().getTime(); //记录离开时间
-			var myVideo = document.getElementById("player");
-			var myAudio = document.getElementById("audioPlayer");
-			var audioBuffer = [];
-			var audioBack = [];
-
-			Module = {};
-			Module.onRuntimeInitialized = function() {
-				console.log("Wasm 加载成功!")
-				isFinish = true;
-			}
-
-			document.addEventListener("visibilitychange", () => {
-
-				if (document.visibilityState == "visible") {
-					console.log("页面可见,继续喂视频");
-					//requestTime = new Date().getTime();	
-					isVisuable = true;
-				} else {
-					isVisuable = false;
-					isFeed = false;
-					myVideo.pause();
-				}
-
-
-			});
-
-
-			myVideo.play();
-
-			myVideo.addEventListener('pause', function() {
-				//console.log("视频播放暂停");
-				isFeed = false;
-			});
-
-			myAudio.addEventListener('canplay', function() {
-				console.log("缓冲区大小 %f", myAudio.buffered.end(0) - myAudio.buffered.start(0));
-			});
-
-			/*function decodeAAC(data)
-			{
-				var retPtr = Module._malloc(4 * 5 * 1024);//接收的数据
-				var inputPtr = Module._malloc(4 * data.length);//输入数据
-				
-				for( 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++)
-					{
-						pcmData[i] = Module.HEAPU8[(retPtr)+i]
-					}
-					
-					player.feed(pcmData);
-				}
-				else
-				{
-					console.log("%d帧 aac 解码失败, %d", decodeCount, pcmLen);
-				}
-				
-				decodeCount++;
-				Module._free(inputPtr);
-				Module._free(retPtr);
-			}	*/
-
-
-			//解协议
-			function ParseProto(data) {
-				var temp = "";
-				var input = new Uint8Array(data),
-					duration,
-					video,
-					audio;
-
-				if (input[0] == 0 && input[1] == 0 && input[2] == 0 && input[3] == 1) {
-					// debugger
-					video = input;
-					duration = 24;
-					var nalType = input[4] & 0x1f; //nalType == 0x07|| nalType == 0x08 || nalType == 0x05
-
-					if (!isFeed) {
-						if (nalType == 0x05) {
-							console.log("发现I帧");
-						}
-
-						if (nalType == 0x05 && isVisuable) {
-							console.log("检测到I帧 %d,重新渲染, 耗时 %d ms", nalType, new Date().getTime() - requestTime);
-							isFeed = true;
-						}
-					}
-
-				} else if (input[0] == 0xff) {
-					if (!isEnough) {
-						requestCount++;
-						//audioBuffer.push(input);
-					}
-					audio = input;
-
-					if (new Date().getTime() - curTime > 100) {
-						delayTime = new Date().getTime();
-						console.log("接收时间 %d ms", new Date().getTime() - curTime);
-					}
-					curTime = new Date().getTime();
-					duration = 24;
-					//console.log("duration %d", duration);
-
-				} else if (input[0] == 0x68) {
-					if (input[23] == 0x05) //横竖屏标识
-					{
-						var state = CheckScreenDirection(input.slice(24, 24 + 8));
-
-						if (state == 1) {
-							console.log("安卓卡此时竖屏");
-							//竖屏处理
-						} else {
-							console.log("安卓卡此时横屏");
-							//横屏处理
-						}
-					}
-
-					if (input[23] == 0x0b) {
-						console.log("多端登陆");
-					}
-					//console.log("屏幕旋转 %s", PrintArry(input));
-				}
-
-				return {
-					audio: audio,
-					video: video,
-					duration: duration
-				};
-			}
-
-			window.onload = function() {
-				// var socketURL = 'wss://jmuxer-demo-server.herokuapp.com';
-				//socketURL = "ws://127.0.0.1:8080"
-				// socketURL = "ws://192.168.11.233:8080"
-				//socketURL = "ws://14.215.128.98:14112";
-				var socketURL = "ws://192.168.11.66:9101";
-				// socketURL = "ws://14.215.128.98:14077";
-				//socketURL = "wss://192.168.11.242:9104";
-
-
-				var jmuxer = new JMuxer({
-					node: 'player',
-					flushingTime: 15,
-					fps: 30,
-					mode: 'video',
-					debug: false
-				});
-
-				var audioMuxer = new JMuxer({
-					node: 'audioPlayer',
-					flushingTime: 15,
-					clearBuffer: true,
-					fps: 60, //可以不选,原先43
-					mode: 'audio',
-					debug: false
-				});
-
-				curTime = new Date().getTime();
-				var ws = new WebSocket(socketURL);
-				ws.binaryType = 'arraybuffer';
-
-				//断开检测
-				ws.onclose = function(e) {
-					alert("websocket连接断开");
-					console.log('websocket 断开: ' + e.code + ' ' + e.reason + ' ' + e.wasClean);
-					console.log(e);
-				}
-
-				ws.addEventListener('open', function(event) {
-					console.log("发送配置帧");
-					ws.send(ConfigChannel("RK3923C1201900139"));
-				});
-
-				ws.addEventListener('error', function(event) {
-					console.log("连接失败");
-				});
-
-				ws.addEventListener('message', function(event) {
-					var data = ParseProto(event.data); //JAVA服务器转发
-					//console.log("收到数据");
-
-					var audioData = {
-						audio: data.audio,
-						video: null,
-						duration: data.duration
-					};
-
-					var videoData = {
-						audio: null,
-						video: data.video,
-						duration: data.duration
-					};
-
-					if (myAudio.readyState == 2) {
-						requestTime = new Date().getTime();
-						isEnough = false;
-						console.log("数据存储不够,出现声音停止,时间差 %f", myAudio.buffered.end(0));
-						myAudio.pause();
-						//myAudio.playbackRate = 2;
-					} else if (myAudio.readyState == 4 && isEnough == false) {
-						myAudio.play();
-						var time = new Date().getTime();
-						isEnough = true;
-						console.log("填满耗时 %d ms, 填充帧数 %d, 填充延迟 %d ms", time - requestTime, requestCount, requestCount * 23);
-
-						console.log("----接收到启动 %d ms, 缓冲区 %f---", time - delayTime, myAudio.buffered.end(0) - myAudio.played.end(0));
-					}
-
-					if (data.audio != null) //喂音频
-					{
-						if (myAudio.buffered.length > 0 && myAudio.played.length > 0) {
-							var bufferTime = myAudio.buffered.end(0) - myAudio.played.end(0);
-							//console.log(" bufferTime %d", bufferTime);
-
-							if (bufferTime > 1) {
-								//console.log("丢掉一些包");
-								//return;
-							}
-						}
-
-						audioMuxer.feed(audioData);
-					}
-
-					if (data.video != null) //喂视频
-					{
-						if (isFeed) {
-							jmuxer.feed(data);
-						}
-
-						//jmuxer.feed(videoData);
-					}
-
-				});
-
-
-				myVideo.onmousedown = function(event) {
-					//放在此处只是为了方便演示,实际使用中查找横竖屏只要刚连接上时调用一次就好。	
-					//var checkBuffer = GetScreenState();
-					//ws.send(checkBuffer);
-
-					if (!isFeed) {
-						console.log("重新申请I帧");
-						requestTime = new Date().getTime();
-						var buffer = RequestIFrame();
-						//var buffer = new Uint8Array([0x01]);
-						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);
-						isDrag = true;
-					}
-
-				}
-
-
-				myVideo.onmousemove = function(event) {
-					if (isDrag && event.button == 0) {
-						var posX = event.offsetX * 1080 * 1.0 / myVideo.clientWidth;
-						var posY = event.offsetY * 1920 * 1.0 / myVideo.clientHeight;
-						var buffer = ExexuteMouseMove(posX.toString(), posY.toString());
-						ws.send(buffer);
-						//console.log("移动位置 %d, %d", posX, posY);
-					}
-
-				}
-
-				myVideo.onmouseup = function(event) {
-					isDrag = false;
-					var posX = event.offsetX * 1080 * 1.0 / myVideo.clientWidth;
-					var posY = event.offsetY * 1920 * 1.0 / myVideo.clientHeight;
-					var buffer = ExexuteMouseUp(posX.toString(), posY.toString());
-					ws.send(buffer);
-
-				}
-
-				myVideo.onkeydown = function(event) {
-					ExexuteKeyDown(e.keyCode);
-				}
-
-			}
-
-			function Back() {
-				if (event.button == 2) {
-					//ExexuteKeyDown(4);
-				}
-				ExexuteKeyDown(4);
-				window.event.returnValue = false;
-				return false;
-			}
-		</script>
-		<script type="text/javascript" src="jmuxer.js"></script>
-		<!--<script type="text/javascript" src="aac.js"></script>-->
-
-	</body>
-</html>

+ 0 - 669
decoker/screenAndroid/mobile.vue

@@ -1,669 +0,0 @@
-<template>
-  <div>
-    <el-dialog v-el-drag-dialog :visible.sync="showMobile" title="" :close-on-click-modal="false" :close-on-press-escape="false" :custom-class="mobileStyle" @close="close">
-      <div slot="title" class="cfff fs14">
-        <span class="ml20">{{ mobileName }}</span>
-        <el-dropdown placement="bottom" class="fr mr100 oln" trigger="hover" @command="handleCommand" @visible-change="handleVisble">
-          <span class="fs14 cfff">{{ bitRateText }}<i :class="caretIcon" /></span>
-          <el-dropdown-menu slot="dropdown" class="mobile-dropdown-menu">
-            <el-dropdown-item :class="bitRateStyle('1638400')" command="1638400">自动</el-dropdown-item>
-            <el-dropdown-item :class="bitRateStyle('491520')" command="491520">极速</el-dropdown-item>
-            <el-dropdown-item :class="bitRateStyle('1392640')" command="1392640">标清</el-dropdown-item>
-            <el-dropdown-item :class="bitRateStyle('2785280')" command="2785280">高清</el-dropdown-item>
-          </el-dropdown-menu>
-        </el-dropdown>
-      </div>
-      <div class="frns">
-        <div class="mobile-audio">
-          <video
-            ref="player"
-            width="372px"
-            :controls="false"
-            autoplay
-            @play="ready"
-            @error="error"
-            @pause="pause"
-            @mousedown="handleMouseDown"
-            @mousemove="handleMouseMove"
-            @mouseup="handleMouseUp"
-            @mouseleave="handleMouseLeave"
-          />
-          <audio
-            ref="audioPlayer"
-            width="372px"
-            controls
-            autoplay
-            poster="@/assets/equipment/loader-thumb.jpg"
-          />
-          <div v-if="isMask" class="mask">
-            <i v-if="isLoading" class="el-icon-loading" />
-            <img v-if="isError" class="w180h148" src="@/assets/equipment/guzhang_lixian_pic.png" alt="">
-            <div class="c999 fs12 mt15">{{ maskText }}</div>
-          </div>
-        </div>
-        <div class="mobile-sidebar">
-          <i :class="volumeUpIcon" @click="handleRoutine(24)" />
-          <i :class="volumeDownIcon" @click="handleRoutine(25)" />
-          <el-popover placement="bottom-start" popper-class="nav-popover" width="109" trigger="hover">
-            <div class="tac ptb10 c333 fs14">重启</div>
-            <i slot="reference" :class="shutDownIcon" @click="reboot" />
-          </el-popover>
-          <el-popover placement="bottom-start" popper-class="nav-popover" width="109" trigger="hover">
-            <div class="tac ptb10 c333 fs14">恢复出厂设置</div>
-            <i slot="reference" :class="restartIcon" @click="recovery" />
-          </el-popover>
-        </div>
-      </div>
-      <div class="mobile-bottombar">
-        <i :class="menuIcon" @click="handleRoutine(187)" />
-        <i :class="homeIcon" @click="handleRoutine(3)" />
-        <i :class="backIcon" @click="handleRoutine(4)" />
-      </div>
-    </el-dialog>
-  </div>
-</template>
-
-<script>
-import elDragDialog from '@/directive/el-drag-dialog'
-import JMuxer from 'jmuxer'
-import { getcardInfoBySn, rebootBatch, recovery, getcardStatus } from '@/api/mobile'
-import { ExexuteMouseDown, ExexuteMouseMove, ExexuteMouseUp, ExexuteKeyDown, ExexutePixel, ExexuteCloseServer, CheckScreenDirection, RequestIFrame, ConfigChannel } from '@/utils/control'
-import { keycodeMode } from '@/utils/config'
-
-const VIDEO_WIDTH = 371
-const VIDEO_HEIGHT = 660
-
-export default {
-  name: 'DragDialogDemo',
-  directives: { elDragDialog },
-  props: {
-    sn: {
-      type: Array,
-      default: () => {
-        return []
-      }
-    },
-    mobileName: {
-      type: String,
-      default: ''
-    },
-    mobileId: {
-      type: Number,
-      default: 0
-    }
-  },
-  data() {
-    return {
-      showMobile: true,
-      fpsCount: 0,
-      timeCount: 0,
-      isFeed: true,
-      curTime: new Date().getTime(),
-      requestTime: new Date().getTime(),
-      jmuxer: null,
-      audioMuxer: null,
-      ip: '', // 设备ip
-      port: '', // 设备端口号
-      size: '', // 设备分辨率
-      bitRate: '', // 设备清晰度
-      path: 'ws://192.168.11.66:9101', // websocket地址
-      socket: null, // websocket类
-      isDrag: false,
-      isLoading: true, // 加载中
-      isMask: true, // 遮罩层
-      maskText: '', // 加载文字
-      isError: false, // 是否设备故障或者离线
-      visble: false, // 下拉菜单是否展开
-      isRotate: false, // 是否横屏
-      isFlag: false
-    }
-  },
-  computed: {
-    bitRateStyle() {
-      return (num) => {
-        return this.bitRate === num ? 'pl20 bgcf3f6ff c515ff0 fs14' : 'pl20 c333 fs14'
-      }
-    },
-    bitRateText() {
-      /**
-       * 极速 | 491520,60KB/S
-       * 标清 | 1392640 ,170KB/S
-       * 自动 | 1638400 ,200KB/S
-       * 高清 | 2785280 ,340KB/S
-       */
-      const option = {
-        '1638400': '自动',
-        '491520': '极速',
-        '1392640': '标清',
-        '2785280': '高清'
-      }
-      return option[this.bitRate]
-    },
-    volumeUpIcon() {
-      return this.isLoading || this.isError ? 'icon-volume-up disabled mt50' : 'icon-volume-up mt50'
-    },
-    volumeDownIcon() {
-      return this.isLoading || this.isError ? 'icon-volume-down disabled mt40' : 'icon-volume-down mt40'
-    },
-    shutDownIcon() {
-      return this.isLoading || this.isError ? 'icon-shutdown disabled mt226ormt90' : 'icon-shutdown mt226ormt90'
-    },
-    restartIcon() {
-      return this.isLoading || this.isError ? 'icon-restart disabled mt40' : 'icon-restart mt40'
-    },
-    menuIcon() {
-      return this.isLoading || this.isError ? 'icon-background disabled' : 'icon-background'
-    },
-    homeIcon() {
-      return this.isLoading || this.isError ? 'icon-index disabled mlr64ormlr160' : 'icon-index mlr64ormlr160'
-    },
-    backIcon() {
-      return this.isLoading || this.isError ? 'icon-back disabled' : 'icon-back'
-    },
-    caretIcon() {
-      return this.visble ? 'el-icon-caret-top ml5' : 'el-icon-caret-bottom ml5'
-    },
-    mobileStyle() {
-      return this.isRotate ? 'mobile-dialog rotate' : 'mobile-dialog'
-    }
-  },
-  created() {
-    this.getcardInfoBySn()
-  },
-  mounted() {
-    document.addEventListener('visibilitychange', this.audioPlay)
-    document.addEventListener('keydown', this.handleKeyDown)
-    this.$nextTick(() => {
-      this.jmuxer = new JMuxer({
-        node: this.$refs.player,
-        flushingTime: 15,
-        fps: 30,
-        mode: 'video',
-        debug: false
-      })
-      this.audioMuxer = new JMuxer({
-        node: this.$refs.audioPlayer,
-        flushingTime: 1,
-        clearBuffer: true,
-        fps: 43, // 可以不选
-        mode: 'audio',
-        debug: false
-      })
-    })
-
-    this.curTime = new Date().getTime()
-  },
-  destroyed() {
-    document.removeEventListener('visibilitychange', this.audioPlay)
-    document.removeEventListener('keydown', this.handleKeyDown)
-    this.socket.send(ExexuteCloseServer(this.sn.join(','))) // 销毁监听
-    this.socket.close()
-  },
-  methods: {
-    handleVisble(flag) {
-      this.visble = flag
-    },
-    // 设备恢复出厂设置
-    recovery() {
-      if (this.isLoading || this.isError) {
-        this._message.warning('操作过于频繁,请稍后再试')
-        return
-      }
-      this.$confirm('<div class="c666 fs18 mb10">确认要恢复出厂设置吗?</div><div class="c999 fs14">恢复出厂后将恢复到初始设置并清除所有数据,恢复出厂过程/n中设备将不可操作。</div>', '恢复出厂', {
-        dangerouslyUseHTMLString: true,
-        confirmButtonText: '确认',
-        cancelButtonText: '取消',
-        customClass: 'cloud-phone-message-box', // 自定义消息样式类名
-        confirmButtonClass: 'cloud-phone-confirm-btn', // 自定义确认按钮样式类名
-        cancelButtonClass: 'cloud-phone-cancel-btn' // 自定义取消按钮样式类名
-      }).then(() => {
-        recovery({ sns: this.sn.join(',') }).then(res => {
-          if (res.status === 0) {
-            this.$alert('<div class="c666 fs18 mb10">恢复出厂设置指令已发送</div><div class="c999 fs14">若恢复出厂设置失败可重试</div>', '恢复出厂', {
-              dangerouslyUseHTMLString: true,
-              confirmButtonText: '确认',
-              customClass: 'cloud-phone-message-box',
-              confirmButtonClass: 'cloud-phone-confirm-btn', // 自定义确认按钮样式类名
-              callback: action => {
-                this.isMask = true
-                this.isLoading = true
-                this.maskText = '设备恢复出厂设置中...'
-                this._send()
-              }
-            })
-          } else {
-            this._message.error('恢复出厂设置指令发送失败,请稍后再试')
-          }
-        })
-      }).catch(() => {})
-    },
-    // 设备重启
-    reboot() {
-      if (this.isLoading || this.isError) {
-        this._message.warning('操作过于频繁,请稍后再试')
-        return
-      }
-      this.$confirm('<div class="c666 fs18 mb10">确认要重启设备吗?</div><div class="c999 fs14">重启后将完全关闭后台进程,重启过程中设备将不可操作。</div>', '重启', {
-        dangerouslyUseHTMLString: true,
-        confirmButtonText: '确认',
-        cancelButtonText: '取消',
-        customClass: 'cloud-phone-message-box', // 自定义消息样式类名
-        confirmButtonClass: 'cloud-phone-confirm-btn', // 自定义确认按钮样式类名
-        cancelButtonClass: 'cloud-phone-cancel-btn' // 自定义取消按钮样式类名
-      }).then(() => {
-        rebootBatch({ sns: this.sn.join(',') }).then(res => {
-          if (res.status === 0) {
-            this.$alert('<div class="c666 fs18 mb10">重启指令已发送</div><div class="c999 fs14">若重启失败可重试</div>', '重启', {
-              dangerouslyUseHTMLString: true,
-              confirmButtonText: '确认',
-              customClass: 'cloud-phone-message-box',
-              confirmButtonClass: 'cloud-phone-confirm-btn', // 自定义确认按钮样式类名
-              callback: action => {
-                this.isMask = true
-                this.isLoading = true
-                this.maskText = '设备重启中...'
-                this._send()
-              }
-            })
-          } else {
-            this._message.error('重启指令发送失败,请稍后再试')
-          }
-        })
-      }).catch(() => {})
-    },
-    async _send() {
-      const state = await this.getcardStatus()
-      if (state === '1') {
-        this.socket.send(ExexuteCloseServer(this.sn.join(','))) // 销毁监听
-        this.socket.close()
-        this.init()
-        this.isLoading = false
-        this.isMask = false
-        this.maskText = ''
-      } else {
-        setTimeout(() => {
-          this._send()
-        }, 3000)
-      }
-    },
-    async getcardStatus() {
-      const res = await getcardStatus({ sns: this.sn.join(',') }).then(res => { return res })
-      let state = '0'
-      if (res.status === 0) {
-        state = res.data[0].state
-      }
-      return state
-    },
-    // 设置像素
-    handleCommand(command) {
-      if (this.isLoading || this.isError) {
-        return
-      }
-      this.bitRate = command
-      const buffer = ExexutePixel(command, this.sn.join(','))
-      this.socket.send(buffer)
-    },
-    // 音量加减、home键、back事件(keyCode的值分别表示为25减音量,24加音量,4为返回键,3为home键,187为切换菜单)
-    handleRoutine(code) {
-      if (this.isLoading || this.isError) {
-        return
-      }
-      const buffer = ExexuteKeyDown(code, this.sn.join(','))
-      this.socket.send(buffer)
-    },
-    // 鼠标点击事件
-    handleMouseDown(event) {
-      if (this.isLoading || this.isError) {
-        return
-      }
-      if (event.button === 0) {
-        var posX = this.isRotate ? event.offsetY / VIDEO_HEIGHT * 1920 * 1.0 : event.offsetX / VIDEO_WIDTH * 1080 * 1.0
-        var posY = this.isRotate ? (VIDEO_WIDTH - event.offsetX) / VIDEO_WIDTH * 1080 * 1.0 : event.offsetY / VIDEO_HEIGHT * 1920 * 1.0
-        var buffer = ExexuteMouseDown(posX.toString(), posY.toString(), this.sn.join(','))
-        this.socket.send(buffer)
-        this.isDrag = true
-      }
-    },
-    // 鼠标移开事件
-    handleMouseLeave(event) {
-      if (this.isLoading || this.isError) {
-        return
-      }
-      this.isDrag = false
-      var posX = this.isRotate ? event.offsetY / VIDEO_HEIGHT * 1920 * 1.0 : event.offsetX / VIDEO_WIDTH * 1080 * 1.0
-      var posY = this.isRotate ? (VIDEO_WIDTH - event.offsetX) / VIDEO_WIDTH * 1080 * 1.0 : event.offsetY / VIDEO_HEIGHT * 1920 * 1.0
-      var buffer = ExexuteMouseUp(posX.toString(), posY.toString(), this.sn.join(','))
-      this.socket.send(buffer)
-    },
-    // 鼠标移动事件
-    handleMouseMove(event) {
-      if (this.isLoading || this.isError) {
-        return
-      }
-      if (this.isDrag && event.button === 0) {
-        var posX = this.isRotate ? event.offsetY / VIDEO_HEIGHT * 1920 * 1.0 : event.offsetX / VIDEO_WIDTH * 1080 * 1.0
-        var posY = this.isRotate ? (VIDEO_WIDTH - event.offsetX) / VIDEO_WIDTH * 1080 * 1.0 : event.offsetY / VIDEO_HEIGHT * 1920 * 1.0
-        var buffer = ExexuteMouseMove(posX.toString(), posY.toString(), this.sn.join(','))
-        this.socket.send(buffer)
-      }
-    },
-    // 鼠标离开事件
-    handleMouseUp(event) {
-      if (this.isLoading || this.isError) {
-        return
-      }
-      this.isDrag = false
-      var posX = this.isRotate ? event.offsetY / VIDEO_HEIGHT * 1920 * 1.0 : event.offsetX / VIDEO_WIDTH * 1080 * 1.0
-      var posY = this.isRotate ? (VIDEO_WIDTH - event.offsetX) / VIDEO_WIDTH * 1080 * 1.0 : event.offsetY / VIDEO_HEIGHT * 1920 * 1.0
-      var buffer = ExexuteMouseUp(posX.toString(), posY.toString(), this.sn.join(','))
-      this.socket.send(buffer)
-    },
-    // 键盘输入事件
-    handleKeyDown(event) {
-      if (this.isLoading || this.isError) {
-        return
-      }
-      var buffer = ExexuteKeyDown(keycodeMode[event.keyCode] || event.keyCode, this.sn.join(','))
-      this.socket.send(buffer)
-    },
-    // websocket初始化
-    init() {
-      this.socket = new WebSocket(this.path) // 实例化socket
-      this.socket.binaryType = 'arraybuffer'
-      this.socket.onopen = this.open // 监听socket连接
-      this.socket.onerror = this.onerror // 监听socket错误信息
-      this.socket.onmessage = this.getMessage // 监听socket消息
-    },
-    // websocket连接成功回调
-    open() {
-      this.isMask = false
-      this.isError = false
-      this.socket.send(ConfigChannel(this.sn))
-      this.socket.onmessage = this.getMessage
-    },
-    // websocket连接失败回调
-    onerror() {
-      console.log('websocket连接失败')
-      this.isLoading = false
-      this.isError = true
-      this.maskText = '设备故障或离线'
-    },
-    getMessage(event) {
-      const data = this.parse(event.data) // 分离音视频数据
-      const audioData = {
-        audio: data.audio,
-        video: null,
-        duration: data.duration
-      }
-      // const videoData = {
-      //   audio: null,
-      //   video: data.video,
-      //   duration: data.duration
-      // }
-
-      if (this.$refs.audioPlayer && this.$refs.audioPlayer.readyState === 2) {
-        const playPromise = this.$refs.audioPlayer.play()
-        if (playPromise !== undefined) {
-          playPromise.then(() => {
-            this.$refs.audioPlayer.play()
-          }).catch(() => {})
-        }
-      }
-      if (data.audio != null) { // 喂音频
-        this.audioMuxer.feed(audioData)
-      }
-      if (data.video != null && this.isFeed) { // 喂视频
-        this.jmuxer.feed(data)
-      }
-      if (data.video) {
-        if (new Date().getTime() - this.curTime >= 1000) {
-          this.fpsCount = 0
-          this.curTime = new Date().getTime()
-        } else {
-          this.fpsCount++
-        }
-      }
-    },
-    // 弹窗关闭
-    close() {
-      this.$emit('closeDialog', 'showMobile')
-    },
-    // 根据sn获取设备获取清晰度、端口号和ip
-    getcardInfoBySn() {
-      var list = []
-      list.push(this.mobileId)
-      getcardInfoBySn({ mobileIdList: list }).then(res => {
-        if (res.status === 0) {
-          this.ip = res.data[0].ip
-          this.port = res.data[0].port
-          this.size = res.data[0].size
-          this.bitRate = res.data[0].bitRate === '0' ? '1638400' : res.data.bitRate
-          this.path = `ws://${res.data[0].ip}:${res.data[0].websocketPort.toString()}`
-          //console.log(this.path)
-          this.init()
-        }
-      })
-    },
-    pause() {
-      this.isFeed = false
-    },
-    audioPlay() {
-      if (document.visibilityState === 'visible') {
-        this.isFlag = true
-        this.socket.send(RequestIFrame(this.sn.join(',')))
-      } else {
-        this.isFlag = false
-        this.isFeed = false
-        this.$refs.player.pause()
-      }
-    },
-    ready() {
-      this.isLoading = false
-    },
-    error() {
-      this.isMask = true
-      this.isError = true
-    },
-    parse(data) {
-      // var input = new Uint8Array(data)
-      // var dv = new DataView(input.buffer)
-      // var duration = dv.getUint16(0, true) // 获取duration
-      // var audioLength = dv.getUint16(2, true)
-      // var audio
-      // var video
-
-      // if (audioLength === 0) {
-      //   video = input.subarray(4)
-      // } else {
-      //   audio = input.subarray(4, (audioLength + 4))
-      //   video = input.subarray(audioLength + 4)
-      // }
-
-      // return {
-      //   audio: audio,
-      //   video: video,
-      //   duration: duration
-      // }
-      var input = new Uint8Array(data)
-      var duration
-      var video
-      var audio
-      if (input[0] === 0 && input[1] === 0 && input[2] === 0 && input[3] === 1) {
-        video = input
-        duration = 24
-        var nalType = input[4] & 0x1f
-        if (nalType === 0x05 && this.isFlag) { // 策略, 找到sps、sps、或I帧,才继续渲染
-          this.isFeed = true
-        }
-      } else if (input[0] === 0xff) {
-        audio = input
-        duration = 24
-      } else if (input[23] === 0x0b) {
-        this.$alert('<div class="c666 fs18 mb10">设备' + this.mobileName + '已在其它端受控</div>', '提示', {
-          dangerouslyUseHTMLString: true,
-          confirmButtonText: '确认',
-          customClass: 'cloud-phone-message-box',
-          confirmButtonClass: 'cloud-phone-confirm-btn', // 自定义确认按钮样式类名
-          callback: action => {
-            this.showMobile = false
-          }
-        })
-      } else if (input[0] === 0x68 && input[23] === 0x05) {
-        var state = CheckScreenDirection(input.slice(24, 24 + 8))
-        if (state === 1) {
-          this.isRotate = false
-        } else {
-          this.isRotate = true
-        }
-      }
-
-      return {
-        audio: audio,
-        video: video,
-        duration: duration
-      }
-    }
-  }
-}
-</script>
-
-<style lang="scss">
-  .ml111 {margin-left: 111px;}.mt50{margin-top: 50px;}.mt40{margin-top: 40px;}
-  .w180h148 {width: 180px;height: 148px;}.mr100{margin-right: 100px;}
-  .mobile-dialog {
-    width: 417px;
-    height: 740px;
-    background: #141414;
-    box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.5);
-    border-radius: 0;
-    &.rotate {
-      width: 705px;
-      height: 452px;
-      .el-dialog__body {
-        padding: 0;
-        .mt226ormt90{
-          margin-top: 90px;
-        }
-        .mlr64ormlr160{
-          margin-left: 160px;
-          margin-right: 160px;
-        }
-        .mobile-audio {
-          width: 660px;
-          height: 372px;
-          position: relative;
-          video {
-            transform:rotate(-90deg);
-            position: absolute;
-            top: -145px;
-            left: 145px;
-          }
-          .mask {
-            width: 100%;
-            height: 100%;
-            background-color: #fff;
-            position: absolute;
-            top: 0;
-            left: 0;
-            display: flex;
-            align-items: center;
-            justify-content: center;
-            flex-direction: column;
-          }
-        }
-        .mobile-sidebar {
-          width: 45px;
-          height: 372px;
-          display: flex;
-          flex-direction: column;
-          align-items: center;
-        }
-        .mobile-bottombar {
-          width: 100%;
-          height: 40px;
-          display: flex;
-          align-items: center;
-          justify-content: center;
-        }
-      }
-    }
-    .el-dialog__header {
-      height: 40px;
-      line-height: 40px;
-      padding: 0;
-      .el-dialog__headerbtn {
-        top: 13px;
-        right: 15px;
-        font-size: 14px;
-        .el-dialog__close {
-          color: #fff;
-          font-weight: 800;
-        }
-      }
-    }
-    .el-dialog__body {
-      padding: 0;
-      .mt226ormt90 {
-        margin-top: 226px;
-      }
-      .mlr64ormlr160{
-        margin-left: 64px;
-        margin-right: 64px;
-      }
-      .mobile-audio {
-        width: 371px;
-        height: 660px;
-        position: relative;
-        .mask {
-          width: 100%;
-          height: 100%;
-          background-color: #fff;
-          position: absolute;
-          top: 0;
-          left: 0;
-          display: flex;
-          align-items: center;
-          justify-content: center;
-          flex-direction: column;
-        }
-      }
-      .mobile-sidebar {
-        width: 46px;
-        height: 660px;
-        display: flex;
-        flex-direction: column;
-        align-items: center;
-      }
-      .mobile-bottombar {
-        width: 100%;
-        height: 40px;
-        display: flex;
-        align-items: center;
-        justify-content: center;
-      }
-    }
-  }
-  .mobile-dropdown-menu {
-    width: 110px;
-    padding: 5px 0;
-    border: none;
-    box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.3);
-    .popper__arrow {
-      border-width: 10px;
-      border-bottom-color: #fff !important;
-      top: -8px !important;
-      left: 60px !important;
-    }
-    .el-dropdown-menu__item {
-      height: 40px;
-      line-height: 40px;
-      &:hover {
-        background-color: #F3F6FF;
-        color: #333;
-      }
-    }
-  }
-  audio {
-    display: none;
-  }
-</style>

+ 0 - 3
decoker/screenAndroid/package-lock.json

@@ -1,3 +0,0 @@
-{
-  "lockfileVersion": 1
-}

+ 0 - 173
decoker/screenAndroid/temp.html

@@ -1,173 +0,0 @@
-
-
-
-
-
-
-
-
-<!DOCTYPE html>
-
-
-
-
-<html>
-<head>
-	<meta charset="utf-8"> 
-	<title>AAC &mdash; Audiocogs</title>
-	<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
-
-	<link rel="stylesheet" type="text/css" href="/css/all.min.css">
-	<link rel="shortcut icon" href="/favicon.ico">
-	<!--[if lt IE 9]>
-	<script src="/scripts/html5shiv.js"></script>
-	<![endif]-->
-
-	<link rel="alternate" type="application/rss+xml" title="Audiocogs Blog" href="/rss.xml">
-</head>
-<body class="codec">
-<section>
-	<header class="main">
-		<div class="inner">
-		<h1>
-			<div id="name">
-				<a href="/">Audiocogs</a>
-			</div>
-			<div id="social">
-				<a href="http://twitter.com/audiocogs"><img id="twitterbird" class="twitter" width="30" height="30" src="/images/white-twitter.png" alt="Audiocogs on twitter."></a>
-				<a href="https://github.com/audiocogs"><img id="white-octocat" class="github" width="30" height="30" src="/images/white-octocat.png" alt="Audiocogs on github."></a>
-			</div>
-		</h1>
-		</div>
-	</header>
-	<section id="content">
-		<div class="title-nav">
-			<ul>
-
-        <li><a href="/codecs">Codecs</a></li>
-
-        <li><a href="/codecs/mp3">MP3</a></li>
-        <li><a href="/codecs/alac">ALAC</a></li>
-        <li><a href="/codecs/flac">FLAC</a></li>
-        <li><a href="/codecs/aac">AAC</a></li>
-
-			</ul>
-		</div>
-
-		<article>
-			<header>
-				
-				<h1 id="article_title">AAC</h1>
-				
-				
-			</header>
-
-
-<link rel="stylesheet" href="/dgplayer/player.css" />
-
-<script src="/dgplayer/resources/classlist.js"></script>
-<script>
-var unsupported;
-if (!window.Audio || !('mozWriteAudio' in new Audio()) && !window.AudioContext && !window.webkitAudioContext) {
-    unsupported = true;
-    document.body.classList.add("unsupported");
-}
-</script>
-<div id="unsupported">
-We're really sorry about this, but it looks like your browser doesn't support an Audio API. Please
-try these demos in Chrome 15+ or Firefox 8+ or watch a <a href="http://vimeo.com/33919455">screencast</a>.
-</div>
-
-
-<p>Advanced Audio Coding (AAC) is a standardized, high quality lossy audio codec, designed as the successor to the MP3 format. AAC is now one of the most widely deployed audio codecs, and such names as the iTunes Store distribute music in the AAC format.</p>
-
-<p>AAC can be played in a limited number of browsers using the HTML5 audio element, however, some browsers do not support the codec for various reasons. <a href="https://github.com/ofmlabs/aac.js">AAC.js</a> is a JavaScript AAC decoder that enables decoding and playback of AAC files in all browsers supported by the <a href="https://github.com/ofmlabs/aurora.js">Aurora.js</a> audio framework.</p>
-
-
-<script src="/dgplayer/player.js"></script>
-<script src="/codecs/js/auroraplayer.js"></script>
-
-<div class="player" id="dgplayer" tabindex="0">
-    <div class="avatar">
-        <img src="/dgplayer/resources/fallback_album_art.png">
-    </div>
-
-    <span class="title">Unknown Title</span>
-    <span class="artist">Unknown Artist</span>
-
-    <div class="button"></div>
-
-    <div class="volume">
-        <img src="/dgplayer/resources/volume_high.png">
-        <div class="track">
-            <div class="progress"></div>
-            <div class="handle"></div>
-        </div>
-        <img src="/dgplayer/resources/volume_low.png">
-    </div>
-
-    <div class="seek">
-        <span>0:00</span>
-        <div class="track">
-            <div class="loaded"></div>
-            <div class="progress"></div>
-        </div>
-        <span>-0:00</span>
-    </div>
-    
-    <div class="file_button"></div>
-    <span class="file_description">Choose an AAC file on your computer</span>
-</div>
-
-<script src="/codecs/js/aurora.js"></script>
-<script src="/codecs/js/aac.js"></script>
-
-<script type="text/javascript">
-// Chrome doesn't support changing the sample rate, and uses whatever the hardware supports.
-// We cheat here.  Instead of resampling on the fly, we're currently just loading two different
-// files based on common hardware sample rates.
-var _sampleRate = (function() {
-    var AudioContext = (window.AudioContext || window.webkitAudioContext);
-    if (!AudioContext)
-        return 44100;
-    
-    return new AudioContext().sampleRate;
-}());
-
-(function(DGPlayer){
-    if (unsupported) return;
-    
-    DGPlayer.volume = 100;
-    
-    var player, onplay;
-    var url = '';
-    
-    DGPlayer.on('play', onplay = function(){
-        if (player)
-            player.disconnect();
-            
-        player = new DGAuroraPlayer(AV.Player.fromURL(url), DGPlayer);
-        DGPlayer.off('play', onplay);
-    });
-    
-    DGPlayer.on('file', function(file) {        
-        if (file) {
-            if (player)
-                player.disconnect();
-                
-            player = new DGAuroraPlayer(AV.Player.fromFile(file), DGPlayer);
-            DGPlayer.off('play', onplay);
-        }
-    });
-    
-}(DGPlayer(document.getElementById('dgplayer'))));
-</script>
-
-
-		</article>
-
-	</section>
-</section>
-</body>
-</html>
-

+ 0 - 428
decoker/screenIosEdit/WXdraw.js

@@ -1,428 +0,0 @@
-//画布
-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 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');
-//计算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 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)
-
-data.cardIp = cardIp.substring(7, cardIp.length)
-
-data.port = port.substring(5, port.length)
-
-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.21:9101"
-// 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 = Number(data.clientType) === 3? "ws://"+urlss+"/authControlWebSocket?"+"clientType="+data.clientType+"&username="+data.username+"&userCardId="+data.userCardId : "ws://"+urlss+"/controlWebSocket?"+"clientType="+data.clientType+"&cardIp="+data.cardIp+"&port="+data.port+"&sn="+data.sn
-var wsss = new WebSocket(cUrl);
-console.log('wsssss==============', wsss)
-wsss.binaryType = 'arraybuffer';
-////
-// wsss = new WebSocket(
-// 	"ws://14.215.128.96/authControlWebSocket?clientType=3&username=WqXTc1593762177&userCardId=377");
-
-wsss.onopen = function() {
-	console.log("onopen==============");
-	var pings = {
-		"event": "getScreenStatus"
-	}
-	wsss.send(JSON.stringify(pings));
-	var bitRate = {
-		"data": {
-			"bitRate": 2243000
-		},
-		"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.onclose = function(event) {
-	console.log("onclose==============");
-};
-wsss.onerror = function(event) {
-	console.log("onerror==============");
-};
-$('#box').on("click", function() {
-
-	draw_graph('pencil', this)
-})
-//剪切板
-$(".upload").on("click", function() {
-	let texts = $(this).attr("data-text")
-	if (texts == "uploads") {
-		$(".mainbox").css({
-			"display": "block"
-		})
-		$(".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)
-	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)
-	} else if (codes == "return") {
-		// var bitRate = {
-		// 	"data": {
-		// 		"keyCode": "4"
-		// 	},
-		// 	"event": "keyCode"
-		// }
-		// wsss.send(JSON.stringify(bitRate));
-		wsss.send(ExexuteKeyBoard(4, data.sn));
-	} else if (codes == "gengduo") {
-		// var bitRate = {
-		// 	"data": {
-		// 		"keyCode": "187"
-		// 	},
-		// 	"event": "keyCode"
-		// }
-		// wsss.send(JSON.stringify(bitRate));
-		wsss.send(ExexuteKeyBoard(187, data.sn));
-	}
-
-})
-//高清控制
-$(".PictureQuality").on("click", function() {
-	$(this).addClass("avit").siblings().removeClass('avit')
-	let 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)
-})
-
-//画图形
-var draw_graph = function(graphType, obj) {
-	console.log('111》》》', 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) {
-		$('.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)
-				ping = {
-					"data": {
-						"action": 0,
-						"count": touchfor.length,
-						"pointerId": i,
-						"x": cawidthXs.toFixed(2),
-						"y": caheightYs.toFixed(2)
-					},
-					"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)
-		} 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)
-				ping = {
-					"data": {
-						"action": 0,
-						"count": touchfor.length,
-						"pointerId": i,
-						"x": cawidthXs.toFixed(2),
-						"y": caheightYs.toFixed(2)
-					},
-					"event": "0"
-				}
-
-			}
-			// wsss.send(JSON.stringify(ping));
-			console.log('打开安卓卡=22=============', data.sn)
-			wsss.send(ExexuteMove(JSON.stringify(ping), data.sn))
-			console.log("鼠标按下>>>", ping, data.sn)
-		}
-
-		canDraw = true;
-
-	};
-
-	//鼠标离开 把蒙版canvas的图片生成到canvas中
-	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)
-				ping = {
-					"data": {
-						"action": 1,
-						"count": touchfor.length,
-						"pointerId": i,
-						"x": cawidthXs.toFixed(2),
-						"y": caheightYs.toFixed(2)
-					},
-					"event": "1"
-				}
-			}
-
-			// wsss.send(JSON.stringify(ping));
-			console.log('打开安卓卡==33============', data.sn)
-			wsss.send(ExexuteMove(JSON.stringify(ping), data.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)
-				ping = {
-					"data": {
-						"action": 1,
-						"count": touchfor.length,
-						"pointerId": i,
-						"x": cawidthXs.toFixed(2),
-						"y": caheightYs.toFixed(2)
-					},
-					"event": "1"
-				}
-			}
-
-			// wsss.send(JSON.stringify(ping));
-			console.log('打开安卓卡=55=============', data.sn)
-			wsss.send(ExexuteMove(JSON.stringify(ping), data.sn))
-		}
-
-		canDraw = false;
-
-	};
-
-	//清空层 云手机超出屏幕的开关
-	var clearContext = function(type) {
-		canDraw = false;
-	}
-
-	// 鼠标移动
-	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
-		//是否横屏  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)
-
-				ping = {
-					"data": {
-						"action": 2,
-						"count": touchfor.length,
-						"pointerId": i,
-						"x": cawidthXs.toFixed(2),
-						"y": caheightYs.toFixed(2)
-					},
-					"event": "2"
-				}
-
-			}
-
-			// wsss.send(JSON.stringify(ping));
-			console.log('打开安卓卡==66============', data.sn)
-			wsss.send(ExexuteMove(JSON.stringify(ping), data.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)
-				ping = {
-					"data": {
-						"action": 2,
-						"count": touchfor.length,
-						"pointerId": i,
-						"x": cawidthXs.toFixed(2),
-						"y": caheightYs.toFixed(2)
-					},
-					"event": "2"
-				}
-
-			}
-
-			// wsss.send(JSON.stringify(ping));
-			console.log('打开安卓卡==88============', data.sn)
-			wsss.send(ExexuteMove(JSON.stringify(ping), data.sn))
-		}
-
-
-
-		//				var ping = {"data":{"action":2,"count":1,"pointerId":0,"x":cawidthX.toFixed(2),"y":caheightY.toFixed(2)},"event":"2"}	    
-
-
-
-	};
-
-	//鼠标离开区域以外 除了涂鸦 都清空
-	var mouseout = function() {
-
-		if (graphType != 'handwriting') {
-			clearContext();
-
-		}
-	}
-
-	$(canvas_bak).unbind();
-	$(canvas_bak).bind('touchstart', touchstart);
-	$(canvas_bak).bind('touchmove', touchmove);
-	$(canvas_bak).bind('touchend', touchend);
-	$(canvas_bak).bind('mouseout', mouseout);
-}
-
-//选择功能按钮 修改样式
-function chooseImg(obj) {
-
-}

+ 0 - 811
decoker/screenIosEdit/WXtrialInterface.html

@@ -1,811 +0,0 @@
-<!DOCTYPE html>
-<html>
-
-	<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">
-		<!-- 设置苹果工具栏颜��? -->
-		<meta name="format-detection" content="telphone=no, email=no">
-		<!-- 忽略页面中的数字识别为电话,忽略email识别 -->
-		<!-- 启用360浏览器的极速模��?(webkit) -->
-		<meta name="renderer" content="webkit">
-		<!-- 避免IE使用兼容模式 -->
-		<meta http-equiv="X-UA-Compatible" content="IE=edge">
-		<!-- 针对手持设备优化,主要是针对一些老的不识别viewport的浏览器,比如黑��? -->
-		<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">
-		<!-- QQ强制全屏 -->
-		<meta name="x5-fullscreen" content="true">
-		<!-- UC应用模式 -->
-		<meta name="browsermode" content="application">
-		<!-- QQ应用模式 -->
-		<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>
-			</div>
-			<div class="leftmains">
-				<div class="PictureQualityMain">
-					<div class="PictureQuality " data-id="3072000">高清</div>
-					<div class="PictureQuality avit" data-id="2243000">标清</div>
-					<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">
-						<div>上传</div>
-					</div>
-					<div class="upload" onclick="cp(document.getElementById('user_ref_id'));" data-text="Shearplate">
-						<img src="../static/img/wx/jianqieban_icon.png">
-						<div>剪切板</div>
-					</div>
-					<div class="upload" id="upload" data-text="Signout">
-						<img src="../static/img/wx/tuichu_icon.png">
-						<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>
-		<!-- 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>
-			var topwinHeight = window.screen.height - window.innerHeight + 30; //计算title top 头部
-			$('#wine').css({
-				"width": window.screen.width,
-				"height": window.screen.height - topwinHeight - 20,
-				"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";
-			var baseUrl = "http://192.168.199.243";
-			var data = {}
-			//			 审核
-			$.ajax({
-				url: baseUrl + "/api/user/v1/config/download/isShow",
-				data: {},
-				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);
-				$(".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)
-			} 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)
-			}
-
-
-			//           心跳
-			//			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 btnMuted = document.querySelector("#btnMuted");
-			btnMuted && (function() {
-				var setHistory = function(left, top) {
-					try {
-						localStorage.setItem("muted-btn-loc", JSON.stringify({
-							left: left,
-							top: top
-						}));
-					} catch (ex) {}
-				};
-				var getHistory = function() {
-					try {
-						var value = localStorage.getItem("muted-btn-loc");
-						if (!value) return null;
-						value = JSON.parse(value);
-						if (!value) return null;
-						return value;
-					} catch (ex) {
-						return null
-					}
-				};
-				var fixLoc = function(loc) {
-					var rect = btnMuted.getBoundingClientRect();
-					rect = {
-						top: rect.top,
-						left: rect.left,
-						width: rect.width,
-						height: rect.height
-					}; //部分低版本浏览器,该属性为只读
-					if (loc) {
-						rect.left = loc.left;
-						rect.top = loc.top;
-					}
-					var minX = 0;
-					var minY = 0;
-					var docRect = document.documentElement.getBoundingClientRect();
-					var maxY = docRect.height - rect.height;
-					var maxX = docRect.width - rect.width;
-					var left = rect.left;
-					var top = rect.top;
-					left = Math.min(left, maxX);
-					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;";
-					}
-				}
-				window.addEventListener("resize", function() {
-					fixLoc();
-				});
-				var touchPoint = {
-					pageY: 0,
-					pageX: 0
-				};
-				var currentLoc = {
-					top: 0,
-					left: 0,
-					curTop: 0,
-					curLeft: 0
-				};
-				var toMove = false;
-				var touchmove = function(e) {
-					e.preventDefault();
-					var point = e.changedTouches[0];
-					var top = -touchPoint.pageY + point.pageY;
-					var left = -touchPoint.pageX + point.pageX;
-					if (toMove) {
-						top += currentLoc.top;
-						left += currentLoc.left;
-						currentLoc.curLeft = left;
-						currentLoc.curTop = top;
-						btnMuted.style.cssText += "left:" + left + "px;top:" + top + "px;";
-					} else {
-						if (Math.abs(top) >= 5 || Math.abs(left) >= 5) {
-							toMove = true;
-						}
-					}
-
-				};
-				var touchend = function() {
-					window.removeEventListener("touchmove", touchmove, {
-						passive: false
-					});
-					window.removeEventListener("touchend", touchend, {
-						passive: false
-					});
-
-					if (toMove) {
-						setHistory(currentLoc.curLeft, currentLoc.curTop);
-						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"
-							})
-
-							$(".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;
-					var point = e.changedTouches[0];
-					touchPoint.pageX = point.pageX;
-					touchPoint.pageY = point.pageY;
-					var rect = e.target.getBoundingClientRect();
-					currentLoc.top = rect.top;
-					currentLoc.left = rect.left;
-					window.addEventListener("touchmove", touchmove, {
-						passive: false
-					});
-					window.addEventListener("touchend", touchend, {
-						passive: false
-					});
-
-				}, {
-					passive: false
-				});
-				var history = getHistory();
-				if (history) {
-					fixLoc(history);
-				}
-				btnMuted.classList.remove("hide");
-			})();
-
-			$(".boximg").on("click", function() {
-				$(".mainbox").css({
-					"display": "none"
-				})
-			})
-
-			//			剪切板
-			$(".sboxbu").on("click", function() {
-				$(".sbox").css({
-					"display": "none"
-				})
-			})
-			//			剪切板
-			$(".uploadss").on("click", function() {
-				$(".sbox").css({
-					"display": "none"
-				})
-			})
-
-			$("#upload").on("click", function() {
-				wx.miniProgram.switchTab({
-					url: '/pages/home/home'
-				})
-			})
-
-
-
-
-
-			function selectText(x) {
-				if (document.selection) {
-					var range = document.body.createTextRange();
-					range.moveToElementText(x);
-					range.select();
-				} else if (window.getSelection) {
-					var selection = window.getSelection();
-					var range = document.createRange();
-					selection.removeAllRanges();
-					range.selectNodeContents(x);
-					selection.addRange(range);
-				}
-			}
-
-			function cp(x) {
-				$(".mainbox").css({
-					"display": "none"
-				})
-				$(".sbox").css({
-					"display": "block"
-				})
-				selectText(x);
-				document.execCommand("copy");
-
-			}
-
-			var isFinish = false;
-			var aacInitFinish = false;
-			var pcmPlayer = new PCMPlayer({
-				encoding: '16bitInt',
-				channels: 1,
-				sampleRate: 44100,
-				flushingTime: 22,
-				debug: false
-			});
-
-			Module = {};
-			Module.onRuntimeInitialized = function() {
-				console.log("Wasm 加载成功!")
-				isFinish = true;
-			}
-
-			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));break;
-					case 2:
-						pcmPlayer.feed(objData.data);break;
-						//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
-			});
-
-			var player = new PCMPlayer({
-			        encoding: '16bitInt',
-			        channels: 1,
-			        sampleRate: 44100,
-			        flushingTime: 22,
-					debug:false
-					});
-			var webSocketWorker = new Worker('websocket.js');
-			var startTime = new Date().getTime();
-
-			webSocketWorker.onmessage = function(event) {
-				decodeWoker.postMessage(event.data);
-			}
-
-			document.addEventListener("visibilitychange", () => {
-				if (document.visibilityState == "visible") {
-
-				} else {
-					console.log("页面不可见");
-				}
-			});
-
-			function Close() //webworker 关闭,清理
-			{
-				var cmd = {
-					cmd: 0
-				};
-				decodeWoker.postMessage(cmd);
-				decodeWoker.terminate();
-				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)
-					webSocketWorker.postMessage(buffer);
-					isDrag = true;
-				}
-
-			}
-
-			myVideo.onmousemove = function(event) {
-				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)
-					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);
-				webSocketWorker.postMessage(buffer);
-
-			}
-
-			myVideo.onkeydown = function(event) {
-				console.log('5555555555')
-				ExexuteKeyDown(e.keyCode,data.sn);
-			}
-		</script>
-		<script type="text/javascript" src="aac.js"></script>
-	</body>
-
-</html>

+ 0 - 340
decoker/screenIosEdit/css/WXtrialInterface.css

@@ -1,340 +0,0 @@
-body {
-				font-size: .2592592593rem;
-				margin: 0 auto;
-				width: 100%;
-				min-width: 320px;
-			}
-			
-			.h-player {
-				height: 100%;
-				overflow: hidden;
-				background: #000;
-			}
-			
-			.container {
-				width: 100%;
-				height: 100%;
-				position: relative;
-				user-select: none;
-			}
-			
-			#video1 {
-				display: block;
-				width: 100%;
-				height: 100%;
-				top: 0px;
-				left: 0px;
-				opacity: 1;
-			}
-			
-			#box {
-				width: 100%;
-				height: 100%;
-				position: absolute;
-				left: 0;
-				top: 0;
-				z-index: 9999;
-				/*width: 667px;
-    height: 375px; http://192.168.31.8:8848/cloudmMobilePhone1.11/Player/trialInterface2.html
-    position: absolute;
-    left: -146px;
-    top: 146px;
-   background: red;*/
-				/*    transform: rotate(-90deg);*/
-				/* opacity: 0.3;*/
-			}
-			
-			.scroll {
-				position: absolute;
-				overflow: scroll;
-				-webkit-overflow-scrolling: touch;
-				top: 0;
-				left: 0;
-				bottom: 0;
-				right: 0;
-			}
-			
-			body:before {
-				width: 100%;
-				height: 100%;
-				content: ' ';
-				position: fixed;
-				z-index: -1;
-				top: 0;
-				left: 0;
-				background: #000;
-			}
-			
-			#wine {
-				user-select: none;
-				-webkit-user-drag: none;
-				position: absolute;
-				z-index: 0;
-				/*  visibility: hidden;*/
-			}
-			
-			#video1 {
-				/*	 transform: rotate(180deg);*/
-			}
-			
-			canvas {
-				display: block;
-				width: 100%;
-				height: 100%;
-				z-index: 999;
-			}
-			/*主屏*/
-			
-			.control {
-				width: 900px;
-				overflow: hidden;
-				margin: 0 auto;
-				margin-top: 90px;
-				margin-bottom: 17px;
-			}
-			
-			.control-left-img {
-				width: 26px;
-				height: 26px;
-			}
-			
-			.control-left-img img {
-				width: 100%;
-				height: 100%;
-			}
-			
-			#mainScreen-main {
-				/* overflow: hidden; */
-				user-select: none;
-				-webkit-user-drag: none;
-				position: relative;
-				z-index: 0;
-				width: 100%;
-				height: 100%;
-				top: 0px;
-				/* left: 652.667px; */
-				/* left: 270PX; */
-				/* transform-origin: 0% 0%; */
-				background: #000;
-			}
-			
-			#mocan {
-				position: absolute;
-				left: -269px;
-				top: 2px;
-				/* opacity: 0.2; */
-				width: 901px;
-				height: 555px;
-				z-index: 9999;
-				opacity: 0.7;
-			}
-			
-			#no-ne {
-				width: 100%;
-				height: 100%;
-				position: absolute;
-				top: 0;
-				background: #000000;
-				z-index: 99999;
-				font-size: 18px;
-				color: #FFFFFF;
-				text-align: center;
-			}
-			
-			.no-ne-text {
-				margin-top: 60%;
-			}
-			
-			.no-ne-an {
-				width: 171px;
-				height: 47px;
-				background: #eb6100;
-				line-height: 47px;
-				text-align: center;
-				color: #FFFFFF;
-				margin: 0 auto;
-				margin-top: 20px;
-			}
-			
-			.container .muted {
-				position: absolute;
-				right: .46296rem;
-				top: .46296rem;
-				z-index: 9999999;
-				/*background: #000;*/
-				border-radius: 50%;
-				   /* opacity: 0.5;*/
-			}
-			
-			.muted {
-				width: 2.62963rem;
-				height: 2.62963rem;
-				background-position: -1.78704rem -8.43519rem;
-			}
-			
-			html {
-				height: 100%
-			}
-			
-			.control-right-img {
-				width: 42px;
-				height: 42px;
-				margin: 0 auto;
-				/* margin: 1rem; */
-				margin-top: 0.6rem;
-			}
-			
-			.control-right-img img {
-				width: 100%;
-				height: 100%;
-			}
-			
-			.leftmains {
-				width: 3.5rem;
-				height: 100%;
-				background: #333333;
-				position: fixed;
-				right: 0rem;
-				top: 0;
-					
-transition: all 0.2s ease-in;
-			}
-			
-			.PictureQualityMain {
-				margin-top: 3rem;
-			}
-			
-			.PictureQuality {
-				margin: 0 auto;
-				width: 2.5rem;
-				height: 1.8rem;
-				line-height: 1.8rem;
-				color: #fff;
-				text-align: center;
-				font-size: 15px;
-				margin-top: 1rem;
-			}
-			
-			.avit {
-				background: rgba(255, 255, 255, 1);
-				color: #000 !important;
-				border-radius: 3px;
-			}
-			
-			.upload {
-				margin: 0 auto;
-				width: 3rem;
-				height: 1.8rem;
-				line-height: 1.8rem;
-				color: #fff;
-				text-align: center;
-				font-size: 16px;
-				margin-top: 3rem;
-			}
-			
-			.upload img {
-				width: 1.5rem;
-				height: 1.5rem;
-			}
-			
-			.upload div {
-				margin-top: -0.5rem;
-				font-size: 14px;
-			}
-			
-			.operation {
-				margin-top: 9rem;
-			}
-			
-			.bottommains {
-				width: 100%;
-				height: 50px;
-				background: #333333;
-				position: fixed;
-				left: 0;
-				bottom: 0;
-			}
-			
-			.botmat1 {
-				width: 33%;
-				float: left;
-			}
-			
-			.botmat1img {
-				margin: 0 auto;
-				width: 1.5rem;
-				height: 1.5rem;
-				margin-top: 0.5rem;
-			}
-			
-			.botmat1img img {
-				width: 100%;
-				height: 100%;
-			}
-			
-			.mainbox {
-				width: 18rem;
-				height: 10rem;
-				background: #fff;
-				position: fixed;
-				top: 38%;
-				left: 5%;
-				border-radius: 5px;
-			}
-			
-			.boxTitle {
-				text-align: center;
-				font-size: 18px;
-				padding: 10px 0px;
-			}
-			
-			.boxText {
-				text-align: center;
-				font-size: 16px;
-			}
-			
-			.boxbt {
-				width: 60%;
-				height: 2.5rem;
-				background: #0886F5;
-				margin: 0 auto;
-				font-size: 16px;
-				text-align: center;
-				line-height: 2.5rem;
-				color: #fff;
-				border-radius: 5px;
-				margin-top: 1rem;
-			}
-			
-			.sbox {
-				width: 18rem;
-				height: 5.5rem;
-				background: #fff;
-				position: fixed;
-				top: 38%;
-				left: 5%;
-				border-radius: 5px;
-			}
-			
-			.sboxText {
-				padding: 17px;
-				font-size: 16px;
-			}
-			
-			.sboxbu {
-				text-align: right;
-				color: #0886F5;
-				font-size: 16px;
-				margin-right: 2rem;
-			}
-			
-			.boximg {
-				position: absolute;
-				width: 1rem;
-				height: 1rem;
-				left: 45%;
-				bottom: -22%;
-			}
-			#showsuss{
-				display: none;
-			}

+ 0 - 134
decoker/screenIosEdit/css/homePage.css

@@ -1,134 +0,0 @@
-* {
-	margin: 0;
-	padding: 0;
-}
-
-.heads {
-	padding: 40px 30px 0px 30px;
-	overflow: hidden;
-}
-
-.heads-left {
-	color: #3399FF;
-}
-
-.heads-right {
-	width: 60px;
-	height: 60px;
-}
-
-.heads-right image {
-	width: 100%;
-	height: 100%;
-}
-
-.left {
-	float: left;
-}
-
-.right {
-	float: right;
-}
-
-#wine {
-	width: 100%;
-	height: 100%;
-}
-
-.newhelp {
-	display: flex;
-	font-size: 12px;
-	font-family: PingFangSC-Regular, PingFang SC;
-	font-weight: 400;
-	color: #999999;
-	line-height: 17px;
-	align-items: center;
-	position: absolute;
-	top: 0;
-	left: 0;
-	margin-top: 10px;
-	margin-left: 15px;
-}
-
-.newhelp .font {
-	text-decoration: underline;
-	margin-left: 2px;
-}
-
-.newhelp .helpImg {
-	width: 0.875rem;
-	height: 0.875rem;
-}
-
-.newhelp .helpImg img {
-	width: 100%;
-	height: 100%;
-}
-
-.buyIcon {
-	position: absolute;
-	top: 0;
-	right: 0;
-	/* 	margin-top: 0.625rem;
-	margin-right: 0.625rem;
-	 */
-}
-
-.swiper-container {
-	width: 100%;
-	height: 100%;
-}
-
-.swiper-slide {
-	/* padding: 43px 53px; */
-	padding: 12% 14%;
-	box-sizing: border-box;
-	text-align: center;
-	font-size: 18px;
-	/* background: #fff; */
-	/* height: 667px; */
-	height: 100%;
-	/* Center slide text vertically */
-	display: -webkit-box;
-	display: -ms-flexbox;
-	display: -webkit-flex;
-	display: flex;
-	-webkit-box-pack: center;
-	-ms-flex-pack: center;
-	-webkit-justify-content: center;
-	justify-content: center;
-	-webkit-box-align: center;
-	-ms-flex-align: center;
-	-webkit-align-items: center;
-	align-items: center;
-}
-
-.swiper-button-next {
-	width: 15px;
-	height: 15px;
-	background: url(../../static/img/xia_icon.png);
-	right: 15px;
-}
-
-.swiper-button-prev {
-	width: 15px;
-	height: 15px;
-	background: url(../../static/img/shang_icon.png);
-	left: 15px;
-}
-
-.swiper-button-next:after,
-.swiper-container-rtl .swiper-button-prev:after {
-	content: "" !important;
-}
-
-.swiper-button-prev:after,
-.swiper-container-rtl .swiper-button-next:after {
-	content: "" !important;
-}
-
-.thl-time {
-	text-align: left;
-	margin-left: -0.4rem !important;
-	c
-}

+ 0 - 163
decoker/screenIosEdit/decoder.js

@@ -1,163 +0,0 @@
-var isFinish = false;
-var decodeCount = 0;
-var h264Queue = [];
-var ret;
-
-self.Module = {
-	onRuntimeInitialized: function() {
-		isFinish = true;
-		ret = Module._openDecoder(720, 1280);
-		if (!ret) {
-			console.log("打开编码器成功");
-		}
-	}
-};
-
-self.importScripts("ffmpeghelper.js");
-
-self.addEventListener('message', function(e) {
-	
-	var buffer = e.data;
-	
-	if(buffer[0] == 0xff)//音频解码
-	{
-		if(isFinish)
-		{
-			decodeAAC(buffer);
-		}
-	}
-	else
-	{
-		h264Queue.push(buffer);
-	}
-
-}, false);
-
-function PrintfLog(str) {
-	var curTime = new Date().getTime();
-	var objData = {
-		cmd: 0,
-		data: str,
-		time: curTime
-	};
-	self.postMessage(objData);
-}
-
-function decodeAAC(data)
-{
-		var retPtr = Module._malloc(2048);//接收的数据
-		var inputPtr = Module._malloc(data.length);//输入数据
-			
-		for( i = 0;i < data.length;i++)
-		{
-			Module.HEAPU8[(inputPtr)+i] = data[i];//转换为堆数据
-		}
-			
-		var pcmLen = Module._feedAudio(inputPtr, data.length, retPtr);
-			
-		if(pcmLen > 0)
-		{
-			var pcmData = new Uint8Array(pcmLen);		
-			for(i = 0;i < pcmLen;i++)
-			{
-				pcmData[i] = Module.HEAPU8[(retPtr)+i];
-			}
-			var curTime = new Date().getTime();	
-			var objData = {cmd:2, data:pcmData, time:curTime};
-			self.postMessage(objData);
-		}
-		else
-		{
-			console.log("aac 解码失败, %d", pcmLen);
-		}
-			
-		Module._free(inputPtr);
-		Module._free(retPtr);
-}
-
-var timeFlag = setInterval(
-	function() {
-		if (h264Queue.length > 0 && isFinish) {
-
-			if (h264Queue.length > 15 && isFinish) 
-			{
-				PrintfLog("-------解不过来 ---------" + h264Queue.length);
-				h264Queue.length = 0;
-				return;
-			}
-
-			decodeH264(h264Queue.shift());
-		} else {
-
-		}
-	}, 1);
-
-
-function decodeH264(data) {
-	 
-	var nalType = data[4] & 0x1f;
-	if(nalType == 7)
-	{	
-		console.log("decode sps");
-	}
-	
-	if(nalType == 8)
-	{	
-		console.log("decode pps");
-	}
-	
-	if(nalType == 5)
-	{	
-		console.log("decode i");
-	}
-	
-	var yuvData = new Uint8Array(2457600);
-	var retPtr = Module._malloc(2457600); //接收的数据
-	if(retPtr == undefined)
-	{
-		retPtr = Module._malloc(2457600);
-	}
-	
-	var inputPtr = Module._malloc(data.length); //输入数据
-
-	for (i = 0; i < data.length; i++) {
-		Module.HEAPU8[(inputPtr) + i] = data[i]; //转换为堆数据
-	}
-
-	var time = new Date().getTime();
-	var ret = Module._feedData(inputPtr, data.length, retPtr);
-
-	if (ret >= 0) {
-		//console.log("解码成功 %d, 耗时 %d ms", ret, new Date().getTime() - time);	
-		if (decodeCount > 50) {
-			var curCost = new Date().getTime() - time;
-			//PrintfLog("解码耗时 " + curCost + " ms");
-			decodeCount = 0;
-		}
-		decodeCount++;
-		//console.log("解码耗时 %d ms", curCost);
-	} else {
-		//console.log("解码失败 %d", ret);
-	}
-
-	
-	for (i = 0; i < yuvData.length; i++) {
-		yuvData[i] = Module.HEAPU8[(retPtr) + i];
-	}
-
-	var curTime = new Date().getTime();
-	var objData = {
-		cmd: 1,
-		data: yuvData,
-		time: curTime
-	};
-	self.postMessage(objData);
-	Module._free(inputPtr);
-	Module._free(retPtr);
-}
-
-
-function closeDecoder() {
-	Module._destroyDecoder();
-	clearInterval(timeFlag);
-}

File diff suppressed because it is too large
+ 0 - 1
decoker/screenIosEdit/ffmpeghelper.js


BIN
decoker/screenIosEdit/ffmpeghelper.wasm


File diff suppressed because it is too large
+ 0 - 1
decoker/screenIosEdit/ffmpeghelper.worker.js


File diff suppressed because it is too large
+ 0 - 269
decoker/screenIosEdit/helper.js


File diff suppressed because it is too large
+ 0 - 185
decoker/screenIosEdit/helper55.js


File diff suppressed because it is too large
+ 0 - 1239
decoker/screenIosEdit/home.html


File diff suppressed because it is too large
+ 0 - 1192
decoker/screenIosEdit/homeNew.html


+ 0 - 100
decoker/screenIosEdit/homePage.html

@@ -1,100 +0,0 @@
-<!DOCTYPE html>
-<html>
-	<head>
-		<meta charset="utf-8">
-		<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
-		<title>首页</title>
-		<link rel="stylesheet" type="text/css" href="css/swiper-bundle.min.css" />
-		<link rel="stylesheet" type="text/css" href="css/homePage.css" />
-		<script src="css/swiper-bundle.min.js"></script>
-	</head>
-	<body style="background: #F8F9FA;overflow:scroll;overflow-y: hidden;overflow-x: hidden;">
-		<div style="width: 100%;height: 100%;" id="homeapp">
-			<div class="newhelp" style="z-index: 50;">
-				<div class="helpImg">
-					<img src="../static/img/bangzu_icon.png" />
-				</div>
-				<div class="font helpfont">使用帮助?</div>
-			</div>
-			<div class="buyIcon" style="z-index: 50;">
-				<img src="../static/img/goumai_icon.png" />
-			</div>
-			
-			<div class="swiper-container">
-				<div class="swiper-wrapper">
-					<div class="swiper-slide"  v-for="(item,index) in homeList" :key="item.id" :class="[index==0 ? 'swiper-slide-active' : '' , index==1 ? 'swiper-slide-next' : '']">
-						<div class="canvas" style="z-index: 1;" @click="homeinfo(item)">
-							<div style="height: 100%;" class="wine" :id="'wine'+index">
-							</div>
-							<canvas id="playCanvas" width="450" height="800"></canvas>
-							<div class="camvas-head" style="z-index: 5555;">
-								<div class="tophead">
-									<div class="th_left">
-										<!-- {{item.buyVipType}} -->
-										<img src="../static/img/xingyao_icon.png" v-if="item.buyVipType='SVIP'" />
-										<img src="../static/img/xingdong_icon.png" v-else />
-									</div>
-									<div class="th_right">
-										<div class="thl-font">{{item.diskName}}</div>
-										<div class="thl-time">{{remainTime(item.ctime,item.exceptTime)}}</div>
-									</div>
-								</div>
-								<div class="th_renew homeRenew" style="z-index: 5000;" @click="renew(item)">
-									续费
-								</div>
-							</div>
-						</div>
-					</div>
-					<div class="swiper-slide">
-						<div class="canvas" style="display: none;">
-							<div style="height: 100%;" class="kongWine">
-								<div class="kphone">
-									<div class="kp_img">
-										<img src="../static/img/goumai_pic.png" />
-									</div>
-									<div class="kp_btn" style="z-index: 5000;">
-										购买云手机
-									</div>
-								</div>
-							</div>
-			
-						</div>
-					</div>
-				</div>
-				<!-- Add Arrows -->
-				<div class="swiper-button-next" @click="swiperNext()"></div>
-				<div class="swiper-button-prev" @click="swiperPrev()"></div>
-			</div>
-		</div>
-	</body>
-	<script type="text/javascript" src="https://res.wx.qq.com/open/js/jweixin-1.3.0.js"></script>
-	<!--  视频-->
-	<script src="../static/js/jquery-1.11.0.min.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.jsdelivr.net/npm/vue/dist/vue.js"></script>
-	<script src="https://cdn.bootcss.com/vConsole/3.2.0/vconsole.min.js"></script>
-	<script>
-		var html = document.querySelector("html");
-		var clientWidth = html.getBoundingClientRect().width;
-		html.style.fontSize = clientWidth / 23.4375 + "px";
-
-		var app = new Vue({
-			el: '#homeapp',
-			data: {
-				message: 'Hello Vue!',
-				homeList: [],
-				urlData: {},
-				rbdData: {},
-				activeIndexData: "",
-				swipeDirection: "",
-			},
-			mounted() {
-				
-			},methods:{
-				
-			}
-		})
-	</script>
-</html>

BIN
decoker/screenIosEdit/img/homebg.png


+ 0 - 109
decoker/screenIosEdit/index.html

@@ -1,109 +0,0 @@
-<html>
-	<head>
-		<link rel="shortcut icon" href="#">
-	</head>
-	<!-- <canvas id="playCanvas" width="450" height="800"></canvas> -->
-	<body oncontextmenu="Back()">
-		<canvas id="playCanvas" width="450" height="800"></canvas>
-	</body>
-	<script type="text/javascript" src="helper.js">
-		< script type = "text/javascript"
-		src = "pcm-player.js" >
-	</script>
-	<script type="text/javascript" src="webgl.js"></script>
-	<script src="https://cdn.bootcss.com/vConsole/3.2.0/vconsole.min.js"></script>
-
-
-	<script>
-		var decodeWoker = new Worker('decoder.js');
-		var myVideo = document.getElementById("playCanvas");
-		decodeWoker.onmessage = function(event) {
-			console.log("decodeWoker.onmessage")
-			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;
-			}
-
-		}
-
-		let vConsole = new VConsole();
-
-		if (typeof(Worker) !== "undefined") {
-			console.log("支持webworker");
-		} else {
-			alert("不支持webworker");
-		}
-
-		var isFinish = false;
-		this.canvas = document.getElementById("playCanvas");
-		var webglPlayer = new WebGLPlayer(this.canvas, {
-			preserveDrawingBuffer: false
-		});
-
-
-		var webSocketWorker = new Worker('websocket.js');
-		var startTime = new Date().getTime();
-
-
-
-		webSocketWorker.onmessage = function(event) {
-			console.log("event.data", event.data)
-			decodeWoker.postMessage(event.data);
-		}
-
-		document.addEventListener("visibilitychange", () => {
-			if (document.visibilityState == "visible") {
-
-			} else {
-				console.log("页面不可见");
-			}
-		});
-
-		function Close() //webworker 关闭,清理
-		{
-			var cmd = {
-				cmd: 0
-			};
-			decodeWoker.postMessage(cmd);
-			decodeWoker.terminate();
-			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;
-			}
-
-		}
-	</script>
-</html>

+ 0 - 669
decoker/screenIosEdit/mobile.vue

@@ -1,669 +0,0 @@
-<template>
-  <div>
-    <el-dialog v-el-drag-dialog :visible.sync="showMobile" title="" :close-on-click-modal="false" :close-on-press-escape="false" :custom-class="mobileStyle" @close="close">
-      <div slot="title" class="cfff fs14">
-        <span class="ml20">{{ mobileName }}</span>
-        <el-dropdown placement="bottom" class="fr mr100 oln" trigger="hover" @command="handleCommand" @visible-change="handleVisble">
-          <span class="fs14 cfff">{{ bitRateText }}<i :class="caretIcon" /></span>
-          <el-dropdown-menu slot="dropdown" class="mobile-dropdown-menu">
-            <el-dropdown-item :class="bitRateStyle('1638400')" command="1638400">自动</el-dropdown-item>
-            <el-dropdown-item :class="bitRateStyle('491520')" command="491520">极速</el-dropdown-item>
-            <el-dropdown-item :class="bitRateStyle('1392640')" command="1392640">标清</el-dropdown-item>
-            <el-dropdown-item :class="bitRateStyle('2785280')" command="2785280">高清</el-dropdown-item>
-          </el-dropdown-menu>
-        </el-dropdown>
-      </div>
-      <div class="frns">
-        <div class="mobile-audio">
-          <video
-            ref="player"
-            width="372px"
-            :controls="false"
-            autoplay
-            @play="ready"
-            @error="error"
-            @pause="pause"
-            @mousedown="handleMouseDown"
-            @mousemove="handleMouseMove"
-            @mouseup="handleMouseUp"
-            @mouseleave="handleMouseLeave"
-          />
-          <audio
-            ref="audioPlayer"
-            width="372px"
-            controls
-            autoplay
-            poster="@/assets/equipment/loader-thumb.jpg"
-          />
-          <div v-if="isMask" class="mask">
-            <i v-if="isLoading" class="el-icon-loading" />
-            <img v-if="isError" class="w180h148" src="@/assets/equipment/guzhang_lixian_pic.png" alt="">
-            <div class="c999 fs12 mt15">{{ maskText }}</div>
-          </div>
-        </div>
-        <div class="mobile-sidebar">
-          <i :class="volumeUpIcon" @click="handleRoutine(24)" />
-          <i :class="volumeDownIcon" @click="handleRoutine(25)" />
-          <el-popover placement="bottom-start" popper-class="nav-popover" width="109" trigger="hover">
-            <div class="tac ptb10 c333 fs14">重启</div>
-            <i slot="reference" :class="shutDownIcon" @click="reboot" />
-          </el-popover>
-          <el-popover placement="bottom-start" popper-class="nav-popover" width="109" trigger="hover">
-            <div class="tac ptb10 c333 fs14">恢复出厂设置</div>
-            <i slot="reference" :class="restartIcon" @click="recovery" />
-          </el-popover>
-        </div>
-      </div>
-      <div class="mobile-bottombar">
-        <i :class="menuIcon" @click="handleRoutine(187)" />
-        <i :class="homeIcon" @click="handleRoutine(3)" />
-        <i :class="backIcon" @click="handleRoutine(4)" />
-      </div>
-    </el-dialog>
-  </div>
-</template>
-
-<script>
-import elDragDialog from '@/directive/el-drag-dialog'
-import JMuxer from 'jmuxer'
-import { getcardInfoBySn, rebootBatch, recovery, getcardStatus } from '@/api/mobile'
-import { ExexuteMouseDown, ExexuteMouseMove, ExexuteMouseUp, ExexuteKeyDown, ExexutePixel, ExexuteCloseServer, CheckScreenDirection, RequestIFrame, ConfigChannel } from '@/utils/control'
-import { keycodeMode } from '@/utils/config'
-
-const VIDEO_WIDTH = 371
-const VIDEO_HEIGHT = 660
-
-export default {
-  name: 'DragDialogDemo',
-  directives: { elDragDialog },
-  props: {
-    sn: {
-      type: Array,
-      default: () => {
-        return []
-      }
-    },
-    mobileName: {
-      type: String,
-      default: ''
-    },
-    mobileId: {
-      type: Number,
-      default: 0
-    }
-  },
-  data() {
-    return {
-      showMobile: true,
-      fpsCount: 0,
-      timeCount: 0,
-      isFeed: true,
-      curTime: new Date().getTime(),
-      requestTime: new Date().getTime(),
-      jmuxer: null,
-      audioMuxer: null,
-      ip: '', // 设备ip
-      port: '', // 设备端口号
-      size: '', // 设备分辨率
-      bitRate: '', // 设备清晰度
-      path: 'ws://192.168.11.66:9101', // websocket地址
-      socket: null, // websocket类
-      isDrag: false,
-      isLoading: true, // 加载中
-      isMask: true, // 遮罩层
-      maskText: '', // 加载文字
-      isError: false, // 是否设备故障或者离线
-      visble: false, // 下拉菜单是否展开
-      isRotate: false, // 是否横屏
-      isFlag: false
-    }
-  },
-  computed: {
-    bitRateStyle() {
-      return (num) => {
-        return this.bitRate === num ? 'pl20 bgcf3f6ff c515ff0 fs14' : 'pl20 c333 fs14'
-      }
-    },
-    bitRateText() {
-      /**
-       * 极速 | 491520,60KB/S
-       * 标清 | 1392640 ,170KB/S
-       * 自动 | 1638400 ,200KB/S
-       * 高清 | 2785280 ,340KB/S
-       */
-      const option = {
-        '1638400': '自动',
-        '491520': '极速',
-        '1392640': '标清',
-        '2785280': '高清'
-      }
-      return option[this.bitRate]
-    },
-    volumeUpIcon() {
-      return this.isLoading || this.isError ? 'icon-volume-up disabled mt50' : 'icon-volume-up mt50'
-    },
-    volumeDownIcon() {
-      return this.isLoading || this.isError ? 'icon-volume-down disabled mt40' : 'icon-volume-down mt40'
-    },
-    shutDownIcon() {
-      return this.isLoading || this.isError ? 'icon-shutdown disabled mt226ormt90' : 'icon-shutdown mt226ormt90'
-    },
-    restartIcon() {
-      return this.isLoading || this.isError ? 'icon-restart disabled mt40' : 'icon-restart mt40'
-    },
-    menuIcon() {
-      return this.isLoading || this.isError ? 'icon-background disabled' : 'icon-background'
-    },
-    homeIcon() {
-      return this.isLoading || this.isError ? 'icon-index disabled mlr64ormlr160' : 'icon-index mlr64ormlr160'
-    },
-    backIcon() {
-      return this.isLoading || this.isError ? 'icon-back disabled' : 'icon-back'
-    },
-    caretIcon() {
-      return this.visble ? 'el-icon-caret-top ml5' : 'el-icon-caret-bottom ml5'
-    },
-    mobileStyle() {
-      return this.isRotate ? 'mobile-dialog rotate' : 'mobile-dialog'
-    }
-  },
-  created() {
-    this.getcardInfoBySn()
-  },
-  mounted() {
-    document.addEventListener('visibilitychange', this.audioPlay)
-    document.addEventListener('keydown', this.handleKeyDown)
-    this.$nextTick(() => {
-      this.jmuxer = new JMuxer({
-        node: this.$refs.player,
-        flushingTime: 15,
-        fps: 30,
-        mode: 'video',
-        debug: false
-      })
-      this.audioMuxer = new JMuxer({
-        node: this.$refs.audioPlayer,
-        flushingTime: 1,
-        clearBuffer: true,
-        fps: 43, // 可以不选
-        mode: 'audio',
-        debug: false
-      })
-    })
-
-    this.curTime = new Date().getTime()
-  },
-  destroyed() {
-    document.removeEventListener('visibilitychange', this.audioPlay)
-    document.removeEventListener('keydown', this.handleKeyDown)
-    this.socket.send(ExexuteCloseServer(this.sn.join(','))) // 销毁监听
-    this.socket.close()
-  },
-  methods: {
-    handleVisble(flag) {
-      this.visble = flag
-    },
-    // 设备恢复出厂设置
-    recovery() {
-      if (this.isLoading || this.isError) {
-        this._message.warning('操作过于频繁,请稍后再试')
-        return
-      }
-      this.$confirm('<div class="c666 fs18 mb10">确认要恢复出厂设置吗?</div><div class="c999 fs14">恢复出厂后将恢复到初始设置并清除所有数据,恢复出厂过程/n中设备将不可操作。</div>', '恢复出厂', {
-        dangerouslyUseHTMLString: true,
-        confirmButtonText: '确认',
-        cancelButtonText: '取消',
-        customClass: 'cloud-phone-message-box', // 自定义消息样式类名
-        confirmButtonClass: 'cloud-phone-confirm-btn', // 自定义确认按钮样式类名
-        cancelButtonClass: 'cloud-phone-cancel-btn' // 自定义取消按钮样式类名
-      }).then(() => {
-        recovery({ sns: this.sn.join(',') }).then(res => {
-          if (res.status === 0) {
-            this.$alert('<div class="c666 fs18 mb10">恢复出厂设置指令已发送</div><div class="c999 fs14">若恢复出厂设置失败可重试</div>', '恢复出厂', {
-              dangerouslyUseHTMLString: true,
-              confirmButtonText: '确认',
-              customClass: 'cloud-phone-message-box',
-              confirmButtonClass: 'cloud-phone-confirm-btn', // 自定义确认按钮样式类名
-              callback: action => {
-                this.isMask = true
-                this.isLoading = true
-                this.maskText = '设备恢复出厂设置中...'
-                this._send()
-              }
-            })
-          } else {
-            this._message.error('恢复出厂设置指令发送失败,请稍后再试')
-          }
-        })
-      }).catch(() => {})
-    },
-    // 设备重启
-    reboot() {
-      if (this.isLoading || this.isError) {
-        this._message.warning('操作过于频繁,请稍后再试')
-        return
-      }
-      this.$confirm('<div class="c666 fs18 mb10">确认要重启设备吗?</div><div class="c999 fs14">重启后将完全关闭后台进程,重启过程中设备将不可操作。</div>', '重启', {
-        dangerouslyUseHTMLString: true,
-        confirmButtonText: '确认',
-        cancelButtonText: '取消',
-        customClass: 'cloud-phone-message-box', // 自定义消息样式类名
-        confirmButtonClass: 'cloud-phone-confirm-btn', // 自定义确认按钮样式类名
-        cancelButtonClass: 'cloud-phone-cancel-btn' // 自定义取消按钮样式类名
-      }).then(() => {
-        rebootBatch({ sns: this.sn.join(',') }).then(res => {
-          if (res.status === 0) {
-            this.$alert('<div class="c666 fs18 mb10">重启指令已发送</div><div class="c999 fs14">若重启失败可重试</div>', '重启', {
-              dangerouslyUseHTMLString: true,
-              confirmButtonText: '确认',
-              customClass: 'cloud-phone-message-box',
-              confirmButtonClass: 'cloud-phone-confirm-btn', // 自定义确认按钮样式类名
-              callback: action => {
-                this.isMask = true
-                this.isLoading = true
-                this.maskText = '设备重启中...'
-                this._send()
-              }
-            })
-          } else {
-            this._message.error('重启指令发送失败,请稍后再试')
-          }
-        })
-      }).catch(() => {})
-    },
-    async _send() {
-      const state = await this.getcardStatus()
-      if (state === '1') {
-        this.socket.send(ExexuteCloseServer(this.sn.join(','))) // 销毁监听
-        this.socket.close()
-        this.init()
-        this.isLoading = false
-        this.isMask = false
-        this.maskText = ''
-      } else {
-        setTimeout(() => {
-          this._send()
-        }, 3000)
-      }
-    },
-    async getcardStatus() {
-      const res = await getcardStatus({ sns: this.sn.join(',') }).then(res => { return res })
-      let state = '0'
-      if (res.status === 0) {
-        state = res.data[0].state
-      }
-      return state
-    },
-    // 设置像素
-    handleCommand(command) {
-      if (this.isLoading || this.isError) {
-        return
-      }
-      this.bitRate = command
-      const buffer = ExexutePixel(command, this.sn.join(','))
-      this.socket.send(buffer)
-    },
-    // 音量加减、home键、back事件(keyCode的值分别表示为25减音量,24加音量,4为返回键,3为home键,187为切换菜单)
-    handleRoutine(code) {
-      if (this.isLoading || this.isError) {
-        return
-      }
-      const buffer = ExexuteKeyDown(code, this.sn.join(','))
-      this.socket.send(buffer)
-    },
-    // 鼠标点击事件
-    handleMouseDown(event) {
-      if (this.isLoading || this.isError) {
-        return
-      }
-      if (event.button === 0) {
-        var posX = this.isRotate ? event.offsetY / VIDEO_HEIGHT * 1920 * 1.0 : event.offsetX / VIDEO_WIDTH * 1080 * 1.0
-        var posY = this.isRotate ? (VIDEO_WIDTH - event.offsetX) / VIDEO_WIDTH * 1080 * 1.0 : event.offsetY / VIDEO_HEIGHT * 1920 * 1.0
-        var buffer = ExexuteMouseDown(posX.toString(), posY.toString(), this.sn.join(','))
-        this.socket.send(buffer)
-        this.isDrag = true
-      }
-    },
-    // 鼠标移开事件
-    handleMouseLeave(event) {
-      if (this.isLoading || this.isError) {
-        return
-      }
-      this.isDrag = false
-      var posX = this.isRotate ? event.offsetY / VIDEO_HEIGHT * 1920 * 1.0 : event.offsetX / VIDEO_WIDTH * 1080 * 1.0
-      var posY = this.isRotate ? (VIDEO_WIDTH - event.offsetX) / VIDEO_WIDTH * 1080 * 1.0 : event.offsetY / VIDEO_HEIGHT * 1920 * 1.0
-      var buffer = ExexuteMouseUp(posX.toString(), posY.toString(), this.sn.join(','))
-      this.socket.send(buffer)
-    },
-    // 鼠标移动事件
-    handleMouseMove(event) {
-      if (this.isLoading || this.isError) {
-        return
-      }
-      if (this.isDrag && event.button === 0) {
-        var posX = this.isRotate ? event.offsetY / VIDEO_HEIGHT * 1920 * 1.0 : event.offsetX / VIDEO_WIDTH * 1080 * 1.0
-        var posY = this.isRotate ? (VIDEO_WIDTH - event.offsetX) / VIDEO_WIDTH * 1080 * 1.0 : event.offsetY / VIDEO_HEIGHT * 1920 * 1.0
-        var buffer = ExexuteMouseMove(posX.toString(), posY.toString(), this.sn.join(','))
-        this.socket.send(buffer)
-      }
-    },
-    // 鼠标离开事件
-    handleMouseUp(event) {
-      if (this.isLoading || this.isError) {
-        return
-      }
-      this.isDrag = false
-      var posX = this.isRotate ? event.offsetY / VIDEO_HEIGHT * 1920 * 1.0 : event.offsetX / VIDEO_WIDTH * 1080 * 1.0
-      var posY = this.isRotate ? (VIDEO_WIDTH - event.offsetX) / VIDEO_WIDTH * 1080 * 1.0 : event.offsetY / VIDEO_HEIGHT * 1920 * 1.0
-      var buffer = ExexuteMouseUp(posX.toString(), posY.toString(), this.sn.join(','))
-      this.socket.send(buffer)
-    },
-    // 键盘输入事件
-    handleKeyDown(event) {
-      if (this.isLoading || this.isError) {
-        return
-      }
-      var buffer = ExexuteKeyDown(keycodeMode[event.keyCode] || event.keyCode, this.sn.join(','))
-      this.socket.send(buffer)
-    },
-    // websocket初始化
-    init() {
-      this.socket = new WebSocket(this.path) // 实例化socket
-      this.socket.binaryType = 'arraybuffer'
-      this.socket.onopen = this.open // 监听socket连接
-      this.socket.onerror = this.onerror // 监听socket错误信息
-      this.socket.onmessage = this.getMessage // 监听socket消息
-    },
-    // websocket连接成功回调
-    open() {
-      this.isMask = false
-      this.isError = false
-      this.socket.send(ConfigChannel(this.sn))
-      this.socket.onmessage = this.getMessage
-    },
-    // websocket连接失败回调
-    onerror() {
-      console.log('websocket连接失败')
-      this.isLoading = false
-      this.isError = true
-      this.maskText = '设备故障或离线'
-    },
-    getMessage(event) {
-      const data = this.parse(event.data) // 分离音视频数据
-      const audioData = {
-        audio: data.audio,
-        video: null,
-        duration: data.duration
-      }
-      // const videoData = {
-      //   audio: null,
-      //   video: data.video,
-      //   duration: data.duration
-      // }
-
-      if (this.$refs.audioPlayer && this.$refs.audioPlayer.readyState === 2) {
-        const playPromise = this.$refs.audioPlayer.play()
-        if (playPromise !== undefined) {
-          playPromise.then(() => {
-            this.$refs.audioPlayer.play()
-          }).catch(() => {})
-        }
-      }
-      if (data.audio != null) { // 喂音频
-        this.audioMuxer.feed(audioData)
-      }
-      if (data.video != null && this.isFeed) { // 喂视频
-        this.jmuxer.feed(data)
-      }
-      if (data.video) {
-        if (new Date().getTime() - this.curTime >= 1000) {
-          this.fpsCount = 0
-          this.curTime = new Date().getTime()
-        } else {
-          this.fpsCount++
-        }
-      }
-    },
-    // 弹窗关闭
-    close() {
-      this.$emit('closeDialog', 'showMobile')
-    },
-    // 根据sn获取设备获取清晰度、端口号和ip
-    getcardInfoBySn() {
-      var list = []
-      list.push(this.mobileId)
-      getcardInfoBySn({ mobileIdList: list }).then(res => {
-        if (res.status === 0) {
-          this.ip = res.data[0].ip
-          this.port = res.data[0].port
-          this.size = res.data[0].size
-          this.bitRate = res.data[0].bitRate === '0' ? '1638400' : res.data.bitRate
-          this.path = `ws://${res.data[0].ip}:${res.data[0].websocketPort.toString()}`
-          //console.log(this.path)
-          this.init()
-        }
-      })
-    },
-    pause() {
-      this.isFeed = false
-    },
-    audioPlay() {
-      if (document.visibilityState === 'visible') {
-        this.isFlag = true
-        this.socket.send(RequestIFrame(this.sn.join(',')))
-      } else {
-        this.isFlag = false
-        this.isFeed = false
-        this.$refs.player.pause()
-      }
-    },
-    ready() {
-      this.isLoading = false
-    },
-    error() {
-      this.isMask = true
-      this.isError = true
-    },
-    parse(data) {
-      // var input = new Uint8Array(data)
-      // var dv = new DataView(input.buffer)
-      // var duration = dv.getUint16(0, true) // 获取duration
-      // var audioLength = dv.getUint16(2, true)
-      // var audio
-      // var video
-
-      // if (audioLength === 0) {
-      //   video = input.subarray(4)
-      // } else {
-      //   audio = input.subarray(4, (audioLength + 4))
-      //   video = input.subarray(audioLength + 4)
-      // }
-
-      // return {
-      //   audio: audio,
-      //   video: video,
-      //   duration: duration
-      // }
-      var input = new Uint8Array(data)
-      var duration
-      var video
-      var audio
-      if (input[0] === 0 && input[1] === 0 && input[2] === 0 && input[3] === 1) {
-        video = input
-        duration = 24
-        var nalType = input[4] & 0x1f
-        if (nalType === 0x05 && this.isFlag) { // 策略, 找到sps、sps、或I帧,才继续渲染
-          this.isFeed = true
-        }
-      } else if (input[0] === 0xff) {
-        audio = input
-        duration = 24
-      } else if (input[23] === 0x0b) {
-        this.$alert('<div class="c666 fs18 mb10">设备' + this.mobileName + '已在其它端受控</div>', '提示', {
-          dangerouslyUseHTMLString: true,
-          confirmButtonText: '确认',
-          customClass: 'cloud-phone-message-box',
-          confirmButtonClass: 'cloud-phone-confirm-btn', // 自定义确认按钮样式类名
-          callback: action => {
-            this.showMobile = false
-          }
-        })
-      } else if (input[0] === 0x68 && input[23] === 0x05) {
-        var state = CheckScreenDirection(input.slice(24, 24 + 8))
-        if (state === 1) {
-          this.isRotate = false
-        } else {
-          this.isRotate = true
-        }
-      }
-
-      return {
-        audio: audio,
-        video: video,
-        duration: duration
-      }
-    }
-  }
-}
-</script>
-
-<style lang="scss">
-  .ml111 {margin-left: 111px;}.mt50{margin-top: 50px;}.mt40{margin-top: 40px;}
-  .w180h148 {width: 180px;height: 148px;}.mr100{margin-right: 100px;}
-  .mobile-dialog {
-    width: 417px;
-    height: 740px;
-    background: #141414;
-    box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.5);
-    border-radius: 0;
-    &.rotate {
-      width: 705px;
-      height: 452px;
-      .el-dialog__body {
-        padding: 0;
-        .mt226ormt90{
-          margin-top: 90px;
-        }
-        .mlr64ormlr160{
-          margin-left: 160px;
-          margin-right: 160px;
-        }
-        .mobile-audio {
-          width: 660px;
-          height: 372px;
-          position: relative;
-          video {
-            transform:rotate(-90deg);
-            position: absolute;
-            top: -145px;
-            left: 145px;
-          }
-          .mask {
-            width: 100%;
-            height: 100%;
-            background-color: #fff;
-            position: absolute;
-            top: 0;
-            left: 0;
-            display: flex;
-            align-items: center;
-            justify-content: center;
-            flex-direction: column;
-          }
-        }
-        .mobile-sidebar {
-          width: 45px;
-          height: 372px;
-          display: flex;
-          flex-direction: column;
-          align-items: center;
-        }
-        .mobile-bottombar {
-          width: 100%;
-          height: 40px;
-          display: flex;
-          align-items: center;
-          justify-content: center;
-        }
-      }
-    }
-    .el-dialog__header {
-      height: 40px;
-      line-height: 40px;
-      padding: 0;
-      .el-dialog__headerbtn {
-        top: 13px;
-        right: 15px;
-        font-size: 14px;
-        .el-dialog__close {
-          color: #fff;
-          font-weight: 800;
-        }
-      }
-    }
-    .el-dialog__body {
-      padding: 0;
-      .mt226ormt90 {
-        margin-top: 226px;
-      }
-      .mlr64ormlr160{
-        margin-left: 64px;
-        margin-right: 64px;
-      }
-      .mobile-audio {
-        width: 371px;
-        height: 660px;
-        position: relative;
-        .mask {
-          width: 100%;
-          height: 100%;
-          background-color: #fff;
-          position: absolute;
-          top: 0;
-          left: 0;
-          display: flex;
-          align-items: center;
-          justify-content: center;
-          flex-direction: column;
-        }
-      }
-      .mobile-sidebar {
-        width: 46px;
-        height: 660px;
-        display: flex;
-        flex-direction: column;
-        align-items: center;
-      }
-      .mobile-bottombar {
-        width: 100%;
-        height: 40px;
-        display: flex;
-        align-items: center;
-        justify-content: center;
-      }
-    }
-  }
-  .mobile-dropdown-menu {
-    width: 110px;
-    padding: 5px 0;
-    border: none;
-    box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.3);
-    .popper__arrow {
-      border-width: 10px;
-      border-bottom-color: #fff !important;
-      top: -8px !important;
-      left: 60px !important;
-    }
-    .el-dropdown-menu__item {
-      height: 40px;
-      line-height: 40px;
-      &:hover {
-        background-color: #F3F6FF;
-        color: #333;
-      }
-    }
-  }
-  audio {
-    display: none;
-  }
-</style>

+ 0 - 126
decoker/screenIosEdit/pcm-player.js

@@ -1,126 +0,0 @@
-function PCMPlayer(option) {
-    this.init(option);
-}
-
-PCMPlayer.prototype.init = function(option) {
-    var defaults = {
-        encoding: '16bitInt',
-        channels: 1,
-        sampleRate: 8000,
-        flushingTime: 1000
-    };
-    this.option = Object.assign({}, defaults, option);
-    this.samples = new Float32Array();
-    this.flush = this.flush.bind(this);
-    this.interval = setInterval(this.flush, this.option.flushingTime);
-    this.maxValue = this.getMaxValue();
-    this.typedArray = this.getTypedArray();
-    this.createContext();
-};
-
-PCMPlayer.prototype.getMaxValue = function () {
-    var encodings = {
-        '8bitInt': 128,
-        '16bitInt': 32768,
-        '32bitInt': 2147483648,
-        '32bitFloat': 1
-    }
-
-    return encodings[this.option.encoding] ? encodings[this.option.encoding] : encodings['16bitInt'];
-};
-
-PCMPlayer.prototype.getTypedArray = function () {
-    var typedArrays = {
-        '8bitInt': Int8Array,
-        '16bitInt': Int16Array,
-        '32bitInt': Int32Array,
-        '32bitFloat': Float32Array
-    }
-
-    return typedArrays[this.option.encoding] ? typedArrays[this.option.encoding] : typedArrays['16bitInt'];
-};
-
-PCMPlayer.prototype.createContext = function() {
-    this.audioCtx = new (window.AudioContext || window.webkitAudioContext)();
-    this.gainNode = this.audioCtx.createGain();
-    this.gainNode.gain.value = 1;
-    this.gainNode.connect(this.audioCtx.destination);
-    this.startTime = this.audioCtx.currentTime;
-};
-
-PCMPlayer.prototype.isTypedArray = function(data) {
-    return (data.byteLength && data.buffer && data.buffer.constructor == ArrayBuffer);
-};
-
-PCMPlayer.prototype.feed = function(data) {
-    if (!this.isTypedArray(data)) return;
-    data = this.getFormatedValue(data);
-    var tmp = new Float32Array(this.samples.length + data.length);
-    tmp.set(this.samples, 0);
-    tmp.set(data, this.samples.length);
-    this.samples = tmp;
-};
-
-PCMPlayer.prototype.getFormatedValue = function(data) {
-    var data = new this.typedArray(data.buffer),
-        float32 = new Float32Array(data.length),
-        i;
-
-    for (i = 0; i < data.length; i++) {
-        float32[i] = data[i] / this.maxValue;
-    }
-    return float32;
-};
-
-PCMPlayer.prototype.volume = function(volume) {
-    this.gainNode.gain.value = volume;
-};
-
-PCMPlayer.prototype.destroy = function() {
-    if (this.interval) {
-        clearInterval(this.interval);
-    }
-    this.samples = null;
-    this.audioCtx.close();
-    this.audioCtx = null;
-};
-
-PCMPlayer.prototype.flush = function() {
-    if (!this.samples.length) return;
-    var bufferSource = this.audioCtx.createBufferSource(),
-        length = this.samples.length / this.option.channels,
-        audioBuffer = this.audioCtx.createBuffer(this.option.channels, length, this.option.sampleRate),
-        audioData,
-        channel,
-        offset,
-        i,
-        decrement;
-
-    for (channel = 0; channel < this.option.channels; channel++) {
-        audioData = audioBuffer.getChannelData(channel);
-        offset = channel;
-        decrement = 50;
-        for (i = 0; i < length; i++) {
-            audioData[i] = this.samples[offset];
-            /* fadein */
-            if (i < 50) {
-                audioData[i] =  (audioData[i] * i) / 50;
-            }
-            /* fadeout*/
-            if (i >= (length - 51)) {
-                audioData[i] =  (audioData[i] * decrement--) / 50;
-            }
-            offset += this.option.channels;
-        }
-    }
-    
-    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);
-    this.startTime += audioBuffer.duration;
-    this.samples = new Float32Array();
-};

+ 0 - 66
decoker/screenIosEdit/websocket.js

@@ -1,66 +0,0 @@
-var videoPacketNum = 0;//
-var hasPPS = false;
-self.importScripts("helper.js");
-// self.importScripts("pcm-player.js");
-// self.importScripts("pcm-player.min.js");   
-// var socketURL = "ws://192.168.198.21:9101";
-var socketURL = "ws://14.215.128.97:15508"
-// var socketURL = "14.215.128.98:14102";
-// var socketURL = "ws://14.215.128.98:14102"
-// socketURL = "ws://127.0.0.1:8081"
-
-
-var ws = new WebSocket(socketURL);
-ws.binaryType = 'arraybuffer';
-
-ws.addEventListener('open', function(event) {
-	console.log("发送配置帧");
-	ws.send(ConfigChannel("RK3923C1201900139"));
-});
-
-self.addEventListener('message', function(e) {
-	//console.log("收到数据", e.data);
-	console.log('ws', ws);
-	ws.send(e.data);
-	
-}, false);
-
-
-ws.addEventListener('message', function(event) {
-	//var objData = {type:0, data:input};
-	var input = new Uint8Array(event.data);
-	
-	if(input[0] == 0 && input[1] == 0 && input[2] == 0 && input[3] == 1)
-	{	
-	    var nalType = input[4] & 0x1f;
-		
-		if(nalType == 0x05 || nalType == 0x05 || nalType == 0x07)
-		{
-			console.log("收到I 帧");
-			self.postMessage(input);
-			hasPPS = true;
-		}
-		
-		if(!hasPPS)//请求I 帧
-		{
-			videoPacketNum++;
-			
-			if(videoPacketNum > 5 && !hasPPS)
-			{
-				console.log("packetnum 编号" + videoPacketNum);
-				videoPacketNum = 0;		
-				ws.send(RequestIFrame("RK3923C1201900139"));
-				hasPPS = true;
-			}
-		}
-		else
-		{
-			self.postMessage(input);
-		}
-	}
-	else //音频
-	{
-		self.postMessage(input);
-	}
-	
-});

+ 0 - 309
decoker/static/js/draw.js

@@ -1,309 +0,0 @@
-//画布
-var canvas;
-var context;
-//蒙版
-var canvas_bak;
-var context_bak;
-
-var canvasWidth = 720;
-var canvasHeight = 1280;
-
-var canvasTop;
-var canvasLeft;
-
-//画笔大小
-var size = 1;
-var color = '#000000';
-var resolving
-
-
-
-
-                       var url = window.location.href;
-                       url = url.split('/')
-                       var baseUrl =url[2]
-			           var query = window.location.search.substring(1);
-			          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 data = {}         
-              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.username =username.substring(9, username.length)
-			  data.userCardId =userCardId.substring(11, userCardId.length)
-              // var urlss= url[2]  //'14.215.128.96'
-			  var urlss = 'test.androidscloud.com'
-			  var cUrl = data.clientType === 3? "ws://"+urlss+"/authControlWebSocket?"+"clientType="+data.clientType+"&username="+data.username+"&userCardId="+data.userCardId : "ws://"+urlss+"/controlWebSocket?"+"clientType="+data.clientType+"&cardIp="+data.cardIp+"&port="+data.port+"&sn="+data.sn
-			  // var cUrl = "ws://14.215.128.96//controlWebSocket?clientType=1&sn=RK3930C2301900045&cardIp=14.215.128.96&port=2045"
-var wsss = new WebSocket(cUrl);
-
-
-
-//var wsss = new WebSocket("ws://14.215.128.96/controlWebSocket?clientType=0&cardIp=30.30.30.58&port=9100&sn=RK3930C2301900060");
-
-wsss.onopen = function() {
-	var pings = {
-		"event": "getScreenStatus"
-	}
-	wsss.send(JSON.stringify(pings));
-   var bitRate ={"data":{"bitRate":1000},"event":"bitRate"}
-     wsss.send(JSON.stringify(bitRate));
-};
-
-wsss.onmessage = function(event) {
-	var resets = JSON.parse(event.data)
-
-	resolving = resets.data.orientation
-	console.log('>>>resolvingresolvingresolving', resolving)
-	
-	
-	
-         
-			
-	
-	
-	if(resolving == 1) {
-
-		canvas_bak = document.getElementsByTagName("canvas");
-
-	} else {
-		canvas_bak = document.getElementsByClassName("mocan");
-	}
-	
-	
-	
-
-	if(resolving == 1) {
-
-		$('#mocan').removeClass('mocan')
-		$('#mainScreen-main').addClass('mainScreen-main')
-		$('.mainScreen-main').on('click', function() {
-			 
-				//		    	console.log(this)
-				draw_graph('pencil', this)
-
-			
-
-			})
-		$('canvas').css({
-			"display": "block",
-			"width": "100%",
-			"height": "100%",
-			"position": "absolute",
-			"top": "0px",
-			"left": "0px",
-			"z-index": "999",
-			"transform": "rotate(0deg)"
-		})
-		$('#mainScreen-main').css({"display": "block"})
-	} else {
-//      $("#mainScreen-main").
-$('#mainScreen-main').removeClass('mainScreen-main')
-$('#mocan').addClass('mocan')
-
-
-
-
-$('.mocan').on('click', function() {
-			 
-				//		    	console.log(this)
-				draw_graph('pencil', this)
-
-			
-
-			})
-
-
-
-
-
-
-		$('canvas').css({
-			"display": "block",
-			"width": "153%",
-			"height": "162%",
-			"position": "absolute",
-			"top": "-171px",
-			"left": "-94px",
-			"z-index": "0",
-			"transform": "rotate(-90deg)"
-		})
-		$('#mainScreen-main').css({"display": "block"})
-		$('#no-ne').css({
-			"width": "901px",
-			"height": "555px",
-			"position": "absolute",
-			"top": "0",
-			"left": "-269px",
-			"background": "#000000",
-			"z-index": "99999",
-			"font-size": "18px",
-			"color": "#FFFFFF",
-			"text-align": "center",
-			
-		})
-		$('.no-ne-text').css({
-			"margin-top": "24%",
-		})
-	}
-	
-
-	//			context_bak = canvas_bak.getContext('2d');		
-	$(canvas_bak).css("z-index", 999);
-};
-
-
-
-wsss.onclose = function(event) {
-
-};
-wsss.onerror = function(event) {
-
-};
-
-//画图形
-var draw_graph = function(graphType, obj) {
-
-	//把蒙版放于画板上面
-	//$("#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 mousedown = function(e) {
-		
-		
-			var pingssfe = {
-		      "event": "getScreenStatus"
-	        }
-			wsss.send(JSON.stringify(pingssfe));
-		
-		// 
-		//横屏
-		if(resolving == 1) {
-			var ping = {"data":{"action":0,"count":1,"pointerId":0,"x":e.offsetX * 2,"y":e.offsetY * 2.3},"event":"0"}
-			 console.log("黄飞111》》》")
-			
-		} else if(resolving == 0) {
-			var ping ={"data":{"action":0,"count":1,"pointerId":0,"x":e.offsetX * 1.422,"y":e.offsetY * 1.3},"event":"0"}
-	
-		 console.log("黄飞222》》》")
-		
-		}
-  
-		wsss.send(JSON.stringify(ping));
-
-  
-		e = e || window.event;
-		/*startX = e.clientX - canvasLeft;
-		startY = e.clientY - canvasTop;*/
-		//	    console.log('鼠标按下获取:x',e.clientX-canvasLeft,'y:',e.clientY - canvasTop)
-		
-		canDraw = true;
-
-	};
-
-	//鼠标离开 把蒙版canvas的图片生成到canvas中
-	var mouseup = function(e) {
-
-		e = e || window.event;
-		//		startX = e.clientX - canvasLeft;11111
-		//		startY = e.clientY - canvasTop;
-		//		console.log('鼠标离开>>>',e.clientX - canvasLeft)
-		if(resolving == 1) {
-			var ping = {"data":{"action":1,"count":1,"pointerId":0,"x":e.offsetX * 2,"y":e.offsetY * 2.3},"event":"1"}
-		} else if(resolving == 0) {
-			var ping = {"data":{"action":1,"count":1,"pointerId":0,"x":e.offsetX * 1.422,"y":e.offsetY * 1.3},"event":"1"}
-		}
-
-		wsss.send(JSON.stringify(ping));
-		// var seets = {"event":"getScreenStatus"}
-		//   wsss.send(JSON.stringify(seets));
-		canDraw = false;
-
-	};
-
-	//清空层 云手机超出屏幕的开关
-	var clearContext = function(type) {
-		canDraw = false;
-	}
-
-	// 鼠标移动
-	var mousemove = function(e) {
-		//		console.log('鼠标移动7>>>','X:',e.clientX,'Y:',e.clientY)
-		e = e || window.event;
-
-		//方块  4条直线搞定
-		if(graphType == 'square') {
-			if(canDraw) {}
-			//直线
-		} else if(graphType == 'line') {} else if(graphType == 'pencil') {
-			if(canDraw) {
-
-				//				context_bak.lineTo(e.clientX   - canvasLeft ,e.clientY  - canvasTop);
-				//				context_bak.stroke();	
-				if(resolving == 1) {
-					var ping = {"data":{"action":2,"count":1,"pointerId":0,"x":e.offsetX * 2,"y":e.offsetY * 2.3},"event":"2"}
-				} else if(resolving == 0) {
-					var ping = {"data":{"action":2,"count":1,"pointerId":0,"x":e.offsetX * 1.422,"y":e.offsetY * 1.3},"event":"2"}
-				}
-				wsss.send(JSON.stringify(ping));
-			}
-			//圆 未画得时候 出现一个小圆
-		} else if(graphType == 'circle') {} else if(graphType == 'handwriting') {
-			var hwSize = 1;
-			if(canDraw) {} else {}
-			//橡皮擦 不管有没有在画都出现小方块 按下鼠标 开始清空区域
-		} else if(graphType == 'rubber') {}
-	};
-
-	//鼠标离开区域以外 除了涂鸦 都清空
-	var mouseout = function() {
-
-		if(graphType != 'handwriting') {
-			clearContext();
-
-		}
-	}
-
-	$(canvas_bak).unbind();
-	$(canvas_bak).bind('mousedown', mousedown);
-	$(canvas_bak).bind('mousemove', mousemove);
-	$(canvas_bak).bind('mouseup', mouseup);
-	$(canvas_bak).bind('mouseout', mouseout);
-}
-
-//选择功能按钮 修改样式
-function chooseImg(obj) {
-
-}

+ 0 - 49
highDemo/index.html

@@ -1,49 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-	
-	<title>h.264 To fmp4</title>  
- 
-</head>
-<body>
-    <h2>h.264 To fmp4</h2>
-
- 
-   <script type="text/javascript" src="wfs.js" ></script> 
-	<script src="https://cdn.bootcss.com/vConsole/3.2.0/vconsole.min.js"></script>
-  
-   <div class="wfsjs">
-   <video id="video1"  width="640" height="480" controls></video> 
-   <div class="ratio"></div>
-   </div>
-
-   <div class="wfsjs2">
-   <video id="video2"  width="640" height="480" controls></video>
-   <div class="ratio2"></div>
-   </div>
- 
-    <script>
- 
-	window.onload = function () {
-		let vConsole = new VConsole();
-		//			 //你打印的数据 比如
-					 console.log('test');
-        if (Wfs.isSupported()) {
-        	
-            var video1 = document.getElementById("video1"),
-            wfs = new Wfs();    
-            wfs.attachMedia(video1,'ch1');
-         
-            var video2 = document.getElementById("video2"),
-            wfs2 = new Wfs();
-            wfs2.attachMedia(video2,'ch2'); 
-
-  
-        }
-    };
-
- 
-    </script>
-	
-</body>
-</html>

File diff suppressed because it is too large
+ 0 - 3671
highDemo/wfs.js


+ 0 - 42
index.html

@@ -1,42 +0,0 @@
-<!doctype html>
-<head>
-    <title>Using multiple file formats in JavaScript</title>
-
- 
-    <script type= "text/javascript">
-        function checkAudioCompat() {
-            var myAudio = document.createElement('audio');
-            var msg = document.getElementById("display");
- 
-            msg.innerHTML = "";
- 
-            if (myAudio.canPlayType) {
-                // CanPlayType returns maybe, probably, or an empty string.
-                var playMsg = myAudio.canPlayType('audio/mpeg');
-                if ( "" != playMsg) {
-                    msg.innerHTML += "mp3 is " + playMsg + " supported<br/>";
-                }
-                playMsg = myAudio.canPlayType('audio/ogg; codecs="vorbis"'); 
-                if ( "" != playMsg){
-                    msg.innerHTML += "ogg is " + playMsg + " supported<br/>";                    
-                }
- 
-                playMsg = myAudio.canPlayType('audio/mp4; codecs="mp4a.40.5"');
-                if ( "" != playMsg){
-                    msg.innerHTML += "aac is "+playMsg+" supported<br/>";
-                }
-            }
-            else {
-                msg.innerHTML += "no audio support";                
-            }
-        }
-    </script>
-</head>
-<body>
-    <button onclick="checkAudioCompat();">
-        Test for audio format type
-    </button>
-    <div id="display"> </div>
-    <audio src="./1.aac" controls></audio>
-</body>
-</html>

+ 12 - 0
jsconfig.json

@@ -0,0 +1,12 @@
+{
+  "compilerOptions": {
+    "baseUrl": ".",
+    "paths": {
+      "~/*": ["./*"],
+      "@/*": ["./*"],
+      "~~/*": ["./*"],
+      "@@/*": ["./*"]
+    }
+  },
+  "exclude": ["node_modules", ".nuxt", "dist"]
+}

+ 2 - 0
layouts/default.js

@@ -0,0 +1,2 @@
+import EmptyLayout from './empty.vue';
+export default EmptyLayout;

+ 22 - 0
layouts/empty.vue

@@ -0,0 +1,22 @@
+<template>
+  <v-app ref="app" class="empty-layout">
+    <v-main ref="main">
+      <Nuxt />
+    </v-main>
+  </v-app>
+</template>
+
+<script>
+export default {
+  name: 'EmptyLayout',
+  data() {
+    return {};
+  },
+  created() {},
+  mounted() {
+    // this.$nuxt.$vuetifyApp = this.$refs.app;
+    this.$vuetify.app = this.$refs.app;
+    this.$vuetify.main = this.$refs.main;
+  },
+};
+</script>

+ 43 - 0
layouts/error.vue

@@ -0,0 +1,43 @@
+<template>
+  <div>
+    <h1 v-if="error.statusCode === 404">
+      {{ pageNotFound }}
+    </h1>
+    <h1 v-else>
+      {{ otherError }}
+    </h1>
+    <NuxtLink to="/"> Home page </NuxtLink>
+  </div>
+</template>
+
+<script>
+export default {
+  name: 'EmptyLayout',
+  layout: 'empty',
+  props: {
+    error: {
+      type: Object,
+      default: null,
+    },
+  },
+  data() {
+    return {
+      pageNotFound: '404 Not Found',
+      otherError: 'An error occurred',
+    };
+  },
+  head() {
+    const title =
+      this.error.statusCode === 404 ? this.pageNotFound : this.otherError;
+    return {
+      title,
+    };
+  },
+};
+</script>
+
+<style scoped>
+h1 {
+  font-size: 20px;
+}
+</style>

+ 0 - 468
microserviceUserH5/static/css/changePhoneActivity.css

@@ -1,468 +0,0 @@
-@media screen and (max-width: 750px) {
-  html {
-    font-size: calc(100vw / 7.5);
-  }
-}
-
-@media screen and (min-width: 750px) {
-  html {
-    font-size: calc(450px / 7.5);
-  }
-}
-
-html, body, div, ul, li, p {
-  padding: 0;
-  margin: 0;
-}
-
-ul, li {
-  list-style: none;
-}
-
-.header{
-  width: 7.5rem;
-  height: 13.34rem;
-  margin: 0 auto;
-  position: relative; 
-}
-.bg_img{
-  width: 100%;
-  height: 100%;
-}
-.share-node{
-  width: 2.36rem;
-  height: 1.58rem;
-  position: absolute;
-  top: 0.84rem;
-  right: 0;
-}
-.share{ 
-  width: 0.36rem;
-  height: 1.58rem;
-  position: absolute;
-  top: 0;
-  right: 0;
-}
-.logo{
-  width: 2.36rem;
-  height: 0.73rem;
-  position: absolute;
-  top: 1.44rem;
-  left: 2.52rem;
-}
-.theme{
-  width: 5.43rem;
-  height: 1.9rem;
-  position: absolute;
-  top: 2.94rem;
-  left: 1.11rem;
-}
-.activity-bg{
-  width: 4.91rem;
-  height: 0.98rem;
-  position: absolute;
-  top: 5.08rem;
-  left: 1.28rem;
-}
-.time{
-  width: 4.25rem;
-  height: 0.63rem;
-  position: absolute;
-  top: 5.21rem;
-  left: 1.62rem;
-}
-.login-container{
-  width: 6.44rem;
-  height: 5.88rem;
-  position: absolute;
-  top: 6.26rem;
-  left: 0.65rem;
-}
-.login-bg{
-  width: 100%;
-  height: 100%;
-  position: absolute;
-  top: 0;
-  left: 0;
-}
-.login-row-select{
-  width: 5.04rem;
-  height: 0.72rem;
-  position: absolute;
-  top: 1.24rem;
-  left: 0.63rem;
-  background-color: #FFFFFF;
-  border-radius: 0.05rem;
-  overflow: hidden;
-  display: flex;
-  align-items: center;
-}
-.options{
-  width: 2.92rem;
-  height: 1.2rem;
-  position: absolute;
-  top: 1.8rem;
-  left: 1.73rem;
-  z-index: 9999;
-  display: none;
-  background-color: #FFFFFF;
-  border: 0.01rem solid #f5f5f5;
-  border-radius: 0.1rem;
-  padding: 0 0.18rem;
-  box-shadow: 0 0.1rem 0.02rem #FFFFFF;
-}
-.show{
-  display: block;
-}
-.first-text{
-  width: 3.3rem;
-  font-size: 14px;
-  position: absolute;
-  top: 0.1rem;
-  left: 0;
-  text-align: center;
-  padding: 0.1rem 0;
-  z-index: 999;
-}
-.first-text:hover{
-  background-color: #f5f5f5;
-}
-.second-text{
-  width: 3.3rem;
-  font-size: 14px;
-  position: absolute;
-  top: 0.68rem;
-  left: 0;
-  padding: 0.1rem 0;
-  text-align: center;
-  z-index: 999;
-}
-.second-text:hover{
-  background-color: #f5f5f5;
-}
-.login-row-account{
-  width: 5.04rem;
-  height: 0.72rem;
-  position: absolute;
-  top: 2.2rem;
-  left: 0.63rem;
-  background-color: #FFFFFF;
-  border-radius: 5px;
-  overflow: hidden;
-  display: flex;
-  align-items: center;
-}
-.login-row-password{
-  width: 5.04rem;
-  height: 0.72rem;
-  position: absolute;
-  top: 3.16rem;
-  left: 0.63rem;
-  background-color: #FFFFFF;
-  border-radius: 5px;
-  overflow: hidden;
-  display: flex;
-  align-items: center;
-}
-.login-row-title{
-  width: 0.84rem;
-  font-size: 0.28rem;
-  margin-left: 0.16rem;
-}
-.login-row-plc{
-  position: absolute;
-  top: 0.1rem;
-  left: 1.14rem;
-  font-size: 0.28rem;
-}
-.login-row-ipt{
-  width: 3.2rem;
-  border: none;
-  outline: none;
-  margin-top: 0.06rem;
-}
-.icon-down-img{
-  width: 0.32rem;
-  height: 0.18rem;
-  position: absolute;
-  top: 0.26rem;
-  right: 0.2rem;
-}
-.login-btn{
-  width: 2.75rem;
-  height: 0.75rem;
-  position: absolute;
-  bottom: 0.22rem;
-  left: 1.76rem;
-}
-.login-btn-text{
-  width: 1.81rem;
-  height: 0.48rem;
-  position: absolute;
-  bottom: 0.39rem;
-  left: 2.21rem;
-}
-.read-rule{
-  position: absolute;
-  top: 11.58rem;
-  left: 2.02rem;
-}
-.selected{
-  width: 0.14rem;
-  height: 0.14rem;
-  position: absolute;
-  top: 0.84rem;
-  left: 0.15rem;
-}
-.no-selected{
-  width: 0.2rem;
-  height: 0.2rem;
-  position: absolute;
-  top: 0.82rem;
-  left: 0.12rem;
-}
-.rule-text{
-  width: 3.11rem;
-  height: 0.23rem;
-  position: absolute;
-  top: 0.8rem;
-  left: 0.42rem;
-}
-.entry-QQ{
-  width: 5.84rem;
-  height: 0.6rem;
-  position: absolute;
-  bottom: -0.2rem;
-  left: 0.83rem;
-  z-index: 9;
-}
-.entry-QQ-btn{
-  width: 5.84rem;
-  height: 0.6rem;
-  position: absolute;
-  bottom: 0;
-  left: 0;
-}
-.middle{
-  width: 7.5rem;
-  height: 13.34rem;
-  margin: 0 auto;
-  position: relative;
-  top: -0.02rem;
-}
-.middle_bg_img{
-  width: 100%;
-  height: 100%;
-}
-.activity-rule{
-  width: 5.36rem;
-  height: 0.97rem;
-  position: absolute;
-  top: 0.42rem;
-  left: 1.07rem;
-}
-.activity-rule-btn{
-  width: 5.36rem;
-  height: 0.97rem;
-  position: absolute;
-  top: 0.04rem;
-  left: 0;
-}
-.activity-rule-text{
-  width: 1.56rem;
-  height: 0.37rem;
-  position: absolute;
-  top: 0.3rem;
-  left: 1.9rem;
-}
-.rule1{
-  width: 6.2rem;
-  height: 3.27rem;
-  position: absolute;
-  top: 1.75rem;
-  left: 0.65rem;
-}
-.rule6{
-  width: 5.28rem;
-  height: 0.9rem;
-  position: absolute;
-  top: 5.62rem;
-  left: 1.11rem;
-}
-.rule2{
-  width: 6.2rem;
-  height: 4.25rem;
-  position: absolute;
-  top: 6.9rem;
-  left: 0.65rem;
-}
-.rule3{
-  width: 6.2rem;
-  height: 4.2rem;
-  position: absolute;
-  top: 11.56rem;
-  left: 0.65rem;
-  z-index: 999;
-}
-.footer{
-  width: 7.5rem;
-  height: 13.34rem;
-  margin: 0 auto;
-  position: relative;
-  top: -0.05rem;
-}
-.footer_bg_img{
-  width: 100%;
-  height: 106%;
-}
-.rule4{
-  width: 6.2rem;
-  height: 5rem;
-  position: absolute;
-  top: 2.81rem;
-  left: 0.65rem;
-}
-
-.rule5{
-  width: 6.2rem;
-  height: 5.38rem;
-  position: absolute;
-  top: 8.17rem;
-  left: 0.65rem;
-}
-
-#toast-container>.toast-error {
-  background-image: none !important;
-}
-
-.toast-error {
-  background-color: rgba(0, 0, 0, 0.8);
-}
-
-#toast-container>div {
-  font-size: 14px;
-  min-width: 80px !important;
-  padding: 12px !important;
-  box-shadow: none;
-}
-
-.toast-center-center {
-  min-width: 100px;
-  top: 50%;
-  left: 50%;
-  text-align: center;
-  transform: translateX(-50%);
-}
-
-@media (max-width: 480px) and (min-width: 241px) {
-  #toast-container>div {
-    min-width: 80px !important;
-    width: auto;
-  }
-}
-
-.mask1 {
-  width: 100%;
-  height: 100vh;
-  position: fixed;
-  top: 0;
-  left: 0;
-  z-index: 9999;
-  background: rgba(0, 0, 0, 0.24);
-  display: none;
-}
-
-.dialog1 {
-  width: 4.96rem;
-  height: 5.08rem;
-  position: absolute;
-  left: 50%;
-  transform: translate(-50%, -50%);
-  top: -6.96rem;
-  z-index: 999;
-}
-
-.dialog1-bg{
-  width: 4.96rem;
-  height: 5.08rem;
-}
-
-.title{
-  width: 2.75rem;
-  height: 0.38rem;
-  position: absolute;
-  top: 1.22rem;
-  left: 1.1rem;
-}
-.content{
-  width: 3.55rem;
-  height: 1.11rem;
-  position: absolute;
-  top: 2.01rem;
-  left: 0.72rem;
-}
-
-.register-btn{
-  width: 2.29rem;
-  height: 0.64rem;
-  position: absolute;
-  bottom: 0.88rem;
-  left: 1.35rem;
-}
-.register-text{
-  width: 1.44rem;
-  height: 0.39rem;
-  position: absolute;
-  bottom: 1.01rem;
-  left: 1.78rem;
-}
-
-.tip {
-  width: 4.88rem;
-  height: 2.8rem;
-  position: absolute;
-  left: 50%;
-  transform: translate(-50%, -50%);
-  top: -6.96rem;
-  z-index: 999;
-}
-
-.tip-bg{
-  width: 4.88rem;
-  height: 2.8rem;
-}
-
-.tip-title{
-  width: 4.08rem;
-  text-align: center;
-  font-size: 14px;
-  margin-left: 0.4rem;
-  position: absolute;
-  bottom: 1.38rem;
-}
-
-.sure-btn{
-  width: 1.43rem;
-  height: 0.66rem;
-  position: absolute;
-  bottom: 0.53rem;
-  left: 1.76rem;
-}
-.sure-text{
-  width: 0.78rem;
-  height: 0.34rem;
-  position: absolute;
-  bottom: 0.73rem;
-  left: 2.05rem;
-}
-
-.hidden{
-  display: none;
-}
-.show{
-  display: block;
-}
-
-input{
-  -webkit-box-shadow: 0 0 0 1000px white inset;
-}

+ 0 - 716
microserviceUserH5/static/css/doubleChristmasActivity.css

@@ -1,716 +0,0 @@
-@media screen and (max-width: 750px) {
-  html {
-    font-size: calc(100vw / 7.5);
-  }
-}
-
-@media screen and (min-width: 750px) {
-  html {
-    font-size: calc(450px / 7.5);
-  }
-}
-
-html, body, div, ul, li, p {
-  padding: 0;
-  margin: 0;
-}
-
-ul, li {
-  list-style: none;
-}
-.footer-cloud{
-  width: 7.5rem;
-  height: 1.4rem;
-  position: absolute;
-  bottom: 0;
-  left: 0;
-  z-index: 99;
-}
-.header-container{
-  width: 7.5rem;
-  height: 6.54rem;
-  margin: 0 auto;
-  position: relative; 
-  overflow: hidden;
-}
-.top-banner{
-  width: 101%;
-  height: 6.54rem;
-}
-.activity-meal{
-  position: absolute;
-  top: 1.46rem;
-  left: 2.23rem;
-  font-size: 0.28rem;
-  font-weight: bold;
-  color: #FFFFFF;
-}
-.meal-price{
-  position: absolute;
-  bottom: 1.86rem;
-  left: 2.32rem;
-  font-size: 0.32rem;
-  font-weight: bold;
-  color: #FFFFFF;
-}
-.rest-time{
-  height: 0.5rem;
-  line-height: 0.5rem;
-  text-align: center;
-  position: absolute;
-  bottom: 1.12rem;
-  left: 50%;
-  transform: translateX(-50%);
-  background: #000000;
-  border-radius: 0.29rem;
-  opacity: 0.49;
-  font-size: 0.22rem;
-  color: #FFFFFF;
-  padding: 0 0.06rem;
-}
-.limit{
-  position: absolute;
-  bottom: 0.72rem;
-  left: 2.4rem;
-  font-size: 0.24rem;
-  font-weight: 600;
-        color: #FFFFFF;
-  opacity: 0.9;
-}
-.middle-container{
-  width: 7.5rem;
-  margin: 0 auto;
-  position: relative;
-  background: url(../../static/img/doubleChristmasActivity/bg.png) no-repeat;
-  background-size: 100% auto,100% auto;
-  margin-top: -0.72rem;
-  padding-bottom: 0.5rem;
-}
-.tips{
-  width: 7.46rem;
-  height: 4.43rem;
-  position: absolute;
-  top: 1.82rem;
-  left: 0;
-  z-index: 9;
-}
-.step-container{
-  width: 6.9rem;
-  height: 4.43rem;
-  position: relative;
-  padding-top: 2.68rem;
-}
-.main-step-content{
-  width: 6.9rem;
-  position: relative;
-  z-index: 9;
-  border-radius: 0.1rem;
-  margin-left: 0.3rem;
-}
-.top-step{
-  display: flex;
-  justify-content: space-between;
-  padding: 0 0.4rem;
-}
-.hongbao{
-  width: 1.44rem;
-  height: 1.5rem;
-  margin-top: 0.4rem;
-}
-.step{
-  width: 0.52rem;
-  height: 0.24rem;
-  margin-top: 0.76rem;
-}
-.buyphone{
-  width: 1.44rem;
-  height: 1.5rem;
-  margin-top: 0.4rem;
-}
-.rest-tip{
-  margin-top: -0.38rem;
-  text-align: center;
-  font-size: 0.28rem;
-  color: #FFFFFF;
-  opacity: 0.8;
-}
-.tab-row{
-  width: 6.66rem;
-  height: 1rem;
-  background: linear-gradient(180deg, #EFEADD 0%, #EFDDB3 100%);
-  border-radius: 0.2rem;
-  display: flex;
-  align-items: center;
-  margin: 0 auto;
-  margin-top: 0.42rem;
-  padding: 0 0.12rem;
-  position: relative;
-}
-.tab-item{
-  width: 3.45rem;
-  text-align: center;
-  font-size: 0.32rem;
-  font-weight: 600;
-  color: #B8865A;
-  position: relative;
-  z-index: 99;
-}
-.middle-cloud{
-  width: 2.64rem;
-  height: 1.4rem;
-  position: absolute;
-  bottom: -0.42rem;
-}
-.tab-active{
-  line-height: 0.76rem;
-  text-align: center;
-  color: rgba(255,255,255,0.9);
-}
-.tab-bg{
-  width: 3.2rem;
-  height: 0.76rem;
-  position: absolute;
-  top: 0.12rem;
-}
-.tab-left{
-  left: 0.12rem;
-}
-.tab-right{
-  right: 0.12rem;
-}
-.step-item{
-  display: flex;
-  flex-direction: column;
-  align-items: center;
-}
-.step-text{
-  font-size: 0.24rem;
-}
-.join-activity-btn{
-  width: 6.6rem;
-  height: 1.8rem;
-  line-height: 1.4rem;
-  position: absolute;
-  bottom: 0.2rem;
-  left: 0.35rem;
-  z-index: 99;
-}
-.join-activity{
-  width: 100%;
-  height: 100%;
-}
-.activity-btn-content{
-  font-size: 0.44rem;
-  position: absolute;
-  left: 2.1rem;
-  top: 0;
-}
-.activity-btn-text{
-  font-size: 0.44rem;
-  font-weight: 600;
-  color: #BB3804;
-}
-.icon-left{
-  width: 0.2rem;
-  height: 0.32rem;
-}
-.invite-text{
-  margin-top: 0.6rem;
-  font-size: 0.28rem;
-  text-align: center;
-  color: #ffffff;
-  display: none;
-}
-.reward-container{
-  width: 6.5rem;
-  max-height: 12.56rem;
-  overflow-y: scroll;
-  background: #F9F8FB;
-  box-shadow: 0 0.12rem 0.28rem 0 rgba(253, 89, 136, 0.46);
-  border-radius: 0.2rem;
-  margin: 0 auto;
-  margin-top: 0.2rem;
-  padding: 0.2rem;
-  position: relative;
-}
-.activity-finish{
-  width: 100%;
-  height: 100%;
-  position: absolute;
-  top: 0;
-  left: 0;
-  z-index: 101;
-  background: rgba(0, 0, 0, 0.6);
-  border-radius: 0.2rem;
-  display: none;
-}
-.finish-text{
-  width: 1.76rem;
-  height: 1.76rem;
-  line-height: 1.76rem;
-  text-align: center;
-  position: absolute;
-  top: 50%;
-  left: 50%;
-  z-index: 999;
-  transform: translate(-50%,-50%);
-  border-radius: 50%;
-  font-size: 0.24rem;
-  color: #333333;
-  background-color: #FFFFFF;
-}
-.no-time-data{
-  height: 2.2rem;
-  line-height: 2.2rem;
-  text-align: center;
-  font-size: 0.32rem;
-  color: #999999;
-}
-.reward-time{
-  width: 6.5rem;
-  height: 0.72rem;
-  line-height: 0.72rem;
-  text-align: center;
-  background: #FE5140;
-  border-radius: 0.36rem;
-  font-size: 0.24rem;
-  color: rgba(255,255,255,0.9);
-}
-.time-num{
-  background: #F9F8FB;
-  border-radius: 0.08rem;
-  padding: 0.03rem;
-  color: #333333;
-}
-.time-line{
-  font-size: 0.32rem;
-  color: #CF1300;
-}
-.reward-tip-row{
-  position: relative;
-  padding-left: 0.2rem;
-  border-bottom: 0.01rem solid #ED4C55;
-}
-.reward-tip-img{
-  width: 6.1rem;
-  height: 0.5rem;
-  position: absolute;
-  top: 0.1rem;
-}
-.reward-tip{
-  font-size: 0.24rem;
-  font-weight: 600;
-  color: #333333;
-  padding: 0.2rem;
-  margin-left: 0.1rem;
-}
-.reward-list{
-  position: relative;
-}
-.left-ear{
-  width: 0.16rem;
-  height: 0.24rem;
-  position: absolute;
-  top: 40%;
-  left: -0.1rem;
-  transform: translate(-50%,-50%);
-  animation: mymove 1s infinite;
-  display: none;
-}
-.right-ear{
-  width: 0.16rem;
-  height: 0.24rem;
-  position: absolute;
-  top: 40%;
-  right: -0.2rem;
-  transform: translate(-50%,-50%);
-  animation: mymove2 1s infinite;
-  display: none;
-}
-@keyframes mymove {
-  0%   {transform: translateX(-3px);}
-  50% {transform: translateX(-4px);}
-  100% {transform: translateX(-3px);}
-}
-@keyframes mymove2 {
-  0%   {transform: translateX(0);}
-  50% {transform: translateX(-2px);}
-  100% {transform: translateX(0);}
-}
-.distribution-total-num,.no-distribution-num,.total-time-num,.next-time-num{
-  background-color: #FFFFFF;
-  color: #333333;
-  border-radius: 0.08rem;
-  padding: 0.04rem;
-}
-.time-row{
-  display: flex;
-  align-items: center;
-}
-.time-icon{
-  width: 0.26rem;
-  height: 0.26rem;
-  margin-top: 0.05rem;
-  margin-right: 0.1rem;
-}
-.time-overdue{
-  color: #FF9F3A;
-}
-.compute-block{
-  display: flex;
-  align-items: center;
-}
-.ipt{
-  width: 0.74rem;
-  height: 0.38rem;
-  margin: 0 0.1rem;
-  background: linear-gradient(180deg, #E8E6E6 0%, #FFFFFF 100%);
-  border-radius: 0.04rem;
-  text-align: center;
-  border: none;
-}
-.compute-icon{
-  width: 0.4rem;
-  height: 0.4rem;
-}
-input:focus{ 
-  outline:none; 
-}
-.icon_xingyao{
-  width: 0.68rem;
-  height: 0.68rem;
-  margin-left: 0.18rem;
-}
-.distribution-reward-btn{
-  width: 6.5rem;
-  height: 1.04rem;
-  margin-top: -0.1rem;
-  display: none;
-}
-.page-row{
-  display: flex;
-  justify-content: center;
-  align-items: center;
-  margin: 0.1rem 0;
-}
-.schedule-line{
-  width: 0.72rem;
-  height: 0.12rem;
-  margin-top: 0.04rem;
-  background-color: rgba(251, 94, 104, 0.3);
-  border-radius: 0.08rem;
-  position: relative;
-}
-.schedule-child-line{
-  width: 0.2rem;
-  height: 0.12rem;
-  background-color: #FB5E68;
-  border-radius: 0.08rem;
-  position: absolute;
-  top: 0;
-  left: 0;
-  z-index: 99;
-}
-.page{
-  font-size: 0.2rem;
-  color: #333333;
-  margin-left: 0.16rem;
-}
-.reward-btn-img{
-  width: 6.5rem;
-  height: 0.92rem;
-}
-.reward-row{
-  width: 6.5rem;
-  height: 1.22rem;
-  margin-top: 0.2rem;
-  position: relative;
-}
-.reward-row-bg{
-  width: 6.5rem;
-  height: 1.22rem;
-  position: absolute;
-  top: 0;
-}
-.reward-row-content{
-  width: 6.18rem;
-  height: 1.22rem;
-  display: flex;
-  align-items: center;
-  padding: 0 0.22rem 0 0.1rem;
-  position: absolute;
-  top: 0;
-  z-index: 99;
-}
-.reward-img{
-  width: 1.06rem;
-  height: 1.02rem;
-}
-.reward-day-text{
-  margin-left: 0.16rem;
-  color: #FFFFFF;
-  flex: 1;
-}
-.reward-day{
-  font-size: 0.28rem;
-  font-weight: 600;
-}
-.total-day{
-  margin-top: 0.08rem;
-  font-size: 0.24rem;
-  opacity: 0.9;
-}
-.reward-btn{
-  width: 1.34rem;
-  height: 0.78rem;
-}
-.reward-last-tip{
-  text-align: center;
-  margin-top: 0.2rem;
-  font-size: 0.24rem;
-  color: #3B7FFF;
-}
-.distribution-container{
-  width: 6.5rem;
-  max-height: 12.36rem;
-  overflow-y: scroll;
-  background: #F9F8FB;
-  box-shadow: 0 0.12rem 0.28rem 0 rgba(253, 89, 136, 0.46);
-  border-radius: 0.2rem;
-  margin: 0 auto;
-  margin-top: 0.2rem;
-  padding: 0.2rem;
-  display: none;
-}
-.distribution-time{
-  width: 5.48rem;
-  height: 0.72rem;
-  background: #FE5140;
-  border-radius: 0.36rem;
-  font-size: 0.24rem;
-  color: rgba(255,255,255,0.9);
-  display: flex;
-  justify-content: space-between;
-  align-items: center;
-  padding: 0 0.54rem;
-}
-.distribution-line{
-  font-size: 0.32rem;
-  color: #CF1300;
-}
-.distribution-num{
-  background: #F9F8FB;
-  border-radius: 0.08rem;
-  padding: 0.03rem;
-  color: #333333;
-}
-.time-title-row{
-  display: flex;
-  justify-content: center;
-  position: relative;
-  margin-top: 0.2rem;
-}
-.time-title-bg{
-  width: 6.08rem;
-  height: 0.4rem;
-  position: absolute;
-  top: 0.1rem;
-  left: 0.2rem;
-}
-.time-title{
-  font-size: 0.28rem;
-  font-weight: 600;
-  color: #333333;
-}
-.title-row{
-  display: flex;
-  justify-content: space-between;
-  margin-top: 0.3rem;
-  padding: 0 0.36rem;
-  font-size: 0.24rem;
-  font-weight: 600;
-  color: #333333;
-  padding-bottom: 0.1rem;
-  border-bottom: 0.04rem solid #ED4C55;
-}
-.time-container{
-  width: 6.5rem;
-  max-height: 5.2rem;
-  overflow-y: scroll;
-}
-.time-content-row{
-  display: flex;
-  padding: 0.2rem 0.36rem 0.2rem 0.26rem;
-  font-size: 0.24rem;
-  font-weight: 600;
-  color: #333333;
-  border-bottom: 0.04rem solid rgba(253, 89, 136, 0.46);
-}
-.time-content-diskName{
-  width: 1.2rem;
-}
-.time-content-time{
-  width: 3.6rem;
-  margin: 0 0.2rem 0 0.5rem;
-}
-.time-content-day{
-  width: 1.2rem;
-  text-align: right;
-}
-.rule-container{
-  width: 6.9rem;
-  position: relative;
-  margin-top: 1.3rem;
-  margin-left: 0.3rem;
-}
-.rule-tips{
-  width: 6.9rem;
-  height: 7.16rem;
-  position: absolute;
-  top: -1rem;
-  left: 0;
-}
-.rule-content{
-  width: 6.9rem;
-  height: 6.2rem;
-  padding: 0.2rem 0;
-  border-radius: 0.1rem;
-  background-color: #ffffff;
-  overflow-y: scroll;
-  position: relative;
-  z-index: 99;
-}
-.rule-point{
-  margin: 0 0.2rem;
-  font-size: 0.24rem;
-  line-height: 0.48rem;
-}
-
-.blue{
-  color: #02A7F0;
-}
-
-#toast-container>.toast-error {
-  background-image: none!important;
-}
-
-.toast-error {
-  background-color: rgba(0, 0, 0, 0.7);
-}
-
-.toast-message {
-  font-size: 0.24rem;
-  padding: 0 0.1rem;
-  line-height: 0.9rem;
-  text-align: center;
-  font-weight: 400;
-  color: #FFFFFF;
-}
-
-#toast-container>div {
-  width: 4rem;
-  height: 0.9rem;
-  opacity: 1;
-  padding: 0 !important;
-  border-radius: 0.2rem;
-  box-shadow: none;
-}
-
-.toast-center-center {
-  position: fixed;
-  top: 50%;
-  left: 50%;
-  z-index: 99;
-  margin-top: -0.45rem;
-  transform: translateX(-50%);
-}
-
-@media (max-width: 480px) and (min-width: 241px) {
-  #toast-container>div {
-    min-width: 80px !important;
-    width: auto;
-  }
-}
-
-.flex{
-  display: flex;
-}
-.slider{
-  overflow: hidden;
-  flex:1;
-}
-.slider-list{
-  transition:all .6s;
-}
-.no-slider{
-  height: 2.6rem;
-  line-height: 2.6rem;
-  text-align: center;
-  font-size: 0.32rem;
-  color: #999999;
-}
-.item{
-  height: 218px;
-  text-align: center;
-  flex:none;
-  width: 6.5rem;
-}
-.schedule-child-line{
-  transition:all .6s;
-}
-.slider-item{
-  width: 100%;
-}
-
-.sure-distribution-wrap{
-  width: 100vw;
-  height: 100vh;
-  position: fixed;
-  top: 0;
-  left: 0;
-  background-color: rgba(0, 0, 0, 0.24);
-  z-index: 999;
-  display: none;
-}
-.sure-distribution-box{
-  width: 6.22rem;
-  height: 2.28rem;
-  background: #FFFFFF;
-  border-radius: 0.2rem;
-  position: absolute;
-  top: 50%;
-  left: 50%;
-  transform: translate(-50%,-50%);
-}
-.sure-distribution-title{
-  text-align: center;
-  padding: 0.48rem;
-  font-size: 0.32rem;
-        color: #333333;
-}
-.sure-distribution-btn-list{
-  width: 100%;
-  height: 0.86rem;
-  display: flex;
-  justify-content: space-between;
-  border-top: 0.01rem solid #E5E5E5;
-  font-size: 0.28rem;
-}
-.sure-distribution-btn{
-  height: 0.86rem;
-  line-height: 0.86rem;
-  text-align: center;
-  flex: 1;
-}
-.sure-distribution-sure{
-  border-left: 0.01rem solid #b4bbc5;
-  color: #3B7FFF;
-}
-.sure-distribution-cannel:active{
-  background-color: #E5E5E5;
-  border-bottom-left-radius: 0.2rem;
-}
-.sure-distribution-sure:active{
-  background-color: #E5E5E5;
-  border-bottom-right-radius: 0.2rem;
-}

+ 0 - 604
microserviceUserH5/static/css/exchangePhoneActivity.css

@@ -1,604 +0,0 @@
-@media screen and (max-width: 750px) {
-  html {
-    font-size: calc(100vw / 7.5);
-  }
-}
-
-@media screen and (min-width: 750px) {
-  html {
-    font-size: calc(450px / 7.5);
-  }
-}
-
-html, body, div, ul, li, p {
-  padding: 0;
-  margin: 0;
-}
-
-ul, li {
-  list-style: none;
-}
-
-.containers{
-  width: 7.5rem;
-  margin: auto;
-}
-
-.banner-wrap{
-  width: 7.5rem;
-  height: 12.62rem;
-  position: relative;
-}
-
-.logo-wrap{
-  position: absolute;
-  top: 0.3rem;
-  left: 0.2rem;
-}
-
-.logo{
-  width: 0.6rem;
-  height: 0.6rem;
-}
-
-.title-wrap{
-  position: absolute;
-  top: 1.2rem;
-  left: 0.66rem;
-}
-
-.titles{
-  width: 6.2rem;
-  height: 0.76rem;
-}
-
-.tip-wrap{
-  position: absolute;
-  top: 2.3rem;
-  left: 1.31rem;
-}
-
-.tips{
-  width: 4.88rem;
-  height: 0.67rem;
-}
-
-.banner-img{
-  width: 100%;
-  height: 100%;
-}
-
-.dialogs {
-  width: 7.5rem;
-  height: 8.7rem;
-  border-radius: 0.2rem;
-  position: absolute;
-  left: 50%;
-  transform: translateX(-50%);
-  bottom: -10.96rem;
-  z-index: 999;
-}
-
-.rule-list{
-  height: 3rem;
-  position: absolute;
-  top: 0.48rem;
-  padding: 0 0.33rem;
-  margin-top: 0.2rem;
-  font-size: 0.24rem;
-  color: #4D4D4D;
-  overflow-y: scroll;
-}
-
-.rule-point{
-  margin-top: 0.12rem;
-}
-
-.main-wrap{
-  position: absolute;
-  bottom: 0.4rem;
-  left: 0.65rem;
-  padding-bottom: 0.2rem;
-}
-
-.middle-wrap{
-  position: relative;
-  margin: auto;
-  padding-top: 0.1rem;
-}
-
-.ipt-row{
-  width: 6.2rem;
-  height: 0.88rem;
-  background: #FFFFFF;
-  border: 0.01rem solid #CCCCCC;
-  border-radius: 0.2rem;
-  display: flex;
-  align-items: center;
-  margin-top: 0.36rem;
-}
-
-.img{
-  width: 0.3rem;
-  height: 0.36rem;
-  margin: 0 0.22rem 0 0.3rem;
-}
-
-.ipt{
-  width: 4.14rem;
-  height: 0.4rem;
-  outline: none;
-  border: none;
-  padding-left: 0.24rem;
-  border-left: 0.01rem solid rgba(238,238,238,1);
-  box-sizing: border-box;
-  font-size: 0.24rem;
-  margin-right: 0.3rem;
-}
-
-.code-ipt{
-  width: 3rem;
-}
-
-.phone-tip{
-  position: absolute;
-  top: 1.34rem;
-  left: 1.1rem;
-  font-size: 0.24rem;
-  color: #ED6F52;
-  display: none;
-}
-
-.code-tip{
-  position: absolute;
-  bottom: 1.02rem;
-  left: 1.1rem;
-  font-size: 0.24rem;
-  color: #ED6F52;
-  display: none;
-}
-
-.get-code{
-  font-size: 0.3rem;
-  color: #F19026;
-  margin-left: 0.2rem;
-}
-
-.get-code-active{
-  width: 1.4rem;
-  height: 0.6rem;
-  line-height: 0.6rem;
-  text-align: center;
-  color: #F19026;
-  border-radius: 0.1rem;
-  background-color: rgba(238,238,238,1);
-}
-
-.btns{
-  display: flex;
-  justify-content: center;
-  align-items: center;
-  margin-top: 0.4rem;
-}
-
-.btn-img{
-  width: 4rem;
-  height: 1rem;
-}
-
-.bottom-wrap{
-  background-color: rgba(135, 211, 255, 1);
-  padding-bottom: 0.8rem;
-}
-
-.title{
-  width: 3.2rem;
-  height: 0.56rem;
-  margin: auto;
-}
-
-.icon-title{
-  width: 100%;
-  height: 100%;
-}
-
-.icon-wrap{
-  width: 6.8rem;
-  height: 6.2rem;
-  margin: auto;
-  margin-top: 0.2rem;
-  background: #F1FEFF;
-  box-shadow: 0 0 0.49rem 0 #FFFFFF;
-  border-radius: 0.2rem;
-  display: flex;
-  justify-content: space-between;
-  flex-wrap: wrap;
-  padding: 0.34rem;
-}
-
-.icon-item{
-  display: flex;
-  flex-direction: column;
-  justify-content: center;
-  align-items: center;
-}
-
-.icon-item-img{
-  width: 1.5rem;
-  height: 1.5rem;
-}
-
-.icon-item-text{
-  margin-top: 0.24rem;
-  font-weight: 600;
-  color: rgba(51, 51, 51, 1);
-  font-size: 0.3rem;
-}
-
-.icon-item-tip{
-  color: rgba(153, 153, 153, 1);
-  font-size: 0.24rem;
-}
-
-.copy-mask {
-  width: 100%;
-  height: 100vh;
-  position: fixed;
-  top: 0;
-  left: 0;
-  background: rgba(0, 0, 0, 0.6);
-  display: none;
-}
-
-.copy-dialog {
-  width: 6.27rem;
-  height: 5.84rem;
-  border-radius: 0.2rem;
-  position: absolute;
-  left:50%;
-  transform: translateX(-50%);
-  padding: 0 0.4rem;
-  top: -6.96rem;
-  background: url(../../static/img/exchangePhoneActivity/new.png) no-repeat;
-  background-size: 100% auto,100% auto;
-  /* overflow: hidden; */
-}
-
-.mask-title-wrap{
-  width: 100%;
-  position: absolute;
-  top: 2.19rem;
-  left: 50%;
-  transform: translateX(-50%);
-  font-size: 0.36rem;
-  font-weight: 600;
-  color: #333333;
-}
-
-.mask-title-texts{
-  text-align: center;
-  line-height: 0.46rem;
-}
-
-.mask-btn-wrap{
-  width: 4.22rem;
-  height: 1rem;
-  position: absolute;
-  bottom: 1.4rem;
-  left: 50%;
-  transform: translateX(-50%);
-}
-
-.mask-btn{
-  width: 4.22rem;
-  height: 1rem;
-}
-
-.mask-tips{
-  width: 4.4rem;
-  position: absolute;
-  bottom: 0.8rem;
-  left: 50%;
-  transform: translateX(-50%);
-  text-align: center;
-  font-size: 0.24rem;
-  color: #666666;
-}
-
-.mask-card{
-  font-size: 0.24rem;
-  font-weight: 600;
-  color: #666666;
-}
-
-.ios-mask {
-  width: 100%;
-  height: 100vh;
-  position: fixed;
-  top: 0;
-  left: 0;
-  background: rgba(0, 0, 0, 0.6);
-  display: none;
-}
-
-.ios-dialog {
-  width: 6.27rem;
-  height: 5.84rem;
-  border-radius: 0.2rem;
-  position: absolute;
-  left:50%;
-  transform: translateX(-50%);
-  padding: 0 0.4rem;
-  top: -6.96rem;
-  background: url(../../static/img/exchangePhoneActivity/success.png) no-repeat;
-  background-size: 100% auto,100% auto;
-}
-
-.txt1 {
-  font-size: 0.36rem;
-  color: #333333;
-  line-height: 0.48rem;
-  text-align: center;
-}
-.btn2, .btn3 {
-  width: 2.41rem;
-  height: 0.89rem;
-}
-.ios-btnlist {
-  margin-top: 0.6rem;
-  text-align: center;
-}
-.imgs-block{
-  width: 100%;
-  display: flex;
-  justify-content: center;
-  align-items: center;
-  position: relative;
-  margin-top: 0.5rem;
-}
-
-.copy-tip{
-  display: flex;
-  justify-content: center;
-  font-size: 0.28rem;
-  margin-top: 0.32rem;
-  color: #333333;
-}
-
-.my{
-  color: #000000;
-  font-weight: 600;
-}
-
-.point1{
-  font-size: 0.26rem;
-  margin-top: 0.16rem;
-  color: #666666;
-}
-
-.point-img{
-  width: 5.42rem;
-  height: 1.7rem;
-  margin: auto;
-  margin-top: 0.2rem;
-}
-
-.point2{
-  margin-top: 0.32rem;
-}
-
-.imgs{
-  width: 0.38rem;
-  height: 0.38rem;
-}
-
-.imgs-text{
-  font-size: 0.36rem;
-  color: #3B7FFF;
-}
-
-.get-success-block{
-  display: flex;
-  justify-content: center;
-  margin-top: 0.3rem;
-}
-
-.get-success{
-  width: 4.6rem;
-  height: 0.9rem;
-  line-height: 0.9rem;
-  text-align: center;
-  color: #FFFFFF;
-  font-size: 0.25rem;
-  background: linear-gradient(180deg, #6DB6FF 0%, #3B7FFF 100%);
-  border-radius: 0.2rem;
-}
-.close{
-  width: 0.48rem;
-  height: 0.48rem;
-  position: absolute;
-  bottom: -0.8rem;
-  left: 50%;
-  margin-left: -0.24rem;
-  z-index: 999;
-}
-
-.close1{
-  width: 0.48rem;
-  height: 0.48rem;
-  position: absolute;
-  bottom: -0.8rem;
-  left: 50%;
-  margin-left: -0.24rem;
-  z-index: 999;
-}
-
-input:disabled {
-  background-color: #FFFFFF;
-}
-
-.right_icon{
-  width: 0.2rem;
-  height: 0.32rem;
-  margin-left: 0.3rem;
-}
-
-.bottom-wrap{
-  padding-top: 0.46rem;
-  background-color: #1F2A44;
-}
-
-.procedure-wrap{
-  width: 6.8rem;
-  height: 2.87rem;
-  margin: auto;
-}
-
-.procedure-img{
-  width: 100%;
-  height: 100%;
-}
-
-.rule-wrap{
-  position: relative;
-  width: 6.8rem;
-  height: 3.87rem;
-  margin: auto;
-  margin-top: 0.46rem;
-}
-
-.rule-img{
-  width: 100%;
-  height: 100%;
-}
-
-.time_lines{
-  position: absolute;
-  top: 0.6rem;
-  left: 50%;
-  transform: translateX(-50%);
-  display: flex;
-  align-items: center;
-  color: #FFFFFF;
-}
-
-.time-text{
-  width: 3.5rem;
-  font-size: 0.24rem;
-  text-align: center;
-  padding: 0 0.15rem;
-}
-
-.time_line{
-  width: 0.5rem;
-  height: 0.01rem;
-}
-
-.select-wrap{
-  width: 100%;
-  position: absolute;
-  top: -0.5rem;
-  right: 0;
-  display: flex;
-  justify-content: center;
-}
-
-.select{
-  display: flex;
-  align-items: center;
-  color: #FFFFFF;
-  font-size: 0.36rem;
-}
-
-.selected{
-  width: 0.4rem;
-  height: 0.4rem;
-  margin-right: 0.2rem;
-}
-
-.right-select{
-  margin-left: 1.05rem;
-}
-
-.down_icon{
-  width: 0.38rem;
-  height: 0.2rem;
-}
-
-.mask-title-wrap2{
-  top: 1.8rem;
-}
-
-.mask-tips2{
-  bottom: 2.8rem;
-  text-align: center;
-}
-
-.mask-tips3{
-  bottom: 2.4rem;
-  text-align: center;
-}
-
-.mask-btn-wrap2{
-  bottom: 1rem;
-}
-
-.plc-clss{
-  color: #CCCCCC;
-}
-
-.phone-img{
-  width: 0.35rem;
-  height: 0.4rem;
-}
-
-.code-img{
-  width: 0.3rem;
-  height: 0.47rem;
-}
-
-/*谷歌*/
-input::-webkit-outer-spin-button,
-input::-webkit-inner-spin-button {
- -webkit-appearance: none;
-}
-/*火狐*/
-input[type="number"] {
- -moz-appearance: textfield;
-}
-
-#toast-container>.toast-error {
-  background-image: none !important;
-  border-radius: 0.2rem;
-}
-
-.toast-error {
-  background-color: rgba(0, 0, 0, 0.8);
-  border-radius: 0.2rem;
-}
-
-#toast-container>div {
-  font-size: 14px;
-  min-width: 80px !important;
-  padding: 12px !important;
-  box-shadow: none;
-  border-radius: 0.2rem;
-}
-
-.toast-center-center {
-  position: fixed;
-  min-width: 220px;
-  top: 50%;
-  left: 50%;
-  text-align: center;
-  transform: translateX(-50%);
-  color: #FFFFFF;
-  border-radius: 0.2rem;
-}
-
-@media (max-width: 480px) and (min-width: 241px) {
-  #toast-container>div {
-    min-width: 88px !important;
-    width: auto;
-  }
-}

+ 0 - 168
microserviceUserH5/static/css/experience.css

@@ -1,168 +0,0 @@
-@media screen and (max-width: 750px) {
-	html {
-		font-size: calc(100vw / 7.5);
-	}
-}
-
-@media screen and (min-width: 750px) {
-	html {
-		font-size: calc(450px / 7.5);
-	}
-}
-
-::selection {
-	background-color: #b3d4fc;
-	text-shadow: none;
-}
-
-.clearfix:before, .clearfix:after {
-	content: "";
-	display: table;
-}
-
-.clearfix:after {
-	clear: both;
-}
-
-body {
-	background-color: #ffffff;
-}
-
-.free-code-con {
-	background-color: #333DAF;
-	width: 7.5rem;
-	min-height: 100vh;
-	margin: 0 auto;
-}
-
-.free-code-con .bottom-img {
-	width: 100%;
-}
-
-button:focus, input:focus {
-	outline: 0;
-}
-
-.top .center-pic {
-	position: absolute;
-	top: 5.97rem;
-	left: 0;
-	width: 7.5rem;
-	height: 7.13rem;
-	background: url(../img/register/yun_icon.png) no-repeat;
-	background-size: 100% 100%;
-}
-
-.tip {
-	font-size: 0.24rem;
-	margin-top: 0.1rem;
-	color: #9EA4DC;
-	margin-left: 0.8rem;
-}
-
-.top .center-pic .recv-cont .recv-ipt {
-	width: 6.7rem;
-	height: 1rem;
-	margin-top: 2.24rem;
-	margin-left: 0.4rem;
-	padding-left: 0.4rem;
-	border-radius: 0.5rem;
-	font-size: 0.3rem;
-	letter-spacing: 0.04rem;
-	color: #fff;
-	border: 1px solid rgba(255, 255, 255, 0.38);
-	background-color: #222FB2;
-	border: none;
-}
-
-.top .center-pic .recv-cont .recv-btn {
-	margin-left: 0.26rem;
-	margin-top: 0.27rem;
-	width: 6.98rem;
-	height: 1.79rem;
-	background: url(../img/register/anniu_icon.png) no-repeat;
-	background-size: 100% 100%;
-	font-weight: 500;
-	font-size: 0.36rem;
-	color: #fff;
-	letter-spacing: 0.02rem;
-	line-height: 1.17rem;
-	text-align: center;
-}
-.user-info {
-	width: 7.5rem;
-	position: absolute;
-	top: 3.45rem;
-	left: 0;
-	display: flex;
-	flex-direction: column;
-	align-items: center;
-}
-.head {
-	width: 1.14rem;
-	height: 1.14rem;
-	border-radius: 50%;
-	background-image: url(../img/register/touxiang_icon.png);
-	background-color: #fff;
-	background-size: 100% 100%;
-	overflow: hidden;
-}
-.head img {
-	width: 0.9rem;
-	height: 0.9rem;
-	border-radius: 50%;
-	margin: 0.12rem;
-}
-.username {
-	font-size: 0.28rem;
-	color: #fff;
-	margin-top: 0.05rem;
-	line-height: 0.4rem;
-}
-.icon {
-	width: 0.64rem;
-	height: 0.64rem;
-}
-.txt {
-	font-weight: 500;
-	font-size: 0.26rem;
-	line-height: 0.64rem;
-	color: #37C7F6;
-	margin-left: 0.71rem;
-	margin-right: 0.74rem;
-	display: flex;
-	flex-wrap: wrap;
-}
-.bottom {
-	width: 100%;
-	position: absolute;
-	text-align: center;
-	bottom: 0.3rem;
-	font-size: 0.26rem;
-	color: rgba(255, 255, 255, 0.6);
-}
-.mb8 {
-	margin-bottom: 0.08rem;
-}
-.wl {
-	position: relative;
-}
-.wl::before, .wl::after {
-	content: '';
-	display: block;
-	width: 0.56rem;
-	height: 0.09rem;
-	position: absolute;
-	top: 0.12rem;
-}
-.wl::before {
-	left: 2.2rem;
-	background: url(../img/invite/zuo_icon.png) no-repeat;
-	background-size: 100% 100%;
-}
-.wl::after {
-	right: 2.2rem;
-	background: url(../img/invite/you_icon.png) no-repeat;
-	background-size: 100% 100%;
-	
-}

+ 0 - 721
microserviceUserH5/static/css/springFestivalActivity.css

@@ -1,721 +0,0 @@
-@media screen and (max-width: 750px) {
-  html {
-    font-size: calc(100vw / 7.5);
-  }
-}
-
-@media screen and (min-width: 750px) {
-  html {
-    font-size: calc(450px / 7.5);
-  }
-}
-
-html, body, div, ul, li, p {
-  padding: 0;
-  margin: 0;
-}
-
-ul, li {
-  list-style: none;
-}
-.code-container{
-  width: 7.5rem;
-  height: 10.44rem;
-  margin: 0 auto;
-  position: relative;
-  background: url(../../static/img/springFestivalActivity/bg.png) no-repeat;
-  background-size: 100% 100%;
-  padding-bottom: 0.5rem;
-}
-
-.award-tip{
-  width: 7.5rem;
-  height: 0.56rem;
-  line-height: 0.56rem;
-  text-align: center;
-  position: absolute;
-  top: 3.6rem;
-  left: 50%;
-  transform: translateX(-50%);
-  color: #C30000;
-  font-size: 0.24rem;
-  /* text-shadow: 0 0 0.12rem rgba(170, 0, 0, 0.46); */
-  /* background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.64) 49%, rgba(255, 255, 255, 0) 100%); */
-}
-
-.rule-wrap{
-  position: absolute;
-  top: 0.56rem;
-  right: 0;
-}
-
-.rule,.award{
-  width: 1.3rem;
-  height: 0.64rem;
-  line-height: 0.64rem;
-  text-align: center;
-  padding-left: 0.2rem;
-  background: url(../../static/img/springFestivalActivity/rule.png) no-repeat;
-  background-size: 100% 100%;
-  font-size: 0.24rem;
-  font-weight: 600;
-  color: #FFFFFF;
-}
-
-.award{
-  margin-top: 0.2rem;
-}
-
-.gift-box{
-  width: 5.18rem;
-  height: 4.68rem;
-  position: absolute;
-  top: 4.2rem;
-  left: 1.06rem;
-}
-
-.have-buff{
-  animation: mymove2 1.6s infinite;
-}
-
-@keyframes mymove2 {
-  0%   {transform: translateY(0) scale(1);}
-  50% {transform: translateY(-0.2rem)  scale(1.05);}
-  100% {transform: translateY(0) scale(1);}
-}
-
-.gift-img{
-  width: 100%;
-  height: 100%;
-}
-
-.next-container{
-  width: 7.5rem;
-  height: 9.18rem;
-  position: relative;
-  background: url(../../static/img/springFestivalActivity/nextBg.png) no-repeat;
-  background-size: 100% 100%;
-  margin: auto;
-  margin-top: -2.52rem;
-}
-
-.lottery-tip{
-  position: absolute;
-  top: 2.5rem;
-  left: 50%;
-  transform: translateX(-50%);
-  font-size: 0.24rem;
-  color: #EE0B1A;
-}
-
-.lottery-wrap{
-  position: absolute;
-  top: 3rem;
-  left: 50%;
-  transform: translateX(-50%);
-  display: flex;
-  justify-content: space-between;
-}
-.once,.five-times{
-  width: 3.2rem;
-  height: 1rem;
-  line-height: 1rem;
-  text-align: center;
-  background: url(../../static/img/springFestivalActivity/award.png) no-repeat;
-  background-size: 100% 100%;
-  font-size: 0.34rem;
-  font-weight: 600;
-  color: #FFFFFF;
-}
-
-.five-times{
-  margin-left: 0.3rem;
-}
-
-.rest-times{
-  width: 6.7rem;
-  height: 0.7rem;
-  line-height: 0.7rem;
-  background: #FFBEAF;
-  border-radius: 0.35rem;
-  border: 0.04rem solid #FF8585;
-  position: absolute;
-  top: 4.2rem;
-  left: 50%;
-  transform: translateX(-50%);
-  display: flex;
-  justify-content: space-between;
-
-}
-
-.rest-times-text{
-  font-size: 0.3rem;
-  color: #EE0B1A;
-  margin-left: 0.3rem;
-}
-
-.get-times{
-  position: absolute;
-  top: -0.04rem;
-  right: -0.064rem;
-  width: 2.46rem;
-  height: 0.8rem;
-  line-height: 0.8rem;
-  text-align: center;
-  background: url(../../static/img/springFestivalActivity/getTimer.png) no-repeat;
-  background-size: 100% 100%;
-  font-size: 0.28rem;
-  font-weight: 600;
-  color: #FFF5D3;
-  padding-left: 0.2rem;
-}
-
-.no-join-activity{
-  width: 4.8rem;
-  position: absolute;
-  bottom: 3.6rem;
-  left: 50%;
-  transform: translateX(-50%);
-  font-size: 0.24rem;
-  color: rgba(238, 11, 26, 0.6);
-}
-
-.share-wrap{
-  position: absolute;
-  bottom: 2.1rem;
-  left: 50%;
-  transform: translateX(-50%);
-  width: 6.7rem;
-  height: 0.94rem;
-  line-height: 0.94rem;
-  text-align: center;
-  background: rgba(255, 109, 109, 0);
-  border: 0.02rem solid #EE0B1A;
-  font-size: 0.3rem;
-  font-weight: 600;
-  color: rgba(238, 11, 26, 0.8);
-  border-radius: 0.2rem;
-}
-
-.get-award{
-  position: absolute;
-  bottom: 1.4rem;
-  left: 50%;
-  transform: translateX(-50%);
-  font-size: 0.32rem;
-  display: flex;
-  align-items: center;
-}
-
-.award-text{
-  font-weight: 600;
-  text-decoration: underline;
-  color: #EE0B1A;
-}
-
-.award-number{
-  height: 0.44rem;
-  background: linear-gradient(180deg, #FF7D85 0%, #EE0B1A 100%);
-  box-shadow: 0 0.04rem 0.08rem 0 rgba(217, 0, 0, 0.27);
-  border-radius: 0.22rem;
-  padding: 0.04rem 0.12rem;
-  color: #FFFFFF;
-  margin-left: 0.1rem;
-  display: none;
-}
-
-.activity-time{
-  width: 100%;
-  position: absolute;
-  bottom: 0.8rem;
-  text-align: center;
-  font-size: 0.28rem;
-  color: rgba(238, 11, 26, 0.6);
-}
-
-.activity-tip{
-  width: 100%;
-  position: absolute;
-  bottom: 0.4rem;
-  text-align: center;
-  font-size: 0.28rem;
-  color: rgba(238, 11, 26, 0.6);
-}
-
-.no-times-tip{
-  position: absolute;
-  top: 3.94rem;
-  left: 50%;
-  transform: translateX(-50%);
-  font-size: 0.32rem;
-  font-weight: 600;
-  color: #FFFAA5;
-  line-height: 0.6rem;
-  text-shadow: 0 0 0.1rem rgba(222, 13, 16, 0.7);
-}
-
-.no-times-btn{
-  position: absolute;
-  bottom: 0.54rem;
-  left: 50%;
-  transform: translateX(-50%);
-  width: 4.6rem;
-  height: 1.02rem;
-  line-height: 1.02rem;
-  text-align: center;
-  background: url(../../static/img/springFestivalActivity/noTimes.png) no-repeat;
-  background-size: 100% 100%;
-  font-size: 0.34rem;
-  font-weight: 600;
-  color: #EE0B1A;
-}
-
-.award-record-mask,.rule-mask,.award-mask,.award-result-mask,.distribution-mask,.no-start-mask {
-  width: 100%;
-  height: 100vh;
-  position: fixed;
-  top: 0;
-  left: 0;
-  background: rgba(0, 0, 0, 0.5);
-  display: none;
-}
-
-.dialog {
-  width: 5.97rem;
-  height: 8.7rem;
-  background: url(../../static/img/springFestivalActivity/record-bg.png) no-repeat;
-  background-size: 100% 100%;
-  border-radius: 0.2rem;
-  position: absolute;
-  left: 50%;
-  top: -10.96rem;
-  z-index: 999;
-  transform: translateX(-50%);
-}
-
-.tab-wrap{
-  width: 4.52rem;
-  height: 0.62rem;
-  background: url(../../static/img/springFestivalActivity/selectedBg.png) no-repeat;
-  background-size: 100% 100%;
-  text-align: center;
-  margin: auto;
-  margin-top: 1.36rem;
-  font-size: 0.28rem;
-  display: flex;
-  justify-content: space-between;
-  align-items: center;
-  padding: 0 0.3rem;
-}
-
-.award-change-btn{
-  width: 1.92rem;
-  height: 0.54rem;
-  line-height: 0.52rem;
-  color: #FFE4BD;
-}
-
-.active{
-  color: #EE0B1A;
-  background: url(../../static/img/springFestivalActivity/selected.png) no-repeat;
-  background-size: 100% 100%;
-}
-
-.record-wrap{
-  margin: auto;
-  margin-top: 0.2rem;
-  width: 5.38rem;
-  /* height: 6.16rem; */
-  height: 5.2rem;
-  background: rgba(255, 255, 255, 0);
-  border-radius: 0.12rem;
-  border: 0.02rem solid rgba(255, 214, 189, 0.7);
-}
-
-.title-row{
-  display: flex;
-  justify-content: space-between;
-  padding: 0.1rem 0.48rem;
-  margin-top: 0.14rem;
-  font-size: 0.28rem;
-  font-weight: 600;
-  color: #FFF5BD;
-}
-
-.line{
-  width: 5.28rem;
-  height: 0.02rem;
-  background: linear-gradient(117deg, rgba(255, 219, 209, 0) 0%, #FEB4A4 47%, rgba(254, 180, 164, 0) 100%);
-}
-
-.data-list{
-  height: 4.82rem;
-  padding: 0.1rem 0.2rem;
-  overflow-y: scroll;
-}
-
-.data-row{
-  display: flex;
-  justify-content: space-between;
-  align-items: center;
-  margin-bottom: 0.24rem;
-  font-size: 0.28rem;
-  color: #FFE4BD;
-}
-
-.record-operate{
-  width: 1.08rem;
-  height: 0.52rem;
-  line-height: 0.52rem;
-  text-align: center;
-  background: rgba(255, 245, 189, 0.5);
-  border-radius: 0.26rem;
-  font-size: 0.24rem;
-  color: #D40D1A;
-}
-
-.sure-btn{
-  width: 3.22rem;
-  height: 0.76rem;
-  line-height: 0.76rem;
-  text-align: center;
-  position: absolute;
-  bottom: 0.2rem;
-  left: 50%;
-  transform: translateX(-50%);
-  background: url(../../static/img/springFestivalActivity/sureBg2.png) no-repeat;
-  background-size: 100% 100%;
-  font-size: 0.34rem;
-  color: #FFF5BD;
-}
-
-.close,.rule-close,.award-close,.award-result-close{
-  width: 0.56rem;
-  height: 0.56rem;
-  position: absolute;
-  left: 50%;
-  bottom: -1rem;
-  transform: translateX(-50%);
-}
-
-.rule-dialog{
-  width: 7rem;
-  height: 8.82rem;
-  background: url(../../static/img/springFestivalActivity/ruleBg.png) no-repeat;
-  background-size: 100% 100%;
-  border-radius: 0.2rem;
-  position: absolute;
-  left: 50%;
-  top: -10.96rem;
-  transform: translateX(-50%);
-}
-
-.rule-text{
-  position: absolute;
-  width: 3.4rem;
-  height: 1.14rem;
-  top: 0.72rem;
-  left: 50%;
-  transform: translateX(-50%);
-}
-
-.rule-list{
-  width: 4.76rem;
-  height: 6.2rem;
-  overflow-y: scroll;
-  position: absolute;
-  top: 1.6rem;
-  left: 50%;
-  margin-top: 0.2rem;
-  transform: translateX(-50%);
-  font-size: 0.26rem;
-  color: #BE000D;
-}
-
-.rule-point{
-  width: 4.76rem;
-  margin-top: 0.3rem;
-}
-
-.award-dialog{ 
-  width: 7rem;
-  height: 8.42rem;
-  background: url(../../static/img/springFestivalActivity/awardBg.png) no-repeat;
-  background-size: 100% 100%;
-  border-radius: 0.2rem;
-  position: absolute;
-  left: 50%;
-  top: -10.96rem;
-  transform: translateX(-50%);
-}
-
-.award-result-row{
-  margin-top: 2.8rem;
-  display: flex;
-  justify-content: center;
-  align-items: center;
-}
-
-.icon{
-  width: 0.5rem;
-  height: 0.26rem;
-  margin-right: 0.1rem;
-}
-
-.award-result{
-  color: #FFF5BD;
-  font-size: 0.28rem;
-  margin: 0 0.1rem;
-}
-
-.card-wrap{
-  display: flex;
-  justify-content: center;
-  flex-wrap: wrap;
-  margin: auto;
-  margin-top: 0.2rem;
-}
-
-.card-item{
-  margin: 0.18rem;
-  text-align: center;
-  position: relative;
-}
-
-.light{
-  width: 4.4rem;
-  height: 4.4rem;
-  position: absolute;
-  z-index: 99;
-  top: 0;
-  left: 50%;
-  transform: translateX(-50%);
-}
-
-.many-light{
-  width: 1.4rem;
-  height: 1.4rem;
-  position: absolute;
-  z-index: 99;
-  top: 0;
-  left: 50%;
-  transform: translateX(-50%);
-}
-
-.many-card-wrap{
-  display: flex;
-  justify-content: flex-start;
-  flex-wrap: wrap;
-  margin: auto;
-  padding-left: 0.3rem;
-  margin-top: 0.2rem;
-}
-
-.card{
-  width: 1.4rem;
-  height: 1.4rem;
-}
-
-.card-text{
-  font-size: 0.28rem;
-  color: #FFF5BD;
-  margin-top: -0.14rem;
-}
-
-.award-result-dialog{
-  width: 7.5rem;
-  height: 9.64rem;
-  background: url(../../static/img/springFestivalActivity/resultBg.png) no-repeat;
-  background-size: 100% 100%;
-  border-radius: 0.2rem;
-  position: absolute;
-  left: 50%;
-  top: -10.86rem;
-  transform: translateX(-50%);
-}
-
-.award-result-wrap{
-  width: 5.6rem;
-}
-
-.result-tip-row{
-  margin-top: 2rem;
-  text-align: center;
-}
-
-.award-result-tip{
-  font-size: 0.32rem;
-  font-weight: 600;
-  color: #FFFAA5;
-  line-height: 0.44rem;
-  text-shadow: 0 0 0.1rem rgba(222, 13, 16, 0.7);
-  color: linear-gradient(180deg, #FFF3E0 0%, #FFFAA5 100%);
-}
-
-.join-result-tip{
-  margin-top: 0.1rem;
-  font-size: 0.24rem;
-  color: #FFFAA5;
-}
-
-.one-card{
-  margin-top: 0.6rem;
-  width: 2.4rem;
-  height: 2.4rem;
-  animation: mymove 0.8s;
-}
-
-.many-card{
-  width: 1.4rem;
-  height: 1.4rem;
-  animation: mymove 0.8s;
-}
-
-.many-card-item:nth-child(4n){
-  margin-left: 1rem;
-}
-
-.many-card-item{
-  display: none;
-}
-
-@keyframes mymove {
-  0%   {transform:scale(0,0);}
-  100% {transform:scale(1,1);}
-}
-
-.btn-row{
-  width: 5.6rem;
-  display: flex;
-  position: absolute;
-  bottom: 0.66rem;
-  left: 50%;
-  transform: translateX(-50%);
-}
-
-.left-btn{  
-  width: 3.02rem;
-  height: 1.02rem;
-  line-height: 1.02rem;
-  text-align: center;
-  background: url(../../static/img/springFestivalActivity/report.png) no-repeat;
-  background-size: 100% 100%;
-  font-size: 0.34rem;
-  font-weight: 600;
-  color: #EE0B1A;
-  margin-left: 0.3rem;
-}
-
-.look-btn{
-  width: 1.8rem;
-  height: 1.02rem;
-  line-height: 1.02rem;
-  text-align: center;
-  background: url(../../static/img/springFestivalActivity/lookBg.png) no-repeat;
-  background-size: 100% 100%;
-  font-size: 0.34rem;
-  color: #FFF5BD;
-  margin-left: 0.3rem;
-}
-
-.times-text{
-  font-size: 0.24rem;
-  color: #FFE4BD;
-  margin-left: 1.6rem;
-  position: absolute;
-  bottom: 0.26rem;
-}
-
-.one-result{
-  margin-bottom: 1.2rem;
-}
-
-.distribution-dialog{
-  width: 6.22rem;
-  height: 2.8rem;
-  border-radius: 0.2rem;
-  position: absolute;
-  left: 50%;
-  top: -10.96rem;
-  transform: translateX(-50%);
-  background-color: #FFFFFF;
-}
-.limit-tip{
-  margin-top: 0.4rem;
-  text-align: center;
-  font-size: 0.32rem;
-  color: #333333;
-  padding-bottom: 0.5rem;
-  border-bottom: 0.01rem solid rgba(238,238,238,1);
-}
-
-.distribution-btn{
-  font-size: 0.32rem;
-  font-weight: 600;
-  color: #3B7FFF;
-  text-align: center;
-  margin-top: 0.24rem;
-}
-
-.operate-btn{
-  background: linear-gradient(180deg, #FFFBE0 0%, #FFF6C4 56%, #FFFBE0 100%);
-}
-
-.no-award{
-  /* height: 5.22rem; */
-  line-height: 4.62rem;
-  text-align: center;
-  font-size: 0.28rem;
-  color: #FFE4BD;
-}
-
-.no-start-dialog{
-  width: 1.94rem;
-  height: 2.44rem;
-  display: flex;
-  flex-direction: column;
-  justify-content: center;
-  align-items: center;
-  background: #FFFFFF;
-  border-radius: 50%;
-  padding: 0 0.26rem;
-  position: absolute;
-  left: 50%;
-  top: -10.86rem;
-  transform: translateX(-50%);
-  font-size: 0.3rem;
-  color: #666666;
-}
-
-#toast-container>.toast-error {
-  background-image: none !important;
-}
-
-.toast-error {
-  background-color: rgba(0, 0, 0, 0.8);
-}
-
-#toast-container>div {
-  font-size: 14px;
-  min-width: 80px !important;
-  padding: 12px !important;
-  box-shadow: none;
-}
-
-.toast-center-center {
-  position: fixed;
-  min-width: 220px;
-  top: 50%;
-  left: 50%;
-  text-align: center;
-  transform: translateX(-50%);
-  color: #FFFFFF;
-  border-radius: 0.1rem;
-}
-
-@media (max-width: 480px) and (min-width: 241px) {
-  #toast-container>div {
-    min-width: 80px !important;
-    width: auto;
-  }
-}

BIN
microserviceUserH5/static/img/doubleChristmasActivity/bg.png


BIN
microserviceUserH5/static/img/doubleChristmasActivity/buyphone2.png


BIN
microserviceUserH5/static/img/doubleChristmasActivity/distribution-reward-btn.png


BIN
microserviceUserH5/static/img/doubleChristmasActivity/finish-btn.png


BIN
microserviceUserH5/static/img/doubleChristmasActivity/footer-cloud.png


BIN
microserviceUserH5/static/img/doubleChristmasActivity/get-btn.png


BIN
microserviceUserH5/static/img/doubleChristmasActivity/home_list_icon_xingyao.png


BIN
microserviceUserH5/static/img/doubleChristmasActivity/hongbao.png


BIN
microserviceUserH5/static/img/doubleChristmasActivity/middle-cloud.png


BIN
microserviceUserH5/static/img/doubleChristmasActivity/reward-tip-img.png


BIN
microserviceUserH5/static/img/doubleChristmasActivity/reward.png


BIN
microserviceUserH5/static/img/doubleChristmasActivity/rule.png


BIN
microserviceUserH5/static/img/doubleChristmasActivity/tab-bg.png


BIN
microserviceUserH5/static/img/doubleChristmasActivity/three-reward.png


BIN
microserviceUserH5/static/img/doubleChristmasActivity/time-title-bg.png


BIN
microserviceUserH5/static/img/doubleChristmasActivity/tip.png


BIN
microserviceUserH5/static/img/doubleChristmasActivity/top-banner.png


BIN
microserviceUserH5/static/img/springFestivalActivity/award.png


BIN
microserviceUserH5/static/img/springFestivalActivity/awardBg.png


BIN
microserviceUserH5/static/img/springFestivalActivity/awardResultBg.png


+ 0 - 0
microserviceUserH5/static/img/springFestivalActivity/awardResultCard.png


Some files were not shown because too many files changed in this diff