【问题标题】:Camera of any emulator not working任何模拟器的相机都不工作
【发布时间】:2014-01-10 00:37:28
【问题描述】:

朋友

很久以来我一直面临这个问题,但我能够获得任何解决方案来让模拟器中的相机正常工作。我已经完成了 SO 的所有答案,但到目前为止都没有帮助我。

如果我使用任何 api 创建任何模拟器,但在我的模拟器相机应用程序中没有一个不起作用。所以我无法测试任何包含相机功能的应用程序。我想可能是因为我的系统的硬件配置而发生的。但我不确定。

我不知道为什么会出现这个问题。请帮我解决并找出问题的原因。

这是我在模拟器中启动相机时遇到的错误。

12-21 00:04:58.100: E/CameraService(55): CameraService::connect X (pid 2604) rejected (invalid cameraId 0).
12-21 00:04:58.110: W/CameraBase(2604): An error occurred while connecting to camera: 0
12-21 00:04:58.110: E/CameraHolder(2604): fail to connect Camera
12-21 00:04:58.110: E/CameraHolder(2604): java.lang.RuntimeException: Fail to connect to camera service
12-21 00:04:58.110: E/CameraHolder(2604):   at android.hardware.Camera.native_setup(Native Method)
12-21 00:04:58.110: E/CameraHolder(2604):   at android.hardware.Camera.<init>(Camera.java:350)
12-21 00:04:58.110: E/CameraHolder(2604):   at android.hardware.Camera.open(Camera.java:309)
12-21 00:04:58.110: E/CameraHolder(2604):   at com.android.camera.CameraHolder.open(CameraHolder.java:131)
12-21 00:04:58.110: E/CameraHolder(2604):   at com.android.camera.Util.openCamera(Util.java:267)
12-21 00:04:58.110: E/CameraHolder(2604):   at com.android.camera.Camera$4.run(Camera.java:1100)
12-21 00:04:58.110: E/CameraHolder(2604):   at java.lang.Thread.run(Thread.java:841)
12-21 00:04:58.110: W/dalvikvm(2604): threadid=11: thread exiting with uncaught exception (group=0xb4a29b90)
12-21 00:04:58.120: E/AndroidRuntime(2604): FATAL EXCEPTION: Thread-117
12-21 00:04:58.120: E/AndroidRuntime(2604): Process: com.android.camera, PID: 2604
12-21 00:04:58.120: E/AndroidRuntime(2604): java.lang.RuntimeException: openCamera failed
12-21 00:04:58.120: E/AndroidRuntime(2604):     at com.android.camera.Util.openCamera(Util.java:272)
12-21 00:04:58.120: E/AndroidRuntime(2604):     at com.android.camera.Camera$4.run(Camera.java:1100)
12-21 00:04:58.120: E/AndroidRuntime(2604):     at java.lang.Thread.run(Thread.java:841)
12-21 00:04:58.120: E/AndroidRuntime(2604): Caused by: com.android.camera.CameraHardwareException: java.lang.RuntimeException: Fail to connect to camera service
12-21 00:04:58.120: E/AndroidRuntime(2604):     at com.android.camera.CameraHolder.open(CameraHolder.java:135)
12-21 00:04:58.120: E/AndroidRuntime(2604):     at com.android.camera.Util.openCamera(Util.java:267)
12-21 00:04:58.120: E/AndroidRuntime(2604):     ... 2 more
12-21 00:04:58.120: E/AndroidRuntime(2604): Caused by: java.lang.RuntimeException: Fail to connect to camera service
12-21 00:04:58.120: E/AndroidRuntime(2604):     at android.hardware.Camera.native_setup(Native Method)
12-21 00:04:58.120: E/AndroidRuntime(2604):     at android.hardware.Camera.<init>(Camera.java:350)
12-21 00:04:58.120: E/AndroidRuntime(2604):     at android.hardware.Camera.open(Camera.java:309)
12-21 00:04:58.120: E/AndroidRuntime(2604):     at com.android.camera.CameraHolder.open(CameraHolder.java:131)
12-21 00:04:58.120: E/AndroidRuntime(2604):     ... 3 more

以下是我在尝试编辑模拟器时得到的选项。

谢谢。

【问题讨论】:

  • 你不能在模拟器中使用相机......
  • @Tamanna 谁说你不能在模拟器中使用相机?
  • 你试过this吗?
  • @GrIsHu 你是在使用自定义摄像头还是打开默认摄像头??
  • 不要简单地尝试仅在模拟器中使用意图打开相机。 @CapDroid

标签: android android-camera android-camera-intent


【解决方案1】:

我已通过将模拟器"Back Camera" 属性更改为 Emulated 解决了我的问题,如屏幕截图所示。

【讨论】:

    【解决方案2】:

    打开工具->Android->AVD 管理器,然后单击虚拟设备的编辑。单击虚拟设备配置窗口上的显示高级设置。然后打开相机设置字段,选择模拟正面和背面。就是这样。

    【讨论】:

      【解决方案3】:

      doc没有关于Camera限制Emulator的声明。

      您可以Enable camera in Emulator。但是无论如何,模拟器都不会显示实时摄像头。

      截至Android SDK version 14,模拟器支持网络摄像头模拟摄像头:

      一般说明 - 为 Android 4.0 或更高版本的平台添加了网络摄像头支持 当存在一个网络摄像头时模拟后置摄像头,并 当有两个网络摄像头时,模拟后置和前置摄像头 展示。网络摄像头支持仅适用于 Windows 和 Linux。 Mac 支持将 稍后发布。

      【讨论】:

      • 在模拟器中使用相机没有限制,我知道它总是可以工作,而且我过去也用过。
      • 你的回答对我没用。
      • 感谢您的帮助。我已经解决了我的问题。你可以看看我的回答。
      【解决方案4】:

      我在 ubuntu 16.04 中使用 Android Studio 3.1.1 并且遇到了同样的问题。
      所以经过几天的谷歌搜索,终于自己解决了我的问题。 解决方案是:

      1. 编辑 AVD 并将 Emulated Performance/GraphicsAutomatic 设置为 Software - GLES 1.1
      2. SD 卡 大小更改为 256 MB
      3. 仅将一个摄像头(例如 Front)设置为 webcam0,将另一个设置为无或模拟。

      希望这可以帮助其他有同样问题的人。

      【讨论】:

        【解决方案5】:

        就这样做

        在正面和背面都使用模拟,然后更改 sdcard 大小

        【讨论】:

          【解决方案6】:

          来自安卓文档:

          模拟器限制

          不支持相机/视频捕捉 换句话说,不,您无法在模拟器中访问或预览相机。

          【讨论】:

          • 你的回答对我没用。
          • 感谢您的帮助。我已经解决了我的问题。你可以看看我的回答。
          猜你喜欢
          • 2017-07-24
          • 2018-04-08
          • 2020-02-29
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多