Android 中短信数据库的简单操作

Android APK操作短信数据时,不能使用SQLHelper直接操作,需要使用协议,协议使用Uri转义

content://sms/inbox 收件箱
content://sms/sent 已发送
content://sms/draft 草稿
content://sms/outbox 发件中
content://sms/failed 失败
content://sms/queued 待发送

数据库中sms相关的字段如下:

_id primary key integer 与words表内的source_id关联
thread_id 会话id,一个联系人的会话一个id,与threads表内的_id关联 integer
**address ** 对方号码 text
person 联系人id integer
date 发件日期 integer
protocol 通信协议,判断是短信还是彩信 integer 0:SMS_RPOTO, 1:MMS_PROTO
read 是否阅读 integer default 0

  •                                                                                                 0:未读, 
    
  •                                                                                                 1:已读
    

status 状态 integer default -1

  •                                                                                                  -1:接收,
    
  •                                                                                                    0:complete,
    
  •                                                                                                  64: pending,
    
  •                                                                                                128: failed ****
    

**type **短信类型 integer 1:inbox

  •                                                                                                   2:sent
    
  •                                                                                                   3:draft
    
  •                                                                                                   4:outbox
    
  •                                                                                                   5:failed
    
  •                                                                                                   6:queued
    

body 内容
service_center 服务中心号码
subject 主题
**reply_path_present **
**locked****
error_code
seen

// 系统字段
public final static String SYS_ID = "_id";// //短消息序号
public final static String SYS_THREAD_ID = "thread_id";// 对话的序号(conversation)
public final static String SYS_ADDRESS = "address";// 发件人地址,手机号
public final static String SYS_PERSON = "person";// 发件人,返回一个数字就是联系人列表里的序号,陌生人为null
public final static String SYS_DATE = "date"; // 日期 long型
public final static String SYS_PROTOCOL = "protocol"; // 协议
public final static String SYS_READ = "read"; // 是否阅读
public final static String SYS_STAUS = "status"; // 状态
public final static String SYS_TYPE = "type"; // 类型 1是**到的,2是发出的
public final static String SYS_REPLY_PATH_PRESENT = "reply_path_present"; //
public final static String SYS_SUBJECT = "subject"; // 主题
public final static String SYS_BODY = "body"; // 内容
public final static String SYS_SERVICE_CENTER = "service_center"; // 短信服务中心号码编号,可以得知该短信

你可能感兴趣的:(Android 中短信数据库的简单操作)