diff options
author | Zhang Fang <zfang@codeaurora.org> | 2014-03-10 22:36:32 +0800 |
---|---|---|
committer | cretin45 <cretin45@gmail.com> | 2014-09-03 13:57:16 -0700 |
commit | 8d0bddf20090cd59475e82ba4f91efadd2b1b257 (patch) | |
tree | 9ddd3b0fa335fa9f75043b5d8317ed9e7054cd3a | |
parent | d4b4ecf6e0f9a9de357be067d4a87fdcbfbde48d (diff) | |
download | android_packages_providers_TelephonyProvider-8d0bddf20090cd59475e82ba4f91efadd2b1b257.tar.gz android_packages_providers_TelephonyProvider-8d0bddf20090cd59475e82ba4f91efadd2b1b257.tar.bz2 android_packages_providers_TelephonyProvider-8d0bddf20090cd59475e82ba4f91efadd2b1b257.zip |
MMS: Fix display SIM card message incorrect.
Get the SIM card message type always the same, and it difficult to detect
sending or receiving messages in SIM card manage page.
Set the correct message type, let it can detect sending or receiving message.
Change-Id: I7397171b614c7fc593ba8159f2c1248c7e805841
CRs-Fixed: 625994
-rw-r--r-- | src/com/android/providers/telephony/SmsProvider.java | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/src/com/android/providers/telephony/SmsProvider.java b/src/com/android/providers/telephony/SmsProvider.java index f21a5f9..83d7cda 100644 --- a/src/com/android/providers/telephony/SmsProvider.java +++ b/src/com/android/providers/telephony/SmsProvider.java @@ -255,17 +255,31 @@ public class SmsProvider extends ContentProvider { private Object[] convertIccToSms(SmsMessage message, int id) { // N.B.: These calls must appear in the same order as the // columns appear in ICC_COLUMNS. + int statusOnIcc = message.getStatusOnIcc(); + int type = Sms.MESSAGE_TYPE_ALL; + switch (statusOnIcc) { + case SmsManager.STATUS_ON_ICC_READ: + case SmsManager.STATUS_ON_ICC_UNREAD: + type = Sms.MESSAGE_TYPE_INBOX; + break; + case SmsManager.STATUS_ON_ICC_SENT: + type = Sms.MESSAGE_TYPE_SENT; + break; + case SmsManager.STATUS_ON_ICC_UNSENT: + type = Sms.MESSAGE_TYPE_OUTBOX; + break; + } Object[] row = new Object[13]; row[0] = message.getServiceCenterAddress(); row[1] = message.getDisplayOriginatingAddress(); row[2] = String.valueOf(message.getMessageClass()); row[3] = message.getDisplayMessageBody(); row[4] = message.getTimestampMillis(); - row[5] = message.getStatusOnIcc(); + row[5] = statusOnIcc; row[6] = message.getIndexOnIcc(); row[7] = message.isStatusReportMessage(); row[8] = "sms"; - row[9] = TextBasedSmsColumns.MESSAGE_TYPE_ALL; + row[9] = type; row[10] = 0; // locked row[11] = 0; // error_code row[12] = id; |