【发布时间】:2016-06-04 17:54:15
【问题描述】:
我正在制作一个可以让用户使用密码保护照片的应用。到目前为止,用户可以拍照并显示照片。但是,所有照片都会保存到相机胶卷中。如何将它们保存到应用程序而不是相机胶卷,以便它们可以是私有的,但仍然能够从它们的 uri 访问它们(我将保存到 SharedPreferences)?
int CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE = 0;
Uri imageUri;
public void takePic(View view){
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
imageUri = Uri.fromFile(new File(Environment.getExternalStorageDirectory(), "filename_" +
String.valueOf(System.currentTimeMillis()) + ".jpg"));
intent.putExtra("data", imageUri);
startActivityForResult(intent, CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE);
}
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode == RESULT_OK) {
if (requestCode == CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE) {
Bundle extras = data.getExtras();
Log.e("URI", imageUri.toString());
Bitmap bmp = (Bitmap) extras.get("data");
ImageView imageView = (ImageView) findViewById(R.id.imageView);
imageView.setImageBitmap(bmp);
}
else if (resultCode == RESULT_CANCELED) {
Toast.makeText(this, "Picture was not taken", Toast.LENGTH_SHORT);
}
}
}
【问题讨论】:
-
什么是相机胶卷?
-
当然要编辑你的帖子。
标签: java android internal-storage