请问,当给应用设置头像,使用相机拍照的时候,如何保存相片到自己应用的目录
以下的代码是当选中 通过 相机拍照的时候, 会启用该:
startActivityForResult(intentFromCapture,CAMERA_REQUEST_CODE);
但是 请问 如何把以下的代码 红色部分,修改为 把文件保存在自己安装的应用的目录下呢? 就像微信那样。
麻烦会的朋友帮忙回复下,谢啦
主要是参考http://blog.csdn.net/androidzhaoxiaogang/article/details/8646471 这个链接的,但是这个链接是使用sd卡存储的。
private void showDialog() {
new AlertDialog.Builder(getActivity())
.setTitle("设置头像")
.setItems(items, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
switch (which) {
case 0:
Intent intentFromGallery = new Intent();
intentFromGallery.setType("image/*"); // 设置文件类型
intentFromGallery
.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(intentFromGallery,
IMAGE_REQUEST_CODE);
break;
case 1:
Intent intentFromCapture = new Intent(
MediaStore.ACTION_IMAGE_CAPTURE);
// 判断存储卡是否可以用,可用进行存储
if (hasSdcard()) {
intentFromCapture.putExtra(
MediaStore.EXTRA_OUTPUT,
Uri.fromFile(new File(Environment
.getExternalStorageDirectory(),
IMAGE_FILE_NAME)));
}
startActivityForResult(intentFromCapture,
CAMERA_REQUEST_CODE);
break;
}
}
})
.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
}).show();
}
------解决思路----------------------
Environment.getExternalStorageDirectory()这个就路径,你把它改成你自己要的路径
------解决思路----------------------
什么叫 自己安装的应用的目录?
context.getExternalCacheDir(); 这个么?
大概会在 sdcard/android/data/应用包名/cache 下