Android如何处理照片

Android如何处理照片,android,photo,Android,Photo,我正在使用Intent开发一款基于android摄像头的应用程序。拍摄完一张照片后,我可以看到照片和两个按钮出现-“保存”和“取消”。我想做的不是等待用户选择这两个按钮中的一个,而是开始处理这张照片,然后根据处理结果执行进一步的操作 到目前为止,我一直在这样做: CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE = 100; protected void startCameraActivity() { Intent intent = new Intent(andr

我正在使用Intent开发一款基于android摄像头的应用程序。拍摄完一张照片后,我可以看到照片和两个按钮出现-“保存”和“取消”。我想做的不是等待用户选择这两个按钮中的一个,而是开始处理这张照片,然后根据处理结果执行进一步的操作

到目前为止,我一直在这样做:

CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE = 100;

protected void startCameraActivity()
{
    Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE );

    // the method below is my method for setting proper path for my image file
    fileUri = getOutputMediaFileUri(MEDIA_TYPE_IMAGE); // create a file to save the image

    intent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri); // set the image file name

    startActivityForResult( intent, CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE );
}
此方法在我启动应用程序时调用。所以我用摄像头启动我的应用程序。 然后我拍了一张照片。我可以选择“保存”或“取消”。当我选择一个时,将调用此方法:

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (requestCode == CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE) {
        if (resultCode == RESULT_OK) {
            // Image captured and saved to fileUri specified in the Intent

            onPhotoTaken();    // processing...

        } else if (resultCode == RESULT_CANCELED) {
            // User cancelled the image capture
        } else {
            // Image capture failed, advise user
        }
    }
}
在收到正确的结果代码后,我从文件中加载该图像,然后开始处理它

现在我的问题是:如果我能在调用onActivityResult方法之前得到那个图像?单击其中一个按钮后将调用该命令。


(我想像谷歌谷歌那样做——用户捕捉一张照片,然后马上处理)

你需要实现自己的拍照活动,这是一种类似的方式(包括页面末尾的源代码)


与使用简单的
Intent
相比,直接设置需要一些时间,但之后您可以直接访问所有摄像头功能,包括摄像头图像,甚至在它可用于呼叫活动之前。

尝试使用broadcoast接收器。