短彩信限制功能实现

1、实现机制

在对新接收到的短彩信进行dispatch时,会判断storage是否available,这个是原生系统用来判断存储空间的。这个boolean值是在framework的smsStorageMonitor中进行设置的。当短彩信达到限制就发送广播,然后在smsStorageMonitor就会进行相应处理(设boolean值,调用RIL相关函数,通知modem)

2、发送时

进行条目判断,达到限制,给出toast提示,包括发送按钮,存草稿时。注意:彩信添加附件后,退出保存草稿与短信不是一个地方,需要另外添加判断。

3、接收时

由于上层删除的地方太分散,所以统一在provider中进行处理,在所有来短信插入以及删除短信的地方都进行统一判断,并发送相应广播action.

对于wap push消息,需要在pushReceiver中另外进行判断。

注意:当条目未达上限时,如果一次性发送多条短彩信,因为还未来得及通知modem,一下子这边就都收到了,这样就会短时间收到多条,超出限制,所以要在storeMessage中也添加判断。

当短彩信已达到5000条,此时如果把优先存储设置改为sim卡,仍然无法接收到信息。所以创建了一个sharepreference来保存存储位置,然后在provider里面去读取,只有存储位置是手机时才去发送接收信息已满的广播。注意在读取sharepreference中的值的时候要把参数设为MODE_MULTI_PROCESS.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值