在我的项目中,我需要访问在给定时间后收到的短信。例如,它可以获取我在1538633990932之后收到的所有短信。这次以毫秒为单位。我做的项目使所有消息都在收件箱中。但是我需要访问在特定时间之后收到的短信。
List<String> sms = new ArrayList<String>();
Uri uriSMSURI = Uri.parse("content://sms/inbox");
Cursor cur = c.getContentResolver().query(uriSMSURI, null, null, null, null);
while (cur != null && cur.moveToNext()) {
String address = cur.getString(cur.getColumnIndex("address"));
String body = cur.getString(cur.getColumnIndexOrThrow("body"));
}
if (cur != null) {
cur.close();
}
我认为我需要在查询中声明时间。
答案 0 :(得分:1)
您必须在过滤器中传递纪元值。
String filter = "date>=" + 1538633990932;
Cursor cur = c.getContentResolver().query(uriSMSURI, null, filter, null, null);
来自this帖子。