intent = new Intent(Intent.ACTION_SEND); // 启动分享发送的属性
// intent.setType("text/plain"); //分享发送的数据类型
intent.setType("image/*"); // 分享发送的数据类型
String imageUrl = "http://www.xxx.com/image/1.jpg"
String path = PublicUtil.getImagePath();
String name = "share.jpg";
try {
ImageUtil.WriteBitmapToSdCard(path, name, PublicVariable.allTopicImage.get(imageUrl).get()); //存入到图片到sd卡
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
File f = new File(path+name);
Uri u = Uri.fromFile(f);
intent.putExtra(Intent.EXTRA_STREAM, u);
intent.putExtra(Intent.EXTRA_SUBJECT, "分享"); // 分享的主题
intent.putExtra(Intent.EXTRA_TEXT, "我在"+list.get(index).getRstName()+getString(R.string.share_pic)); // 分享的内容
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);// 这个也许是分享列表的背景吧
startActivity(Intent.createChooser(intent, "分享"));// 目标应用选择对话框的标题
public static HashMap<String, SoftReference<Bitmap>> allTopicImage = new HashMap<String, SoftReference<Bitmap>>();
public static String getImagePath() {
return Environment.getExternalStorageDirectory().getPath()
+ "/.test/images/";
}
public static void WriteBitmapToSdCard(String path, String fileName,
Bitmap bitmap) throws IOException {
// TODO Auto-generated method stub
File dirFile = new File(path);
if (!dirFile.exists()) {
dirFile.mkdir();
}
File myCaptureFile = new File(path + fileName);
BufferedOutputStream bos = new BufferedOutputStream(
new FileOutputStream(myCaptureFile));
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, bos);
bos.flush();
bos.close();
}