【发布时间】:2013-08-09 06:19:30
【问题描述】:
我看到一个错误:当相机处于预览模式,并且用户按下开/关时,相机预览会停止并且不会启动。
一个明显的建议是看看其他人做了什么;我咨询过 https://github.com/commonsguy/cw-advandroid/tree/master/Camera/Preview/ 我看到这个演示有同样的错误(Android 4.0.3)。
指向 java 源的直接链接: https://github.com/commonsguy/cw-advandroid/blob/master/Camera/Preview/src/com/commonsware/android/camera/PreviewDemo.java
问题:如何修复错误?即使在设备开/关后,预览模式也必须正常工作。
UPD:如果我首先更改为另一个 Activity 并在该 Activity 上按 On/Off,则该错误不会显示。
UPD2:开/关后,startPreview() 被调用,但我看到来自系统的消息:
D/@@ (13428): startPreview() cameraConfigured=true camera=android.hardware.Camera@412f66f0
E/CamHw ( 2135): preview window is NULL!
这意味着系统深处确实发生了一些不好的事情(尽管消息可能是特定于设备的)。
UDP3:开/关后,调用来自surfaceCallback的no方法。也许这会有所作为。
UPD4:[未完全在此相机演示中看到]如果您切换到不同的应用程序(通过长按 HOME 并从列表中选择)然后切换回来,相机会再次工作。
【问题讨论】:
-
您可以通过阅读the repository's
README得知,该存储库已停止使用。从那以后我开始维护the CWAC-Camera library,这似乎可以很好地处理这种情况。 -
好吧,最好的 Android 书籍之一的代码已停产,这是一个坏消息。无论如何,你究竟做了什么来处理这个?库很大,我非常感谢指向文件和函数的指针。
-
“好吧,最好的 Android 书籍之一的代码已停产,这是一个坏消息”——这本书的内容被折叠到 The Busy Coder's Guide to Android Development . “不管怎样,你到底做了什么来处理这件事?” - 难倒我了。与那本旧书样本相比,我收紧了很多东西。我不知道其中哪一项会影响您所看到的行为。对不起!
标签: android camera android-camera commonsware