I'm new to Android programming and I was writing some test code to retrieve all the sms messages in the inbox using an sms intent. The code I wrote is as follows:
Uri uri = Uri.parse("content://sms/inbox");
Cursor c = getContentResolver().query(uri, new String[]{"address","person","date","body"}, null, null, null);
c.moveToFirst();
if(c.getCount() > 0){
while(!c.isLast()){
System.out.println(c.getString(c.getColumnIndex("date")));
c.moveToNext();
}
}
Is this the right way? I see that the value for the date column is retrieved as something like "1326781012725". I want to convert this into a readable format like YYYY-MM-DD.How can I do this?
Note that I'm using API version 10 and hence the api - cursor.getType() (that returns the data type of the column) is not available.
Thanks.
"1326781012725" is a timestamp. timestamp conversion can be made like this;
ReplyDeletefinal Calendar cal = Calendar.getInstance();
cal.setTimeInMillis(System.currentTimeMillis());
Date date = cal.getTime();
mHour = date.getHours();
mMinute = date.getMinutes();