Galaxy tab 10.1在使用OnPictureTaken(...)时自动调用Camera.release()而不应该这样做

时间:2011-08-02 16:22:51

标签: android android-3.0-honeycomb android-camera galaxy-tab

下一个代码适用于android 2.3及更低版本,我不明白为什么HoneyComb不起作用。用户界面有3个按钮:btnTakePic,btnDiscard,btnSave:

    if(v.getId()==btnTakePic.getId()){
        Log.v("Camarita", "BtnTake inicia");
        if(cameraPreview){
        callback = new PictureCallback() {  
            @Override           
            public void onPictureTaken(byte[] data, Camera camera) {

                dataTemp=new byte[data.length];
                System.arraycopy(data,0,dataTemp , 0, data.length);                         
            }
        };          
            mCamera.takePicture(null, null, callback);
            callback=null;
            cameraPreview=false;            
        }else{              
            //NOTHING
        }
    }

btnDiscard清理数组dataTemp并调用Camera.startPreview()。 btnSave从dataTemp保存图像并清理dataTemp。然后调用Camera.startPreview()。

1 个答案:

答案 0 :(得分:0)

最后我可以解决这个问题,当按下btnTakePic时手动添加Camera.stopPreview()。

问候