mirror of
https://github.com/SimpleMobileTools/Simple-SMS-Messenger.git
synced 2025-02-25 16:07:45 +01:00
Merge pull request #348 from sdex/block_unknown_numbers
Check if the number exists in the contacts and the private contacts
This commit is contained in:
commit
cf3f212398
@ -62,7 +62,7 @@ android {
|
||||
}
|
||||
|
||||
dependencies {
|
||||
implementation 'com.github.SimpleMobileTools:Simple-Commons:59f709a2a8'
|
||||
implementation 'com.github.SimpleMobileTools:Simple-Commons:10c8ac2f1e'
|
||||
implementation 'org.greenrobot:eventbus:3.3.1'
|
||||
implementation 'com.github.tibbi:IndicatorFastScroll:4524cd0b61'
|
||||
implementation 'com.github.tibbi:android-smsmms:fe58a74d59'
|
||||
|
@ -35,6 +35,7 @@ class SmsReceiver : BroadcastReceiver() {
|
||||
val read = 0
|
||||
val subscriptionId = intent.getIntExtra("subscription", -1)
|
||||
|
||||
val privateCursor = context.getMyContactsCursor(false, true)
|
||||
ensureBackgroundThread {
|
||||
messages.forEach {
|
||||
address = it.originatingAddress ?: ""
|
||||
@ -45,13 +46,26 @@ class SmsReceiver : BroadcastReceiver() {
|
||||
threadId = context.getThreadId(address)
|
||||
}
|
||||
|
||||
val bitmap = getPhotoForNotification(address, context)
|
||||
|
||||
Handler(Looper.getMainLooper()).post {
|
||||
val privateCursor = context.getMyContactsCursor(false, true)
|
||||
if (context.baseConfig.blockUnknownNumbers) {
|
||||
val simpleContactsHelper = SimpleContactsHelper(context)
|
||||
val isBlocked = context.baseConfig.blockUnknownNumbers && !simpleContactsHelper.exists(address)
|
||||
if (!isBlocked && !context.isNumberBlocked(address)) {
|
||||
simpleContactsHelper.exists(address, privateCursor) { exists ->
|
||||
if (exists) {
|
||||
handleMessage(context, address, subject, body, date, read, threadId, type, subscriptionId, status)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
handleMessage(context, address, subject, body, date, read, threadId, type, subscriptionId, status)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private fun handleMessage(
|
||||
context: Context, address: String, subject: String, body: String, date: Long, read: Int, threadId: Long, type: Int, subscriptionId: Int, status: Int
|
||||
) {
|
||||
val bitmap = getPhotoForNotification(address, context)
|
||||
Handler(Looper.getMainLooper()).post {
|
||||
if (!context.isNumberBlocked(address)) {
|
||||
val privateCursor = context.getMyContactsCursor(false, true)
|
||||
ensureBackgroundThread {
|
||||
val newMessageId = context.insertNewSMS(address, subject, body, date, read, threadId, type, subscriptionId)
|
||||
|
||||
@ -82,7 +96,6 @@ class SmsReceiver : BroadcastReceiver() {
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private fun getPhotoForNotification(address: String, context: Context): Bitmap? {
|
||||
val photo = SimpleContactsHelper(context).getPhotoUriFromPhoneNumber(address)
|
||||
|
Loading…
x
Reference in New Issue
Block a user