summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZhang Fang <zfang@codeaurora.org>2014-03-10 22:36:32 +0800
committercretin45 <cretin45@gmail.com>2014-09-03 13:57:16 -0700
commit8d0bddf20090cd59475e82ba4f91efadd2b1b257 (patch)
tree9ddd3b0fa335fa9f75043b5d8317ed9e7054cd3a
parentd4b4ecf6e0f9a9de357be067d4a87fdcbfbde48d (diff)
downloadandroid_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.java18
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;