IM中图片消息处理(二)

本文介绍了在IM应用中处理图片消息的详细步骤,包括生成图片key、创建图片Message、压缩图片以节省内存和流量,以及将图片保存、缓存到本地,并最终发送。重点讨论了图片压缩的策略,防止内存溢出并确保用户体验。

从本节开始进行图片的发送,对于图片发送,主要涉及到如下几个大的步骤:

1.生成图片key,这里包括大图和小图(image_key,small_image_key);

2.生成图片Message,包含图片的所有信息

3.生成图片,这里主要进行了图片的压缩操作(image,small_image);

4.生成图片路径(image_path,small_image_path);

5. 将图片保存到本地缓存目录;

6.将图片放入内存缓存中;

7.将步骤2中生成的message插入到数据库中;

8.刷新显示列表,让message处于发送状态;

9.执行发送动作;

之后我会对上面的9个步骤逐一实现,给出具体的实现方法。


[1]生成图片key很简单,这里是通过时间戳来实现(关键字+时间戳)

String image_key = "image_"  + Calendar.getInstance().getTimeInMillis();

String small_image_key = "small_" + image_key;

这样就生成饿大图和小图的key.


[2]生成图片message就是一般的创建对象方法

PushMessage message = new PushMessage(image_key,small_image_key);

当然PushMessage还有许多别的参数,这里主要设置了message的大图和小图。


[3]生成图片,即生成压缩之后的图片

压缩图片的目的:避免占用过多内存;发送原图,如果原图太大,浪费流量。

图片在控件上是以Bitmap的形式显示的,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值