正在获取数据= null onActivityResult()

时间:2019-05-29 15:05:59

标签: android android-intent

我正在尝试获取刚用Android Camera App拍摄的照片。 但似乎我没有正确发送Intent Extras。

为照片创建文件:


        //Crear el nombre del archivo de la foto y el directorio
        String marcaDeTiempo=new SimpleDateFormat("yyyyMMdd_HHmmss").format(new java.util.Date());
        String nombreArchivoFoto ="JPEG_"+marcaDeTiempo+"_";
        File storageDir = getExternalFilesDir(Environment.DIRECTORY_PICTURES);
        File image=File.createTempFile(
                nombreArchivoFoto,".jpg",storageDir
        );

        pathFotoActual =image.getAbsolutePath();
        return image;
    } 

使用相机的意图:


        Intent hacerFotoIntent=new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
        if(hacerFotoIntent.resolveActivity(getPackageManager())!=null){

            File archivoFoto=null;

            try{
                archivoFoto=crearArchivoImagen();
            }
            catch(IOException ex){
                ex.printStackTrace();
            }

            //Si no hubo errores al crear las imagenes:
            if (archivoFoto!=null){
                Uri photoURI= FileProvider.getUriForFile(this,
                        "com.consultor_OperativoAlmacen.fileprovider",
                        archivoFoto);

                **hacerFotoIntent.putExtra(MediaStore.EXTRA_OUTPUT,photoURI);**

                startActivityForResult(hacerFotoIntent,REQUEST_TAKE_PHOTO);
                finish();
            }

        }
    } 

和onActivityResult:

protected void onActivityResult(int requestCode, int resultCode, Intent data) 
    {
        super.onActivityResult(requestCode, resultCode, data);

        if (requestCode == REQUEST_TAKE_PHOTO && resultCode==RESULT_OK)
        {
            Bundle extras = data.getExtras();
            Bitmap imageBitmap = (Bitmap) extras.get("data");
            m_ImageButton1.setImageBitmap(imageBitmap);

        }

    }

感谢您的帮助。

0 个答案:

没有答案