Android群发短信草稿保存与发送机制
2011-08-04 15:23
232 查看
Android SDK中单条短信的目的地号码是存储在sms表中的addresses字段中的.
Draft中的短信也是如此,但是有所例外.
如果你保存一条多地址的群发短信草稿时,Android的Messaging程式会将此条短信草稿保存到sms表中,type=3,但是这条记录的address字段却是空的,非常诡异,也许是Messaging程式不容许address字段中出现“,”号,所以它将这条短信的多条地址分条保存到canonical_addresses表中。
比如这条短信是发送给“11111111111”,“2222222222”,“3333333333”,“44444444444”的一条草稿短信,那么Messaging程式将这条短信的4条地址分别存入canonical_addresses表中,假设形成了_id分别为1,2,3,4的4条canonical_addresses记录,那么这条短信对应的threads表中的recipient_ids字段为1
2 3 4(数字中间用空格隔开)。这样,一条多地址的短信就对应了1条threads记录和多条canonical_addresses记录。
那么已发送的或已接受的短信没有一条记录是以这样的形式存在的,所以在发送这条短信的时候,Messaging程式又对这种类型的短信加入了特殊的处理。
发送该短信的时候,首先threads和canonical_addresses表中的内容不变,删除sms中这条草稿短信的记录,并将这条短信分为内容相同但地址单一且各不相同的4条短信,这时,每条短信上的address字段有了数据,并且为上面4个地址中的某一个,而Messaging程式的UI显示上4条短信也还是在一个会话中的相同内容短信的重复4次的显示。
所以,从这里可以看出,Android机自带的Messaging程式是主要以threads表为中心进行动作的,也就是以会话模式作为短信聊天的运作方式,而不是传统的发件箱收件箱之类的方式(中国移动联合Borqs开发的Ophone操作系统内兼备了2种短信管理方式,当然,Ophone发送此类短信的方式也是有别于纯Android的,就不在此描述了)。
Draft中的短信也是如此,但是有所例外.
如果你保存一条多地址的群发短信草稿时,Android的Messaging程式会将此条短信草稿保存到sms表中,type=3,但是这条记录的address字段却是空的,非常诡异,也许是Messaging程式不容许address字段中出现“,”号,所以它将这条短信的多条地址分条保存到canonical_addresses表中。
比如这条短信是发送给“11111111111”,“2222222222”,“3333333333”,“44444444444”的一条草稿短信,那么Messaging程式将这条短信的4条地址分别存入canonical_addresses表中,假设形成了_id分别为1,2,3,4的4条canonical_addresses记录,那么这条短信对应的threads表中的recipient_ids字段为1
2 3 4(数字中间用空格隔开)。这样,一条多地址的短信就对应了1条threads记录和多条canonical_addresses记录。
那么已发送的或已接受的短信没有一条记录是以这样的形式存在的,所以在发送这条短信的时候,Messaging程式又对这种类型的短信加入了特殊的处理。
发送该短信的时候,首先threads和canonical_addresses表中的内容不变,删除sms中这条草稿短信的记录,并将这条短信分为内容相同但地址单一且各不相同的4条短信,这时,每条短信上的address字段有了数据,并且为上面4个地址中的某一个,而Messaging程式的UI显示上4条短信也还是在一个会话中的相同内容短信的重复4次的显示。
所以,从这里可以看出,Android机自带的Messaging程式是主要以threads表为中心进行动作的,也就是以会话模式作为短信聊天的运作方式,而不是传统的发件箱收件箱之类的方式(中国移动联合Borqs开发的Ophone操作系统内兼备了2种短信管理方式,当然,Ophone发送此类短信的方式也是有别于纯Android的,就不在此描述了)。
相关文章推荐
- Android中短信的收发机制 发送短信 接收短信 拦截短信 监听短信
- Android发送短信(短信发送以及群发和从电话本选择联系人)---短信管家2
- android发送短信的两种方式,发送长短信的两种方式,群发短信
- Android 获取SIM卡信息,以及短信的发送和群发
- 转:android实现发送短信并保存到数据库,同时可以获得发送报告和接收报告
- 高通android 7.0短信草稿保存流程
- android实现发送短信并保存到数据库,同时可以获得发送报告和接收报告
- Android-->发送短信页面实现(短信发送以及群发和从电话本中选择联系人)-----------》2
- android群发短信时判断短信是否发送成功
- Android基础教程之----SMS简单发送短信程序(两个模拟器之间的通信)!
- Android短信----发送流程---框架层(Frameworks)
- Android第二课:Android发送短信
- Android中发送和接收短信
- Android实例demo20之自定义短信发送、第三方下载框架
- Android软件开发之发送短信与系统短信库解析(三十)
- android判断短信是否发送成功[动态注册广播]
- Android发送短信
- Android 之 ACTION_CALL 拨打电话 与 发送短信
- Android发送长短信
- Android SMS(二)—— 读取短信保存到 SQLite