fix #28, lowering the number of bulk update lists
This commit is contained in:
parent
7857859a65
commit
09b41d2422
1 changed files with 5 additions and 0 deletions
|
|
@ -564,6 +564,7 @@ class ContactsHelper(val activity: BaseSimpleActivity) {
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun toggleFavorites(ids: ArrayList<String>, areFavorites: Boolean) {
|
private fun toggleFavorites(ids: ArrayList<String>, areFavorites: Boolean) {
|
||||||
|
val applyBatchSize = 100
|
||||||
try {
|
try {
|
||||||
val operations = ArrayList<ContentProviderOperation>()
|
val operations = ArrayList<ContentProviderOperation>()
|
||||||
ids.forEach {
|
ids.forEach {
|
||||||
|
|
@ -572,6 +573,10 @@ class ContactsHelper(val activity: BaseSimpleActivity) {
|
||||||
withValue(ContactsContract.Contacts.STARRED, if (areFavorites) 1 else 0)
|
withValue(ContactsContract.Contacts.STARRED, if (areFavorites) 1 else 0)
|
||||||
operations.add(build())
|
operations.add(build())
|
||||||
}
|
}
|
||||||
|
if (operations.size % applyBatchSize == 0) {
|
||||||
|
activity.contentResolver.applyBatch(ContactsContract.AUTHORITY, operations)
|
||||||
|
operations.clear()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
activity.contentResolver.applyBatch(ContactsContract.AUTHORITY, operations)
|
activity.contentResolver.applyBatch(ContactsContract.AUTHORITY, operations)
|
||||||
} catch (e: Exception) {
|
} catch (e: Exception) {
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue