我正在使用 android 内置摄像头拍照,然后将同一张照片附加到电子邮件中,当我在 1.6 设备中测试此功能时,我可以为内置摄像头拍摄的照片命名,但在 2.1 中,图片是有一个名称,即由设备给出,
如何在 2.1 内置相机图像中赋予用户定义的名称..
为了避免这个问题,我手动保存图像,但是当我尝试通过意图将图像作为位图取回,然后使用压缩方法将其保存到 sd 卡时
此方法处理来自内置相机的结果
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
File file = new File(Environment.getExternalStorageDirectory()
+ "/test.png");
switch (requestCode)
{
case PHOTO_ACTION:
if (resultCode == RESULT_CANCELED)
{
addPhoto = false;
Toast.makeText(this, "Canceled ", Toast.LENGTH_LONG).show();
break;
} else if (resultCode == RESULT_OK)
{
Bundle b = data.getExtras();
Bitmap bm = (Bitmap) b.get("data");
FileOutputStream out;
try
{
out = new FileOutputStream(file);
bm.compress(Bitmap.CompressFormat.JPEG, 100, out);
out.flush();
out.close();
scanPhoto(file.toString());
out = null;
addPhoto = true;
} catch (Exception e)
{
e.printStackTrace();
addPhoto = false;
}
但是当我像这样存储时,我得到了两个图像。一个带有系统给定名称,另一个带有我给定的名称。但是用户定义的图像分辨率较低,所以我的问题是如何在不压缩的情况下以更高的分辨率保存位图..请帮助....我