Android 短信数据库详细总结分析

编程入门 行业动态 更新时间:2024-10-22 15:23:52

Android <a href=https://www.elefans.com/category/jswz/34/1769965.html style=短信数据库详细总结分析"/>

Android 短信数据库详细总结分析

Android 短信数据库详细总结分析 短信 sms  文件 /data/data/com.android.providers.telephony/databases/mmssms.db 
这个数据库有13张表,sms表存了短信信息。 

sms表的uri是         public static final Uri CONTENT_URI =   Uri.parse("content://sms");  表项含义,我猜的 
strColumnName=_id strColumnValue=48 //短消息序号 
strColumnName=thread_id strColumnValue=16 //对话的序号(conversation)
strColumnName=address strColumnValue=+8613411884805 //发件人地址,手机号
strColumnName=person strColumnValue=null //发件人,返回一个数字就是联系人列表里的序号,陌生人为null
strColumnName=date strColumnValue=1256539465022 //日期 long型,想得到具体日期自己转换吧!
strColumnName=protocol strColumnValue=0 //协议
strColumnName=read strColumnValue=1 //是否阅读
strColumnName=status strColumnValue=-1 //状态
strColumnName=type strColumnValue=1 //类型 1是接收到的,2是发出的
strColumnName=reply_path_present strColumnValue=0 //
strColumnName=subject strColumnValue=null //主题
strColumnName=body strColumnValue=您好 //短消息内容
strColumnName=service_center strColumnValue=+8613800755500 //短信服务中心号码编号,可以得知该短信是从哪里发过来的

把源码补上。 
在frameworks/base/core/java/android/provider/Telephony.java 
/**  * The thread ID of the message  * <P>Type: INTEGER</P>  */   public static final String THREAD_ID = "thread_id";   /**  * The address of the other party  * <P>Type: TEXT</P>  */   public static final String ADDRESS = "address";   /**  * The person ID of the sender  * <P>Type: INTEGER (long)</P>  */   public static final String PERSON_ID = "person";   /** * The date the message was sent * <P>Type: INTEGER (long)</P>  */   public static final String DATE = "date";   /** * The protocol identifier code * <P>Type: INTEGER</P>  */   public static final String PROTOCOL = "protocol"; /** * Has the message been read * <P>Type: INTEGER (boolean)</P>  */   public static final String READ = "read";   /** * The TP-Status value for the message, or -1 if no status has * been received  */   public static final String STATUS = "status";   us 举例:   public static final int STATUS_NONE = -1;   public static final int STATUS_COMPLETE = 0;   public static final int STATUS_PENDING = 64;   public static final int STATUS_FAILED = 128;   /** * The type of the message * <P>Type: INTEGER</P>  */   public static final String TYPE = "type";   举例   public static final int MESSAGE_TYPE_ALL    = 0;   public static final int MESSAGE_TYPE_INBOX  = 1;   public static final int MESSAGE_TYPE_SENT   = 2;   public static final int MESSAGE_TYPE_DRAFT  = 3;   public static final int MESSAGE_TYPE_OUTBOX = 4;   public static final int MESSAGE_TYPE_FAILED = 5; // for failed outgoing messages   public static final int MESSAGE_TYPE_QUEUED = 6; // for messages to send later   /** * Whether the <code>TP-Reply-Path</code> bit was set on this message * <P>Type: BOOLEAN</P>  */   public static final String REPLY_PATH_PRESENT = "reply_path_present";   /** * The subject of the message, if present * <P>Type: TEXT</P>  */   public static final String SUBJECT = "subject";   /** * The body of the message * <P>Type: TEXT</P>  */   public static final String BODY = "body";   /** * The service center (SC) through which to send the message, if present * <P>Type: TEXT</P>  */   public static final String SERVICE_CENTER = "service_center";   转载自 .html  

更多推荐

Android 短信数据库详细总结分析

本文发布于:2023-06-27 19:25:26,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/915890.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:短信   数据库   详细   Android

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!