Browse Source

更新版本到 1.4.3

ChangeLog
1. 修复切换音频时报错的问题
2. 新增设备可用性检测方法
kevin.song 6 years ago
parent
commit
2e792a6af3
3 changed files with 55 additions and 3 deletions
  1. 52 0
      README.md
  2. 2 2
      lib/index.js
  3. 1 1
      package.json

+ 52 - 0
README.md

@@ -66,6 +66,7 @@ Client 类包含以下方法:
 * [snapshot 方法 - 截屏](#client-snapshot)
 * [startPreviewing 方法 - 开启预览](#client-startpreviewing)
 * [stopPreviewing 方法 - 停止预览](#client-stoppreviewing)
+* [deviceDetection 方法 - 设备可用性检测](#client-devicedetection)
 
 <a name="client-constructor"></a>
 
@@ -1267,6 +1268,57 @@ Err 为错误信息
 client.stopPreviewing();
 ```
 
+<a name="client-devicedetection"></a>
+
+### 44. deviceDetection 方法
+
+发布本地流或启动预览时,有可能因为麦克风或摄像头设备问题(如驱动问题,或未经授权等),导致无法正常发布或预览。此方法可用于发布或预览前的设备检测,根据检测结果,再自行决定在发布或预览时启用麦克风或摄像头或麦克风和摄像头,示例代码:
+
+```
+client.deviceDetection(DeviceDetectionOptions, callback);
+```
+
+#### 参数说明
+
+- DeviceDetectionOptions: object 类型, 必传,详细的类型说明如下
+
+```
+{
+  audio: boolean          // 必填,指定是否检测麦克风设备
+  video: boolean          // 必填,指定是否检测摄像头设备
+  microphoneId?: string   // 选填,指定需要检测的麦克风设备的ID,可通过 getMicrophones 方法查询获得该ID,不填时,将检测默认的麦克风设备
+  cameraId?: string       // 选填,指定需要检测的摄像头设备的ID,可以通过 getCameras 方法查询获得该ID,不填时,将检测默认的摄像头设备
+}
+```
+
+- callback: function 类型,必传,方法的回调函数,函数说明如下
+
+```
+function callback(Result) {
+  if (Result.audio && Result.video) {
+    // 麦克风和摄像头都可有和,发布或预览时可启用麦克风和摄像头
+    // client.publish({audio: true, video: true});
+  } else if (Result.audio) {
+    // 麦克风可用,发布或预览时能启用麦克风
+    // client.publish({audio: true, video: false});
+  } else if (Result.video) {
+    // 摄像头可用,发布或预览时能启用摄像头
+    // client.publish({audio: false, video: true});
+  } else {
+    // 麦克风和摄像头都不可用
+  }
+}
+```
+
+Result 为返回值,object 类型,详细的类型说明如下
+
+```
+{
+  audio: boolean, // 指麦克风设备是否可用
+  video: boolean  // 指摄像头设备是否可用
+}
+```
+
 ----
 
 <a name='getdevices'></a>

File diff suppressed because it is too large
+ 2 - 2
lib/index.js


+ 1 - 1
package.json

@@ -1,6 +1,6 @@
 {
   "name": "urtc-sdk",
-  "version": "1.4.2",
+  "version": "1.4.3",
   "description": "UCloud RTC javascript SDK",
   "main": "lib/index.js",
   "repository": {