相关疑难解决方法(0)

Android相机 - 有时当我拍照时,应用程序冻结,相机无法使用

我已经构建了一个应用程序,可以在您触摸预览时拍照.我可以拍很多照片,但有时当我触摸预览拍照时,没有快门声,整个应用都冻结了.此外,在那之后,如果我尝试启动内置相机应用程序,我收到一条消息,说明相机无法使用.

我不知道这种行为的原因,它是随机发生的,当它发生时我必须重新启动设备(三星Galaxy S)才能再次使用相机.

在DDM中,崩溃后我可以看到以下行:keyDispatchingTimedOut

以下是相关代码:CameraActivity类:

public class CameraActivity extends Activity {
  private static final String TAG = "CameraDemo";
  Preview preview;

  public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    preview = new Preview(this);
    ((FrameLayout) findViewById(R.id.preview)).addView(preview);
    ((FrameLayout) findViewById(R.id.preview)).setOnTouchListener(preview); 

    Log.d(TAG, "Camera Activity Created.");

  }
}
Run Code Online (Sandbox Code Playgroud)

预览课程:

    class Preview extends SurfaceView implements SurfaceHolder.Callback, OnTouchListener {
    private static final String TAG = "Preview";

    SurfaceHolder mHolder;
    public Camera camera;
    Context ctx;
    boolean previewing = false;

    Preview(Context context) {
        super(context);
        ctx = context;
        // Install a SurfaceHolder.Callback so …
Run Code Online (Sandbox Code Playgroud)

crash camera android android-camera

9
推荐指数
2
解决办法
8897
查看次数

使用Android相机拍照的问题

我有一个应用程序,我正在使用Android相机拍照.我已经建立了自己的Android相机.按下按钮拍摄照片.

像这样的东西:

  public void onClick(View arg0) {
  mCamera.takePicture(null, mPictureCallback, mPictureCallback);
  }


Camera.PictureCallback mPictureCallback = new Camera.PictureCallback() {
    public void onPictureTaken(byte[] imageData, Camera c) {

        if (imageData != null) {
            Intent mIntent = new Intent();


            Bundle b = new Bundle();
            b.putByteArray("imageData", imageData);
            Intent i = new Intent(mContext, ViewPhoto.class);
            i.putExtras(b);
            startActivity(i);

            setResult(FOTO_MODE, mIntent);
            finish();

        }
    }
};
Run Code Online (Sandbox Code Playgroud)

拍摄照片后,我使用intent并将字节发送到另一个活动.

最大的问题是,如果我通过按下按钮逐个拍摄几张照片,我的应用程序会在此行崩溃:

mCamera.takePicture(null, mPictureCallback, mPictureCallback);
Run Code Online (Sandbox Code Playgroud)

这就是我的logcat的样子:

java.lang.RuntimeException: takePicture failed
at android.hardware.Camera.native_takePicture(Native Method)
at android.hardware.Camera.takePicture(Camera.java:746)
at android.hardware.Camera.takePicture(Camera.java:710)
at com.Xperiaproject.TakePhoto.onClick(TakePhoto.java:216)
at android.view.View.performClick(View.java:2534)
at android.view.View$PerformClick.run(View.java:9210)
at android.os.Handler.handleCallback(Handler.java:587)
at …
Run Code Online (Sandbox Code Playgroud)

android android-camera

3
推荐指数
1
解决办法
9536
查看次数

标签 统计

android ×2

android-camera ×2

camera ×1

crash ×1