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";  
转载自 http://hi.baidu.com/tclc2009/blog/item/63ab71ecca46ab382cf53409.html  

Android 短信数据库详细总结分析相关推荐

  1. Android短信数据库简析

    如果想跳过数据库介绍,直接看数据库操作代码的话,请点击这里: 读取Android短信 -------------– Android短信数据库: 读取Android系统所有短信 读取Android短信会 ...

  2. android 短信数据库在哪个文件夹,安卓手机的短信备份后存到了哪个文件夹下

    打开备份短信的方法: 1.通过电脑找回手机短信内容的最基本思路,即将保存手机短信容的数据库文件传输到电信上,用相关手机信看工具进找回,对此需要借助第三方ROOt工获取手机ROOT权限. 2.并非所有手 ...

  3. 一枚Android 短信小偷 病毒的分析

    一.样本简介 样本来自于吾爱破解论坛链接地址为http://www.52pojie.cn/thread-410238-1-1.html,样本不是很复杂有空就分析了一下.Android病毒样本还是很有意 ...

  4. android 短信数据库 双卡,关于android双卡手机sim卡信息采集适配的心得

    这几天通过对各个厂商的双卡信息适配的研究,总结了几点规律,写这篇心得主要是为了能够抛砖引玉,和大家一起分享,一起讨论,源码已上传. 一.android5.0以上(包含5.0)的版本双卡信息适配: 1. ...

  5. android短信数据库类型,安卓短信收发 mmssms.db数据库和查询简介

    Android 手机信息存放在mmssms.db数据库,位于data/data/com.android.providers.telephony/databases下. 短讯息主要用到sms表和thre ...

  6. Android 短信数据库重要table字段解释

    短信数据存储在 /data/user_de/0/com.android.providers.telephony/databases/mmssms.db(7.0及8.0) 短信的主要涉及表格有两个pdu ...

  7. Android短信数据库相关

    系统的短信库存在data/data/com.android.providers.telephony/databases/mmssms.db 打开mmssms.db 再打开sms表 因为所有短信数据都储 ...

  8. Android短信操作(通过内容提供者)

    2019独角兽企业重金招聘Python工程师标准>>> 1.Android短信数据库表结构 URI主要有: content://sms/               所有短信 con ...

  9. Android 监听短信数据库过滤获取短信内容上传至服务器

    前言 Android 监听短信的方式有两种 1.监听短信数据库,数据库发生改变时回调. 2.监听短信广播 其中第二种方式由于国内各厂家的定制Android 可能导致无响应 目前测试 魅族 无法监听到短 ...

最新文章

  1. ifcfg系列命令配置网络属性
  2. Flex学习笔记(零)
  3. ubuntu mysql汉字写入只写入了一个字符
  4. iphone备忘录突然没了_苹果突然下架12 天猫:双11有惊喜!iPhone12 mini配色缩水
  5. (Activiti6.0.0)SpringProcessEngineConfiguration配置bean时属性注入不了,问题已经找到
  6. ORACLE 锁表处理,解锁释放session
  7. 什么原因使飞将军李广到死未能封侯
  8. [超详细] Apache网页优化:网页压缩与网页缓存超详细
  9. hive 的功能和架构
  10. 时频分析matlab实例,Matlab时频分析工具箱及仿真案例
  11. linux5.8启动mysql命令_linux的定时重启的具体命令? 非常感谢。。。
  12. 结合P2P软件使用Ansible分发大文件
  13. 老婆也是程序员,双码农家庭真的快乐吗?
  14. 【Laravel】Laravel使用总结(一)
  15. 电脑休眠、睡眠、待机的区别
  16. 教你如何查看linux版本
  17. dir file list.file list.dirs
  18. CVE-2020–9854漏洞攻击链分析
  19. 【华人学者风采】林学民 新南威尔士大学
  20. 称重模块的制作的安全守护

热门文章

  1. Linux boot 时 USB 的初始化过程分析2
  2. 如何用研发效能搞垮一个团队
  3. Windows环境安装MySQL步骤
  4. DataX踩坑2 | 定时任务crontab不执行或报错:/bin/sh: java: command not found
  5. Win11系统怎么关闭hyper-v虚拟机?
  6. uni-app 对照设计稿还原不同屏幕像素适配(iPhone X)
  7. 【C++】引用以及关联函数(详解)
  8. 0005 前端 Html 04 AutoFileName 图片的显示 文字链接 图片链接 页面内链接 列表 加超链接的列表
  9. SOMv3.3.3二次开发中LUA脚本对机基础操作指南
  10. 给你一个杯子,你如何测试