android - 无按钮爆破相机

标签 android

我创建了一个连拍相机,我希望当 Activity 开始时,相机会自动开始拍照而无需按任何按钮。

它说:不幸的是,当我尝试输入时,FrontVerify 已停止:

preview.camera.takePicture(shutterCallback, rawCallback, jpegCallback);

在 onCreate 方法上。

问题是:我想创建一系列模拟按钮的照片。当用户将手指放在相机附近并且它保持全黑时,我的算法告诉我 BLACK = TRUE,所以继续下一个 Activity 。因此我不需要任何物理或数字按钮,我可以使用相机来解决这个问题。

所以到目前为止,我让它工作的唯一方法是使用 onClick 方法和 我真的很想摆脱这里的 onClick 方法:

public void onClick(View v) {
                    preview.camera.takePicture(shutterCallback, rawCallback,
                            jpegCallback);
                    buttonClick.setEnabled(false);
            }

连拍相机的算法是这样的:

PictureCallback jpegCallback = new PictureCallback() {
        public void onPictureTaken(byte[] data, Camera camera) {
            FileOutputStream outStream = null;
            try {
                // write to local sandbox file system
                // outStream =
                // CameraDemo.this.openFileOutput(String.format("%d.jpg",
                // System.currentTimeMillis()), 0);
                // Or write to sdcard
                outStream = new FileOutputStream(String.format(
                        "/sdcard/eyeverify/still%d.jpg",
                        System.currentTimeMillis()));
                outStream.write(data);
                outStream.close();
                Log.d(TAG, "onPictureTaken - wrote bytes: " + data.length);
            } catch (FileNotFoundException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            } finally {
            }
            Log.d(TAG, "onPictureTaken - jpeg");
            try {
                stillCount++;
                camera.startPreview();
                if (stillCount < 10) {
                    preview.camera.takePicture(shutterCallback, rawCallback,
                            jpegCallback);
                } else {
                    stillCount = 0;
                    buttonClick.setEnabled(true);
                }
            } catch (Exception e) {
                Log.d(TAG, "Error starting preview: " + e.toString());
            }
        }
    };

}

所以我想不通,如何启动应用程序和相机开始自动连拍。

最佳答案

只是:

new Handler().postDelayed(new Runnable(){
  public void run(){
    yourBtn.performClick();
  }
}, 1000).

关于android - 无按钮爆破相机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33629906/

相关文章:

java - 安卓解密错误

android - 是否可以在开源项目中使用Google的API?

android - 如何将第三个按钮添加到 Android 警报对话框?

机器人 : facebook login using facebook sdk 3 with no facebook app installed

android - 我们如何像在 onCreate() 中那样在 onOptionItemSelected 之外使用菜单项

Android安装过程及Application目录

java - 单击后退时 Android 应用程序未正确关闭

java - fragment 设计 : Adapting to multiple screen layouts by showing/hiding fragments within a single Activity?

android - 如何在 django 中从 android 接收图像文件?

java - 使用动态字符串工作函数?