为什么android模拟器相机意外停止?

我正在使用Android 2.2(API等级8)。 相机在清单中启用。 当我尝试模拟器模型提供的相机图标时,它会运行几秒钟,显示一个灰色的方块在黑白棋盘上移动,然后随着错误信息消失:

抱歉! 应用程序Camera(process com.android.camera)意外停止。 请再试一次。

当然,再试一次也没有帮助。 我正在使用提供的模拟器相机来比较我正在处理的相机应用程序的行为。 为什么android模拟器相机意外停止?

模拟器相机最好是片状的。

要获得更多详细信息,请从主机命令行运行“ platform-tools / adb logcat ”。 基本问题似乎是相机认为有多个客户端连接。 相机也将旋转设置为横向,但是在崩溃之后无法将其设置回:

I/ActivityManager( 70): Starting: Intent { act=android.media.action.IMAGE_CAPTURE cmp=com.android.camera/.Camera } from pid 875 I/ActivityManager( 70): Start proc com.android.camera for activity com.android.camera/.Camera: pid=888 uid=10031 gids={1006, 1015} I/WindowManager( 70): Setting rotation to 1, animFlags=1 I/ActivityManager( 70): Config changed: { scale=1.0 imsi=310/260 loc=en_US touch=3 keys=2/1/2 nav=3/1 orien=2 layout=34 uiMode=17 seq=22} V/CameraHolder( 888): open camera 0 W/CameraService( 34): CameraService::connect X (pid 888) rejected (existing client). E/CameraHolder( 888): fail to connect Camera E/CameraHolder( 888): java.lang.RuntimeException: Fail to connect to camera service E/CameraHolder( 888): at android.hardware.Camera.native_setup(Native Method) E/CameraHolder( 888): at android.hardware.Camera.<init>(Camera.java:258) E/CameraHolder( 888): at android.hardware.Camera.open(Camera.java:220) E/CameraHolder( 888): at com.android.camera.CameraHolder.open(CameraHolder.java:124) E/CameraHolder( 888): at com.android.camera.Camera.ensureCameraDevice(Camera.java:1608) E/CameraHolder( 888): at com.android.camera.Camera.startPreview(Camera.java:1660) E/CameraHolder( 888): at com.android.camera.Camera.access$5500(Camera.java:95) E/CameraHolder( 888): at com.android.camera.Camera$3.run(Camera.java:908) E/CameraHolder( 888): at java.lang.Thread.run(Thread.java:1019) W/dalvikvm( 888): threadid=11: thread exiting with uncaught exception (group=0x40015560) E/AndroidRuntime( 888): FATAL EXCEPTION: Thread-12 

另见问题“ 4799183 ”

我会想象,因为模拟器没有一个真正的摄像头,硬件是由您所说的方格模拟。 因为没有真正的硬件驱动程序,所以很可能会尝试检查function,或者设置因模拟硬件不支持而无法完成的function。 你最好打赌它debugging相机或编译它自己,并添加一些debugging输出,以确定究竟是怎么回事。

它在2.1和更早版本中工作吗?

在DDMS的angular度来看,我可以看到这里显示的exception:

模拟器的相机内置的应用程序在Froyo / 2.2的马车?

虽然我还没有尝试在文章中build议的代码更改。

这可能只是模拟器相机是片状:)

我已经意识到,模拟器上的相机模拟在API级别4(Android 1.6)及以下稳定,没有崩溃。