How to save images from Camera in Android to specific folder?
71,053
add this code before calling camera activity,
Uri uriSavedImage=Uri.fromFile(new File("/sdcard/flashCropped.png"));
camera.putExtra(MediaStore.EXTRA_OUTPUT, uriSavedImage);
startActivityForResult(camera, 1);
Author by
Admin
Updated on February 19, 2020Comments
-
Admin about 4 years
Basically, what I want to do is allow the user to make their own
folder
and then go to anactivity
that contains abutton
to launch thecamera
.From there I want to be able to launch the
camera
and save thecamera
images into the newly created folder.I am having trouble with last part of saving the
camera
images into the newly created folder.Here is my
Code
:public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Button b = (Button) findViewById(R.id.button1); b.setOnClickListener(new OnClickListener() { EditText text = (EditText)findViewById(R.id.editText1); EditText text2 = (EditText)findViewById(R.id.editText2); @Override public void onClick(View v) { final String name = text.getText().toString(); final String placeName = text2.getText().toString(); String place = placeName.substring(0,3); String direct = name + place ; File folder = new File("/sdcard/CameraTest/" + direct + "/"); folder.mkdirs(); Intent myIntent = new Intent(CameraTestActivity.this, Press.class); myIntent.putExtra("key", "/sdcard/CameraTest/" + direct + "/"); startActivity(myIntent); } });
From here I transition into this activity:
public class Press extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.afterenter); final String direct = this.getIntent().getStringExtra("key"); // TODO Auto-generated method stub Button p = (Button) findViewById(R.id.button2); p.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Intent camera= new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); startActivityForResult(camera, 1); } }); Button np = (Button) findViewById(R.id.button3); np.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Intent next = new Intent(Press.this, CameraTestActivity.class); startActivity(next); } }); } }
Please tell me how to save the images from the
camera
into the newly created folder.I want the user to be able to take several pictures and then save these several pictures into that specific folder.
-
Andrew S almost 11 yearsWhat is "output" and why should that work? Should one not use a constant of some kind?
-
Teodor almost 11 yearsMediaStore.EXTRA_OUTPUT is the constant
-
Kuntal Basu over 10 yearsCAPTURE_IMAGE_ACTIVITY is nothing but a integer, you can use simple interger value of your choice say 99/7/67 anything. It is used to check for the request code. For example 1 activity can start many other activities but every request should have unique request code, which can be checked on returning of every activity inside onActivityResult in your main activity.Check request code to know which activity has returned.
-
stdout over 8 yearsNot working. There is definetely something wrong with EXTRA_OUTPUT.
-
SAYE about 6 yearsEdit your answer from Confusing problems . say
camera
isintent
variable in your code .