Skip to content

Commit 0a9cc5f

Browse files
authored
Merge pull request #497 from Naveen3Singh/persist_sub_id
Persist subscription id when sending sms messages
2 parents 75bbd5e + 48ebef6 commit 0a9cc5f

File tree

2 files changed

+1
-25
lines changed

2 files changed

+1
-25
lines changed

app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1116,7 +1116,6 @@ class ThreadActivity : SimpleActivity() {
11161116
val messageIds = messages.map { it.id }
11171117
val message = getMessages(threadId, getImageResolutions = true, limit = 1).firstOrNull { it.id !in messageIds }
11181118
if (message != null) {
1119-
maybeUpdateMessageSubId(message)
11201119
insertOrUpdateMessage(message)
11211120
}
11221121
}
@@ -1306,7 +1305,6 @@ class ThreadActivity : SimpleActivity() {
13061305
}
13071306

13081307
messages.filter { !it.isScheduled && !it.isReceivedMessage() && it.id > lastMaxId }.forEach { latestMessage ->
1309-
maybeUpdateMessageSubId(latestMessage)
13101308
messagesDB.insertOrIgnore(latestMessage)
13111309
}
13121310

@@ -1316,18 +1314,6 @@ class ThreadActivity : SimpleActivity() {
13161314
}
13171315
}
13181316

1319-
@SuppressLint("MissingPermission")
1320-
private fun maybeUpdateMessageSubId(message: Message) {
1321-
// subscriptionIds seem to be not filled out at sending with multiple SIM cards, so fill it manually
1322-
if ((subscriptionManagerCompat().activeSubscriptionInfoList?.size ?: 0) > 1) {
1323-
val subscriptionId = availableSIMCards.getOrNull(currentSIMCardIndex)?.subscriptionId
1324-
if (subscriptionId != null) {
1325-
updateMessageSubscriptionId(message.id, subscriptionId)
1326-
message.subscriptionId = subscriptionId
1327-
}
1328-
}
1329-
}
1330-
13311317
private fun isMmsMessage(text: String): Boolean {
13321318
val isGroupMms = participants.size > 1 && config.sendGroupMessageMMS
13331319
val isLongMmsMessage = isLongMmsMessage(text) && config.sendLongMessageMMS

app/src/main/kotlin/com/simplemobiletools/smsmessenger/extensions/Context.kt

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ fun Context.getMessages(
112112
val thread = cursor.getLongValue(Sms.THREAD_ID)
113113
val subscriptionId = cursor.getIntValue(Sms.SUBSCRIPTION_ID)
114114
val status = cursor.getIntValue(Sms.STATUS)
115-
val participants = senderNumber.split(getAddressSeparator().toRegex()).map { number ->
115+
val participants = senderNumber.split(getAddressSeparator()).map { number ->
116116
val phoneNumber = PhoneNumber(number, 0, "", number)
117117
val participantPhoto = getNameAndPhotoFromPhoneNumber(number)
118118
SimpleContact(0, 0, participantPhoto.name, photoUri, arrayListOf(phoneNumber), ArrayList(), ArrayList())
@@ -676,16 +676,6 @@ fun Context.updateMessageStatus(id: Long, status: Int) {
676676
contentResolver.update(uri, contentValues, selection, selectionArgs)
677677
}
678678

679-
fun Context.updateMessageSubscriptionId(messageId: Long, subscriptionId: Int) {
680-
val uri = Sms.CONTENT_URI
681-
val contentValues = ContentValues().apply {
682-
put(Sms.SUBSCRIPTION_ID, subscriptionId)
683-
}
684-
val selection = "${Sms._ID} = ?"
685-
val selectionArgs = arrayOf(messageId.toString())
686-
contentResolver.update(uri, contentValues, selection, selectionArgs)
687-
}
688-
689679
fun Context.updateUnreadCountBadge(conversations: List<Conversation>) {
690680
val unreadCount = conversations.count { !it.read }
691681
if (unreadCount == 0) {

0 commit comments

Comments
 (0)