2010-06-08 55 views
0

我指的示例是:CameraPreview無法運行Android「Camera Preview」示例

該程序只需啓動即關閉。我也嘗試了其他相機演示,有相同的問題。

我想在我的Nexus One和模擬器上運行相同的問題樣品。我甚至不確定模擬器是否應該能夠運行它們。

基於logcat中,錯誤的是:

06-08 16:39:10.483: ERROR/AndroidRuntime(6726): Uncaught handler: thread main exiting due to uncaught exception 
06-08 16:39:10.494: ERROR/AndroidRuntime(6726): java.lang.RuntimeException: Fail to connect to camera service 
06-08 16:39:10.494: ERROR/AndroidRuntime(6726):  at android.hardware.Camera.native_setup(Native Method) 
06-08 16:39:10.494: ERROR/AndroidRuntime(6726):  at android.hardware.Camera.<init>(Camera.java:110) 
06-08 16:39:10.494: ERROR/AndroidRuntime(6726):  at android.hardware.Camera.open(Camera.java:90) 
06-08 16:39:10.494: ERROR/AndroidRuntime(6726):  at com.example.android.apis.graphics.Preview.surfaceCreated(CameraPreview.java:69) 
06-08 16:39:10.494: ERROR/AndroidRuntime(6726):  at android.view.SurfaceView.updateWindow(SurfaceView.java:454) 
06-08 16:39:10.494: ERROR/AndroidRuntime(6726):  at android.view.SurfaceView.dispatchDraw(SurfaceView.java:287) 
06-08 16:39:10.494: ERROR/AndroidRuntime(6726):  at android.view.ViewGroup.drawChild(ViewGroup.java:1529) 
06-08 16:39:10.494: ERROR/AndroidRuntime(6726):  at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1258) 
06-08 16:39:10.494: ERROR/AndroidRuntime(6726):  at android.view.View.draw(View.java:6557) 
06-08 16:39:10.494: ERROR/AndroidRuntime(6726):  at android.widget.FrameLayout.draw(FrameLayout.java:352) 
06-08 16:39:10.494: ERROR/AndroidRuntime(6726):  at android.view.ViewGroup.drawChild(ViewGroup.java:1531) 
06-08 16:39:10.494: ERROR/AndroidRuntime(6726):  at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1258) 
06-08 16:39:10.494: ERROR/AndroidRuntime(6726):  at android.view.View.draw(View.java:6557) 
06-08 16:39:10.494: ERROR/AndroidRuntime(6726):  at android.widget.FrameLayout.draw(FrameLayout.java:352) 
06-08 16:39:10.494: ERROR/AndroidRuntime(6726):  at com.android.internal.policy.impl.PhoneWindow$DecorView.draw(PhoneWindow.java:1830) 
06-08 16:39:10.494: ERROR/AndroidRuntime(6726):  at android.view.ViewRoot.draw(ViewRoot.java:1349) 
06-08 16:39:10.494: ERROR/AndroidRuntime(6726):  at android.view.ViewRoot.performTraversals(ViewRoot.java:1114) 
06-08 16:39:10.494: ERROR/AndroidRuntime(6726):  at android.view.ViewRoot.handleMessage(ViewRoot.java:1633) 
06-08 16:39:10.494: ERROR/AndroidRuntime(6726):  at android.os.Handler.dispatchMessage(Handler.java:99) 
06-08 16:39:10.494: ERROR/AndroidRuntime(6726):  at android.os.Looper.loop(Looper.java:123) 
06-08 16:39:10.494: ERROR/AndroidRuntime(6726):  at android.app.ActivityThread.main(ActivityThread.java:4363) 
06-08 16:39:10.494: ERROR/AndroidRuntime(6726):  at java.lang.reflect.Method.invokeNative(Native Method) 
06-08 16:39:10.494: ERROR/AndroidRuntime(6726):  at java.lang.reflect.Method.invoke(Method.java:521) 
06-08 16:39:10.494: ERROR/AndroidRuntime(6726):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860) 
06-08 16:39:10.494: ERROR/AndroidRuntime(6726):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618) 
06-08 16:39:10.494: ERROR/AndroidRuntime(6726):  at dalvik.system.NativeStart.main(Native Method) 

我所做的嘗試樣品是創建一個新的Android 2.1update1項目,根據提供的Java文件命名的一切,從複製Java文件CameraPreview.java文件的URL,然後運行它。我應該做其他事嗎?

任何幫助,將不勝感激。提前致謝。

回答

1

以下添加到您的清單,作爲<manifest>元素的子元素:

<uses-feature android:name="android.hardware.camera" /> 
<uses-permission android:name="android.permission.CAMERA" /> 
+0

謝謝,固定它。但是,此示例仍然無法處理該更改:http://groups.google.com/group/android-developers/msg/6e1f453ac051f6bd?pli=1 這是預期的嗎?非常感謝。 – noisesolo 2010-06-08 21:30:31

+0

@noisesolo:你鏈接的樣本是16個月大,缺少佈局,清單等東西。 – CommonsWare 2010-06-08 21:49:04

+0

非常感謝!我其實還有一個問題; CameraPreview究竟是什麼使預覽反轉? – noisesolo 2010-06-10 14:37:40