Я пытаюсь захватить изображение, а затем сохранить его в SDCard. Но камера работает, но изображение не сохраняется на месте и даже не создает папку. Пожалуйста, проверьте приведенный ниже код, чтобы камера захватила изображение, а затем сохранила его.Захват изображения с камеры и сохранение на SD-карте
public class TakePicture extends Activity {
int TAKE_PHOTO_CODE = 0;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_take_picture);
//here,we are making a folder named picFolder to store pics taken by the camera using this application
final String dir = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES) + "/picFolder/";
File newdir = new File(dir);
newdir.mkdirs();
Button capture = (Button) findViewById(R.id.btnCapture);
capture.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// here,counter will be incremented each time,and the picture taken by camera will be stored as 1.jpg,2.jpg and likewise.
String file = System.currentTimeMillis() + ".jpg";
File newfile = new File(file);
try {
newfile.createNewFile();
} catch (IOException e) {}
Uri outputFileUri = Uri.fromFile(newfile);
Intent cameraIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
cameraIntent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri);
startActivityForResult(cameraIntent, TAKE_PHOTO_CODE);
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == TAKE_PHOTO_CODE && resultCode == RESULT_OK) {
Log.d("CameraDemo", "Pic saved");
Log.d("data-----",data.toString());
}else{
Log.d("CameraDemo", "Pics Not Saved ");
}
}
}
Вы указали Разрешения на доступ к Sd Card, я имею в виду запись на внешнюю память ..? –
google it ... так много доступных ответов – Richa
@SoftwareSainath я сделал в файле манифеста, у меня есть addes –