Fotoğrafı çekip harici depolama biriminde sakladım. Tablet bilgisayarımda bir sd kart ile iyi çalışıyor.Ancak, telefonumda sd kart desteği olmayan bir sorunla karşılaşıyorum.Kendimde saklamak için kod yazmama yardımcı olan herkes var dahili depolama. Teşekkürler!Dahili Depolamada yakalanan resmi kaydetme?
((Button) findViewById(R.id.btnTaken))
.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
takeImage();
}
});
protected void takeImage() {
Log.i(TAG,"onClick event");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd_HH-mm-ss");
String currentDateandTime = sdf.format(new Date());
String fileName = Environment.getExternalStorageDirectory().getAbsolutePath() +
"/Image_" + currentDateandTime + ".jpg";
mCamera.takePicture(fileName);
Toast.makeText(this, fileName + " saved", Toast.LENGTH_SHORT).show();
}
public void takePicture(final String fileName) {
Log.i(TAG, "Tacking picture");
PictureCallback callback = new PictureCallback() {
private String mPictureFileName = fileName;
@Override
public void onPictureTaken(byte[] data, Camera camera) {
Log.i(TAG, "Saving a bitmap to file");
Bitmap picture = BitmapFactory.decodeByteArray(data, 0, data.length);
try {
FileOutputStream out = new FileOutputStream(mPictureFileName);
picture.compress(Bitmap.CompressFormat.JPEG, 90, out);
picture.recycle();
mCamera.startPreview();
} catch (Exception e) {
e.printStackTrace();
}
}
};
Camera.ShutterCallback shutter = new Camera.ShutterCallback() {
public void onShutter() {
Log.e(getClass().getSimpleName(), "SHUTTER CALLBACK");
}
};
Camera.PictureCallback raw = new Camera.PictureCallback() {
public void onPictureTaken(byte[] data, Camera c) {
Log.e(getClass().getSimpleName(), "PICTURE CALLBACK RAW: " + data);
mCamera.startPreview();
}
};
mCamera.takePicture(shutter, raw, callback) ;
}
dosyasını Android Manifest.xml içine dahili depolama izni eklemek gerekir tions/15662258/nasıl yapılır-kaydetme-a-bitmap-on-iç depolama –
@ user2205173 Bu http://connectcoders.blogspot.com/ adresine bir bakın. –