【问题标题】:take picture automatic , without user interaction in android [closed]自动拍照,无需在android中进行用户交互[关闭]
【发布时间】:2016-01-08 16:05:48
【问题描述】:

我正在寻找一种无需用户交互即可在 android 中自动拍照的方法,我可以打开并拍照但无法自动拍照?

public void capturePhoto() {
        Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
        intent.putExtra(android.provider.MediaStore.EXTRA_OUTPUT, Uri.fromFile(new File(G.DIR_APP + "/tmp")));
        startActivityForResult(intent, TAKE_PICTURE);
    }

【问题讨论】:

标签: android image


【解决方案1】:

你可以使用这样的方法

private Camera.PictureCallback mPictureCallback = new Camera.PictureCallback() {
    @Override
    public void onPictureTaken(final byte[] bytes,final Camera camera) {

        // Do something here ... save, display ...
    }
};
public void takePictureBack(ControllerState state){

    Camera camera = null;
    int cameraCount = Camera.getNumberOfCameras();
    for (int cameraId = 0; cameraId < cameraCount; cameraId++) {
        Camera.CameraInfo cameraInfo = new Camera.CameraInfo();
        if (cameraInfo.facing == Camera.CameraInfo.CAMERA_FACING_BACK) {
                camera = Camera.open(cameraId);
                break;
            }
        }




    if (camera!= null) {


        Camera.Parameters params = camera.getParameters();

        // Check what resolutions are supported by your camera
        List<Camera.Size> sizes = params.getSupportedPictureSizes();


        // Iterate through all available resolutions and choose one.    
        for (Camera.Size size : sizes) {
            ... 
        }




        params.setPictureSize( ... );
        camera.setParameters(params);

        camera.setPreviewDisplay(mCameraSourcePreview.getSurfaceView().getHolder());
        camera.startPreview();      
        camera.takePicture(null,null,mPictureCallback)

    }
}

但是要小心,因为当用户不知道正在拍摄照片时,Android 不允许这种行为。您用于预览的 SurfaceView 需要具有可见性visible

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-04-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-17
    • 1970-01-01
    相关资源
    最近更新 更多