将照片从相机保存到android内部存储

时间:2015-08-20 12:46:17

标签: android android-camera

我成功保存了Android相机中的图片 使用以下根路径

Environment.getExternalStorageDirectory()

context.getExternalFilesDir(null)

但我无法使用以下根路径保存

context.getFilesDir()

您知道是否可以将从Android摄像头拍摄的照片保存到以context.getFilesDir()为根文件夹的android内部存储中?

我使用以下代码启动相机:

    Intent takePictureIntent = new  
             Intent(MediaStore.ACTION_IMAGE_CAPTURE);
            takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(picFile));
            startActivityForResult(takePictureIntent, REQUEST_TAKE_PICTURE);

//and this code I used to get the camera output


 @Override
           public void onActivityResult(int requestCode, int resultCode,
            Intent data) {
        if ((requestCode == REQUEST_TAKE_PICTURE) && (resultCode ==
            Activity.RESULT_OK)
                ) {
            Toast.makeText(this, "Can get the image.",   
             Toast.LENGTH_LONG).show();

            //Bitmap photo = (Bitmap) data.getExtras().get("data");     

          //  System.out.println("photo "+photo.getWidth());
//          final ImageView imageView = (ImageView) findViewById(R.id.imageView1);            
//            imageView.setImageBitmap(photo);        
            } else if ((requestCode == REQUEST_TAKE_PICTURE) && (resultCode == Activity.RESULT_CANCELED)) {

                Toast.makeText(this, "Cannot get the image.", Toast.LENGTH_LONG).show();
            } 

        }

1 个答案:

答案 0 :(得分:1)

您无法使用getFilesDir(),因为您正在启动第三方相机应用以拍摄照片,并且无法写入您应用的内部存储空间。