Android:使用彩信发送本地图像

时间:2010-12-07 01:59:19

标签: android

我有一组jpg存储在我的应用程序的drawable文件夹中。我希望能够让用户按下一个按钮,允许他们发送其中一个jpg。我已经发现我可以使用ACTION_SEND意图,但是我在附加到意图的drawable文件夹中获取jpg时遇到了麻烦。我已经阅读了一些其他的论坛帖子,听起来像是要把我的jpg保存到用户的外部SD卡然后在那里参考它。如何将jpg从应用程序的drawable文件夹复制到用户的外部SD卡上?

1 个答案:

答案 0 :(得分:0)

要将图像从资源复制到SD卡上图片目录中的图像文件,您可以使用以下方法:

Bitmap resourceImage = BitmapFactory.decodeResource(this.getResources(), R.drawable.resource_image1);       
File externalStorageFile = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES), "resource_image1.jpg");
ByteArrayOutputStream bytes = new ByteArrayOutputStream(); 
resourceImage.compress(Bitmap.CompressFormat.JPEG, 100, bytes);
byte b[] = bytes.toByteArray(); 

try 
{
    externalStorageFile.createNewFile(); 
    OutputStream filoutputStream = new FileOutputStream(externalStorageFile); 
    filoutputStream.write(b); 
    filoutputStream.flush(); 
    filoutputStream.close();
}
catch (IOException e)
{
}

然后,您可以在ACTION_SEND意图中将其指定为图像附件。