Loading android/app/src/com/android/bluetooth/mapclient/MapClientContent.java +13 −8 Original line number Diff line number Diff line Loading @@ -287,12 +287,21 @@ class MapClientContent { BluetoothMapbMessageMime mmsBmessage = new BluetoothMapbMessageMime(); mmsBmessage.parseMsgPart(message.getBodyContent()); int read = message.getStatus() == Bmessage.Status.READ ? 1 : 0; Uri contentUri; int messageBox; if (INBOX_PATH.equalsIgnoreCase(message.getFolder())) { contentUri = Mms.Inbox.CONTENT_URI; messageBox = Mms.MESSAGE_BOX_INBOX; } else { contentUri = Mms.Sent.CONTENT_URI; messageBox = Mms.MESSAGE_BOX_SENT; } logD("Parsed"); values.put(Mms.SUBSCRIPTION_ID, mSubscriptionId); values.put(Mms.THREAD_ID, threadId); values.put(Mms.DATE, timestamp / 1000L); values.put(Mms.TEXT_ONLY, true); values.put(Mms.MESSAGE_BOX, Mms.MESSAGE_BOX_INBOX); values.put(Mms.MESSAGE_BOX, messageBox); values.put(Mms.READ, read); values.put(Mms.SEEN, 0); values.put(Mms.MESSAGE_TYPE, PduHeaders.MESSAGE_TYPE_SEND_REQ); Loading @@ -306,7 +315,7 @@ class MapClientContent { values.put(Mms.MESSAGE_CLASS, PduHeaders.MESSAGE_CLASS_PERSONAL_STR); values.put(Mms.MESSAGE_SIZE, mmsBmessage.getSize()); Uri results = mResolver.insert(Mms.CONTENT_URI, values); Uri results = mResolver.insert(contentUri, values); logD("Map InsertedThread" + results); Loading @@ -316,10 +325,6 @@ class MapClientContent { storeAddressPart(message, results); Uri contentUri = INBOX_PATH.equalsIgnoreCase(message.getFolder()) ? Mms.Inbox.CONTENT_URI : Mms.Sent.CONTENT_URI; String messageContent = mmsBmessage.getMessageAsText(); values.put(Mms.Part.CONTENT_TYPE, "plain/text"); Loading Loading @@ -399,7 +404,7 @@ class MapClientContent { } getRecipientsFromMessage(message, messageContacts); messageContacts.remove(mPhoneNumber); messageContacts.removeIf(number -> (PhoneNumberUtils.compareLoosely(number, mPhoneNumber))); logV("Contacts = " + messageContacts.toString()); return Telephony.Threads.getOrCreateThreadId(mContext, messageContacts); } Loading @@ -420,7 +425,7 @@ class MapClientContent { if (originator != null) { List<VCardEntry.PhoneData> phoneData = originator.getPhoneList(); if (phoneData != null && phoneData.size() > 0) { return phoneData.get(0).getNumber(); return PhoneNumberUtils.extractNetworkPortion(phoneData.get(0).getNumber()); } } return null; Loading android/app/tests/unit/src/com/android/bluetooth/mapclient/MapClientContentTest.java +5 −4 Original line number Diff line number Diff line Loading @@ -30,6 +30,8 @@ import android.content.Context; import android.database.Cursor; import android.net.Uri; import android.os.Handler; import android.provider.Telephony.Mms; import android.provider.Telephony.Sms; import android.telephony.SubscriptionManager; import android.test.mock.MockContentProvider; import android.test.mock.MockContentResolver; Loading Loading @@ -335,8 +337,7 @@ public class MapClientContentTest { Log.i(TAG, "Delete " + uri); Log.i(TAG, "Contents" + mContentValues.toString()); mContentValues.remove(uri); if (uri.toString().equals("content://sms") || uri.toString().equals("content://mms")) { if (uri.equals(Sms.CONTENT_URI) || uri.equals(Mms.CONTENT_URI)) { mContentValues.clear(); } return 1; Loading @@ -345,10 +346,10 @@ public class MapClientContentTest { @Override public Uri insert(Uri uri, ContentValues values) { Log.i(TAG, "URI = " + uri); if (uri.equals(Mms.Inbox.CONTENT_URI)) uri = Mms.CONTENT_URI; Uri returnUri = Uri.withAppendedPath(uri, String.valueOf(mContentValues.size() + 1)); //only store top level message parts if (uri.toString().equals("content://sms/inbox") || uri.toString() .equals("content://mms")) { if (uri.equals(Sms.Inbox.CONTENT_URI) || uri.equals(Mms.CONTENT_URI)) { Log.i(TAG, "adding content" + values); mContentValues.put(returnUri, values); Log.i(TAG, "ContentSize = " + mContentValues.size()); Loading Loading
android/app/src/com/android/bluetooth/mapclient/MapClientContent.java +13 −8 Original line number Diff line number Diff line Loading @@ -287,12 +287,21 @@ class MapClientContent { BluetoothMapbMessageMime mmsBmessage = new BluetoothMapbMessageMime(); mmsBmessage.parseMsgPart(message.getBodyContent()); int read = message.getStatus() == Bmessage.Status.READ ? 1 : 0; Uri contentUri; int messageBox; if (INBOX_PATH.equalsIgnoreCase(message.getFolder())) { contentUri = Mms.Inbox.CONTENT_URI; messageBox = Mms.MESSAGE_BOX_INBOX; } else { contentUri = Mms.Sent.CONTENT_URI; messageBox = Mms.MESSAGE_BOX_SENT; } logD("Parsed"); values.put(Mms.SUBSCRIPTION_ID, mSubscriptionId); values.put(Mms.THREAD_ID, threadId); values.put(Mms.DATE, timestamp / 1000L); values.put(Mms.TEXT_ONLY, true); values.put(Mms.MESSAGE_BOX, Mms.MESSAGE_BOX_INBOX); values.put(Mms.MESSAGE_BOX, messageBox); values.put(Mms.READ, read); values.put(Mms.SEEN, 0); values.put(Mms.MESSAGE_TYPE, PduHeaders.MESSAGE_TYPE_SEND_REQ); Loading @@ -306,7 +315,7 @@ class MapClientContent { values.put(Mms.MESSAGE_CLASS, PduHeaders.MESSAGE_CLASS_PERSONAL_STR); values.put(Mms.MESSAGE_SIZE, mmsBmessage.getSize()); Uri results = mResolver.insert(Mms.CONTENT_URI, values); Uri results = mResolver.insert(contentUri, values); logD("Map InsertedThread" + results); Loading @@ -316,10 +325,6 @@ class MapClientContent { storeAddressPart(message, results); Uri contentUri = INBOX_PATH.equalsIgnoreCase(message.getFolder()) ? Mms.Inbox.CONTENT_URI : Mms.Sent.CONTENT_URI; String messageContent = mmsBmessage.getMessageAsText(); values.put(Mms.Part.CONTENT_TYPE, "plain/text"); Loading Loading @@ -399,7 +404,7 @@ class MapClientContent { } getRecipientsFromMessage(message, messageContacts); messageContacts.remove(mPhoneNumber); messageContacts.removeIf(number -> (PhoneNumberUtils.compareLoosely(number, mPhoneNumber))); logV("Contacts = " + messageContacts.toString()); return Telephony.Threads.getOrCreateThreadId(mContext, messageContacts); } Loading @@ -420,7 +425,7 @@ class MapClientContent { if (originator != null) { List<VCardEntry.PhoneData> phoneData = originator.getPhoneList(); if (phoneData != null && phoneData.size() > 0) { return phoneData.get(0).getNumber(); return PhoneNumberUtils.extractNetworkPortion(phoneData.get(0).getNumber()); } } return null; Loading
android/app/tests/unit/src/com/android/bluetooth/mapclient/MapClientContentTest.java +5 −4 Original line number Diff line number Diff line Loading @@ -30,6 +30,8 @@ import android.content.Context; import android.database.Cursor; import android.net.Uri; import android.os.Handler; import android.provider.Telephony.Mms; import android.provider.Telephony.Sms; import android.telephony.SubscriptionManager; import android.test.mock.MockContentProvider; import android.test.mock.MockContentResolver; Loading Loading @@ -335,8 +337,7 @@ public class MapClientContentTest { Log.i(TAG, "Delete " + uri); Log.i(TAG, "Contents" + mContentValues.toString()); mContentValues.remove(uri); if (uri.toString().equals("content://sms") || uri.toString().equals("content://mms")) { if (uri.equals(Sms.CONTENT_URI) || uri.equals(Mms.CONTENT_URI)) { mContentValues.clear(); } return 1; Loading @@ -345,10 +346,10 @@ public class MapClientContentTest { @Override public Uri insert(Uri uri, ContentValues values) { Log.i(TAG, "URI = " + uri); if (uri.equals(Mms.Inbox.CONTENT_URI)) uri = Mms.CONTENT_URI; Uri returnUri = Uri.withAppendedPath(uri, String.valueOf(mContentValues.size() + 1)); //only store top level message parts if (uri.toString().equals("content://sms/inbox") || uri.toString() .equals("content://mms")) { if (uri.equals(Sms.Inbox.CONTENT_URI) || uri.equals(Mms.CONTENT_URI)) { Log.i(TAG, "adding content" + values); mContentValues.put(returnUri, values); Log.i(TAG, "ContentSize = " + mContentValues.size()); Loading