Wednesday, July 24, 2013

Android: save camera image to file-folder

In menifest
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

In activity class
 public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.triage_form);
     
        this.imageView = (ImageView)this.findViewById(R.id.imageView1);
        Button photoButton = (Button) this.findViewById(R.id.button1);
        photoButton.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
            //File file = new File(Environment.getExternalStorageDirectory() + "/photousman.jpg");
                //Uri outputFileUri = Uri.fromFile(file);
           
                Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
               // cameraIntent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri);
                startActivityForResult(cameraIntent, CAMERA_REQUEST);
            }
        });
    }



protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    String filename = myfilename.png;
    File sd = new File(Environment.getExternalStorageDirectory()+ "/triage");
    boolean success = true;
    if (!sd.exists()) {
       success = sd.mkdir();
    }
    File dest = new File(sd, filename);
        if (requestCode == CAMERA_REQUEST && resultCode == RESULT_OK) {
            Bitmap photo = (Bitmap) data.getExtras().get("data");
            imageView.setImageBitmap(photo);
           
            try {
                FileOutputStream out = new FileOutputStream(dest);
                photo.compress(Bitmap.CompressFormat.PNG, 90, out);
                out.flush();
                out.close();
           } catch (Exception e) {
                e.printStackTrace();
           }
           
        }
    } 

No comments:

Post a Comment