查找短信的数据库

public class SmsModel implements ISmsModel {
// 查找手机数据库,查找所有的会话信息

@Override
public List<Conversation> findAllConversations() {
MyApplication context = MyApplication.getApp();
ContentResolver r = context.getContentResolver();
Uri uri=Uri.parse("content://mms-sms/conversations/");
String[] columns={
"thread_id" , //0
"address" , //1
"body" , //2
"date" //3
};
Cursor c = r.query(uri, columns, null, null, "date  desc");
List<Conversation> cs = new ArrayList<Conversation>();
while(c.moveToNext()){
Conversation con = new Conversation();
con.setId(c.getInt(0));
con.setNumber(c.getString(1));
con.setBody(c.getString(2));
con.setDate(c.getLong(3));
cs.add(con);
}
c.close();
return cs;
//测试uri返回的字段都有哪些
// Cursor c = r.query(uri, null, null, null, null);
// c.moveToFirst(); //第一条
// for(int i=0; i<c.getColumnCount(); i++){
// Log.i("info", c.getColumnName(i) +"           "+c.getString(i));
// }
// c.close();
}
// 通过会话ID 查找所有的短息
@Override
public List<Sms> loadSmsByThreadId(int threadId) {
MyApplication context = MyApplication.getApp();
ContentResolver r = context.getContentResolver();
Uri uri = Uri.parse("content://sms/");
String[] columns={
"_id",   //0
"body", //1
"date", //2
"type" //3
};
Cursor c=r.query(uri, columns, "thread_id=?", new String[]{""+threadId}, "date  asc");
List<Sms> smss = new ArrayList<Sms>();
while(c.moveToNext()){
Sms s = new Sms(c.getInt(0), c.getString(1), c.getLong(2), c.getInt(3));
smss.add(s);
}
c.close();
return smss;
}

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值