Browse Source

支持WEBRTC选择摄像头

felix 1 year ago
parent
commit
51efb47653
1 changed files with 4 additions and 19 deletions
  1. 4 19
      Vinno.vCloud.FIS.CrossPlatform.Android/Hardware/HardwareDetector.cs

+ 4 - 19
Vinno.vCloud.FIS.CrossPlatform.Android/Hardware/HardwareDetector.cs

@@ -3,7 +3,6 @@ using Android.Content;
 using Android.Hardware.Camera2;
 using Android.Media;
 using Android.OS;
-using Java.Lang;
 using System;
 using System.Collections.Generic;
 using Vinno.FIS.TRTCClient.Common.Enum;
@@ -188,22 +187,8 @@ namespace Vinno.vCloud.FIS.CrossPlatform.Android.Hardware
                     {
                         foreach (var cameraId in _cameraManager.GetCameraIdList())
                         {
-                            var characteristics = _cameraManager.GetCameraCharacteristics(cameraId);
-                            var facing = characteristics.Get(CameraCharacteristics.LensFacing);
                             //默认打开前置摄像头
-                            if (facing != null && facing == Integer.ValueOf((int)LensFacing.Back))
-                            {
-                                hardwareList.Add(new HardwareInfo(EnumHardwareType.Camera, cameraId, new List<string>(), "Back Camera", new List<CameraCaptureCapability>(), 0, false));
-                            }
-                            else if (facing != null && facing == Integer.ValueOf((int)LensFacing.Front))
-                            {
-                                hardwareList.Add(new HardwareInfo(EnumHardwareType.Camera, cameraId, new List<string>(), "Front Camera", new List<CameraCaptureCapability>(), 0, false));
-                            }
-                            else if (facing != null && facing == Integer.ValueOf((int)LensFacing.External))
-                            {
-                                externalNumber++;
-                                hardwareList.Add(new HardwareInfo(EnumHardwareType.Camera, cameraId, new List<string>(), "External Camera" + externalNumber, new List<CameraCaptureCapability>(), 0, false));
-                            }
+                            hardwareList.Add(new HardwareInfo(EnumHardwareType.Camera, cameraId, new List<string>(), "Camera_" + cameraId, new List<CameraCaptureCapability>(), 0, false));
                         }
                     }
                     catch (Exception ex)
@@ -215,7 +200,7 @@ namespace Vinno.vCloud.FIS.CrossPlatform.Android.Hardware
                 case EnumHardwareType.Mic:
                     try
                     {
-                        hardwareList.Add(new HardwareInfo(EnumHardwareType.Mic, "", new List<string>(), "Microphone", new List<CameraCaptureCapability>(), 0, _audioManager.MicrophoneMute));
+                        hardwareList.Add(new HardwareInfo(EnumHardwareType.Mic, "0", new List<string>(), "Microphone_0", new List<CameraCaptureCapability>(), 0, _audioManager.MicrophoneMute));
                     }
                     catch (Exception ex)
                     {
@@ -226,11 +211,11 @@ namespace Vinno.vCloud.FIS.CrossPlatform.Android.Hardware
                 case EnumHardwareType.Speaker:
                     try
                     {
-                        hardwareList.Add(new HardwareInfo(EnumHardwareType.Speaker, "", new List<string>(), "Speaker", new List<CameraCaptureCapability>(), 0, _audioManager.IsStreamMute(Stream.Music)));
+                        hardwareList.Add(new HardwareInfo(EnumHardwareType.Speaker, "0", new List<string>(), "Speaker_0", new List<CameraCaptureCapability>(), 0, _audioManager.IsStreamMute(Stream.Music)));
                     }
                     catch (Exception ex)
                     {
-                        CrossPlatformHelper.Instance.LogWriter?.WriteLineError($"Get mic hardwares error {ex}");
+                        CrossPlatformHelper.Instance.LogWriter?.WriteLineError($"Get speaker hardwares error {ex}");
                     }
                     break;
             }