diff --git a/H5_E2E/src/config/global.js b/H5_E2E/src/config/global.js index a761bd55e54c516b2542d9694c2b2274a420e3bf..703600ac83d922a75d97c8a65e3af6cff33563ba 100644 --- a/H5_E2E/src/config/global.js +++ b/H5_E2E/src/config/global.js @@ -1,4 +1,4 @@ export default { __IS_DEBUG__: false, - SDK_VERSION: "23.12.3.1", + SDK_VERSION: "24.3.1", }; diff --git a/H5_E2E/src/static/AppController.js b/H5_E2E/src/static/AppController.js index d100a9025e318b7503ef9219424b42df64768686..6a569c2e9e881b6a6eae7177e343716e1e5b2f7f 100644 --- a/H5_E2E/src/static/AppController.js +++ b/H5_E2E/src/static/AppController.js @@ -928,6 +928,9 @@ class AppController { if (params) { let kvs = Object.keys(params).map(key => { let value = params[key]; + if (key === 'ticket') { + return [key, value].join('=') + } if (typeof value === 'object') { value = Object.keys(value) .map(subKey => @@ -1077,6 +1080,7 @@ class AppController { this.startParams = { ticket: this.options.ticket, session_id: this.sessionId, + client_mode: "management", auth_ts: this.options.authTimeStamp, verify_data: verify, encrypted_data: cipherText, @@ -1175,7 +1179,7 @@ class AppController { this.player.style.setProperty('height', '100%', 'important'); // 硬解时video标签会按比例填充视频,避免视频被裁减设置contain显示完整画面 - this.player.style.setProperty('object-fit', 'contain', 'important'); + this.player.style.setProperty('object-fit', 'fill', 'important'); } else { // 解决画布居中问题 this.player.style.setProperty('margin', '0 auto', 'important'); diff --git a/H5_E2E/src/static/AppScreenPrint.js b/H5_E2E/src/static/AppScreenPrint.js index 1a5b1b20ad4233c6ecbea0b98fd11a4b5c2dbf89..76270223eff3214c1f093fbf74f437207278747b 100644 --- a/H5_E2E/src/static/AppScreenPrint.js +++ b/H5_E2E/src/static/AppScreenPrint.js @@ -624,6 +624,7 @@ class AppController { this.startParams = { ticket: this.options.ticket, session_id: this.sessionId, + client_mode: "management", auth_ts: this.options.authTimeStamp, verify_data: verify, encrypted_data: cipherText, diff --git a/H5_E2E/src/views/SinglePhoneView.vue b/H5_E2E/src/views/SinglePhoneView.vue index f730987d40c1f0bcacd5ab5ddbe7a7463f63df5a..c33dbc88b41a6254952ea59daeee7446ba5e6e45 100644 --- a/H5_E2E/src/views/SinglePhoneView.vue +++ b/H5_E2E/src/views/SinglePhoneView.vue @@ -132,7 +132,7 @@ export default { ...cloudPhoneParams, channelType: channelType, ticket: '256random'.padStart(256, '0'), - auth_ts: 'test_auth_ts', // 时间戳 timestamp + auth_ts: new Date().getTime(), // 时间戳 timestamp aes_key: '', _debug: true, auto_rotate: true, diff --git a/README.md b/README.md index e1c3a9ccbf93d4a14ba852bd6e6dbaf051535c76..ce94b09c372eb1bab1ea8f1c32372ebde7211a6f 100644 --- a/README.md +++ b/README.md @@ -126,7 +126,7 @@ Chrome restricts the usage of WebCryptographyApi to secure origins. It means 'ht | user_id | 否 | String | 用户id | | auto_rotate | 否 | Boolean | 是否根据真机方向和应用方向自适应旋转画面 | | keepRatio | 否 | Boolean | 是否始终保持CLOUD_PHONE_RATIO中设置的宽高比 | - | media_config | 否 | Object | 可配置虚拟分辨率宽高(stream_width、stream_height)和 真机物理宽高(physical_width、physical_height) | + | media_config | 否 | Object | 详见 4.9 设置音视频参数(方法) | - 调用示例 diff --git a/sdk/demo/demo.html b/sdk/demo/demo.html index b48675cbfac5391c05c0baed807b4d6d115a7b17..98eac1dd6a27da0323a6b1c3899b0a73da8bb378 100644 --- a/sdk/demo/demo.html +++ b/sdk/demo/demo.html @@ -542,7 +542,7 @@ Copyright 2022 Huawei Cloud Computing Technology Co., Ltd. background_timeout: '60', available_playtime: '6000', touch_timeout: 600, - connect_uri: _HTTP_MODE_ ? 'ws://' : 'wss://' + [cloudIp, cloudPort].join(':') + connect_uri: (_HTTP_MODE_ ? 'ws://' : 'wss://') + [cloudIp, cloudPort].join(':') }; } else if (phoneInfo) { // 调度系统 @@ -556,7 +556,7 @@ Copyright 2022 Huawei Cloud Computing Technology Co., Ltd. background_timeout: phoneInfo['background_timeout'], available_playtime: phoneInfo['available_playTime'], touch_timeout: phoneInfo['touch_timeout'], - connect_uri: _HTTP_MODE_ ? 'ws://' : 'wss://' + [cloudIp, cloudPort].join(':'), + connect_uri: (_HTTP_MODE_ ? 'ws://' : 'wss://') + [cloudIp, cloudPort].join(':'), }; } else { let localHref = window.location.href; @@ -574,7 +574,7 @@ Copyright 2022 Huawei Cloud Computing Technology Co., Ltd. channelType: channelType, ticket: '256random'.padStart(256, '0'), aes_key: '11111111111111111111111111111111', - auth_ts: 'test_auth_ts', + auth_ts: new Date().getTime(), _debug: true, auto_rotate: true, libPath: commonLibPath, // 配置库文件地址 diff --git a/sdk/package.json b/sdk/package.json index 8fb5c86ca3c532bf80413774ff57617574aff00e..8b8e61109cd67e4ce33e6568b64e47ec1563858f 100644 --- a/sdk/package.json +++ b/sdk/package.json @@ -1,6 +1,6 @@ { "name": "CloudAppSdk_H5", - "version": "23.12.3.1", + "version": "24.3.1", "description": "cas h5 sdk", "main": ".eslintrc.js", "scripts": { diff --git a/sdk/src/AppController.js b/sdk/src/AppController.js index bc960f6faffe1b8de7abeaaf52a48d2858a8ac86..c2e67f68695400c0a6c0ce0727014d2fe4681268 100644 --- a/sdk/src/AppController.js +++ b/sdk/src/AppController.js @@ -853,6 +853,9 @@ class AppController { if (params) { let kvs = Object.keys(params).map(key => { let value = params[key]; + if (key === 'ticket') { + return [key, value].join('=') + } if (typeof value === 'object') { value = Object.keys(value).map(subKey => [subKey, encodeURIComponent(value[subKey])].join('=')).join(':'); return [key, value].join('='); @@ -983,6 +986,7 @@ class AppController { initParams(cipherText, verify, iv) { this.startParams = { + client_mode: "management", ticket: this.options.ticket, session_id: this.sessionId, auth_ts: this.options.authTimeStamp, diff --git a/sdk/src/AppScreenPrint.js b/sdk/src/AppScreenPrint.js index a65eaff1adbaac4ce1580bc87b81849227bf596f..88406eeef4fb386f91524901ff716034f3d10658 100644 --- a/sdk/src/AppScreenPrint.js +++ b/sdk/src/AppScreenPrint.js @@ -619,6 +619,7 @@ class AppController { initParams(cipherText, verify, iv) { this.startParams = { + client_mode: "management", ticket: this.options.ticket, session_id: this.sessionId, auth_ts: this.options.authTimeStamp, diff --git a/sdk/src/CameraPlayer.js b/sdk/src/CameraPlayer.js index 9478a6f5c7ef627af7b8f60d82870d39eb441791..30fff7c5e6107b657f46908e22cab9c43179e4da 100644 --- a/sdk/src/CameraPlayer.js +++ b/sdk/src/CameraPlayer.js @@ -57,6 +57,13 @@ export default class CameraPlayer { } } + if (this.videoStream) { + this.videoStream.stop(); + } + navigator.mediaDevices.getUserMedia({ video: videoOptions }) + .then((stream) => { + stream.getVideoTracks().forEach(track => track.stop()); + }) navigator.mediaDevices.getUserMedia({ video: videoOptions }) .then((stream) => { // 视频轨道 diff --git a/sdk/src/MicrophonePlayer.js b/sdk/src/MicrophonePlayer.js index d0f5a6b62c99c2adbe7d22b95a65a9f25501571f..d264ae9a46c5526c7a95697c7598c9c259921955 100644 --- a/sdk/src/MicrophonePlayer.js +++ b/sdk/src/MicrophonePlayer.js @@ -53,6 +53,13 @@ export default class MicrophonePlayer { } } + if (this.audioStream) { + this.audioStream.stop(); + } + navigator.mediaDevices.getUserMedia({ audio: audioOptions }) + .then((stream) => { + stream.getAudioTracks().forEach(track => track.stop()); + }) navigator.mediaDevices.getUserMedia({ audio: audioOptions }) .then((stream) => { // 音频轨道