diff --git a/app/build.gradle b/app/build.gradle index 2c8b12c43..502bd5cfc 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -35,7 +35,7 @@ apply plugin: 'io.gitlab.arturbosch.detekt' apply plugin: "org.jlleitschuh.gradle.ktlint" android { - compileSdkVersion 30 + compileSdkVersion 31 buildToolsVersion '32.0.0' defaultConfig { minSdkVersion 21 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index e6e3536c0..e2f11f867 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -38,6 +38,7 @@ android:name="android.permission.AUTHENTICATE_ACCOUNTS" android:maxSdkVersion="22" /> + - - + + 0) { contactCursor.moveToFirst() for (i in 0 until contactCursor.count) { - val id = contactCursor.getString(contactCursor.getColumnIndex(ContactsContract.Contacts._ID)) + val id = contactCursor.getString(contactCursor.getColumnIndexOrThrow(ContactsContract.Contacts._ID)) val lookup = - contactCursor.getString(contactCursor.getColumnIndex(ContactsContract.Contacts.LOOKUP_KEY)) + contactCursor.getString( + contactCursor.getColumnIndexOrThrow(ContactsContract.Contacts.LOOKUP_KEY) + ) deviceContactsWithNumbers[lookup] = getPhoneNumbersFromDeviceContact(id) contactCursor.moveToNext() } @@ -228,13 +230,16 @@ class ContactAddressBookWorker(val context: Context, workerParameters: WorkerPar if (rawContactsCursor.count > 0) { while (rawContactsCursor.moveToNext()) { val lookupKey = - rawContactsCursor.getString(rawContactsCursor.getColumnIndex(ContactsContract.Data.LOOKUP_KEY)) - val contactId = - rawContactsCursor.getString(rawContactsCursor.getColumnIndex(ContactsContract.Data.CONTACT_ID)) - - if (contactsWithAssociatedPhoneNumbers == null || !contactsWithAssociatedPhoneNumbers.containsKey( - lookupKey + rawContactsCursor.getString( + rawContactsCursor.getColumnIndexOrThrow(ContactsContract.Data.LOOKUP_KEY) ) + val contactId = + rawContactsCursor.getString( + rawContactsCursor.getColumnIndexOrThrow(ContactsContract.Data.CONTACT_ID) + ) + + if (contactsWithAssociatedPhoneNumbers == null || + !contactsWithAssociatedPhoneNumbers.containsKey(lookupKey) ) { deleteLinkedAccount(contactId) } @@ -302,7 +307,7 @@ class ContactAddressBookWorker(val context: Context, workerParameters: WorkerPar if (contactCursor.count > 0) { contactCursor.moveToFirst() - val id = contactCursor.getString(contactCursor.getColumnIndex(ContactsContract.Contacts._ID)) + val id = contactCursor.getString(contactCursor.getColumnIndexOrThrow(ContactsContract.Contacts._ID)) if (hasLinkedAccount(id)) { return } @@ -416,7 +421,7 @@ class ContactAddressBookWorker(val context: Context, workerParameters: WorkerPar while (phonesNumbersCursor.moveToNext()) { numbers.add( phonesNumbersCursor.getString( - phonesNumbersCursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER) + phonesNumbersCursor.getColumnIndexOrThrow(ContactsContract.CommonDataKinds.Phone.NUMBER) ) ) } diff --git a/app/src/main/java/com/nextcloud/talk/utils/ContactUtils.kt b/app/src/main/java/com/nextcloud/talk/utils/ContactUtils.kt index 3f65dfe0e..98e7e1d63 100644 --- a/app/src/main/java/com/nextcloud/talk/utils/ContactUtils.kt +++ b/app/src/main/java/com/nextcloud/talk/utils/ContactUtils.kt @@ -24,7 +24,7 @@ object ContactUtils { while (nameCursor.moveToNext()) { displayName = nameCursor.getString( - nameCursor.getColumnIndex(ContactsContract.CommonDataKinds.StructuredName.DISPLAY_NAME) + nameCursor.getColumnIndexOrThrow(ContactsContract.CommonDataKinds.StructuredName.DISPLAY_NAME) ) } nameCursor.close() diff --git a/app/src/main/java/com/nextcloud/talk/utils/UriUtils.kt b/app/src/main/java/com/nextcloud/talk/utils/UriUtils.kt index 71d0e05ff..101d715cf 100644 --- a/app/src/main/java/com/nextcloud/talk/utils/UriUtils.kt +++ b/app/src/main/java/com/nextcloud/talk/utils/UriUtils.kt @@ -36,7 +36,7 @@ class UriUtils { val cursor: Cursor? = context.contentResolver.query(uri, null, null, null, null) try { if (cursor != null && cursor.moveToFirst()) { - filename = cursor.getString(cursor.getColumnIndex(OpenableColumns.DISPLAY_NAME)) + filename = cursor.getString(cursor.getColumnIndexOrThrow(OpenableColumns.DISPLAY_NAME)) } } finally { cursor?.close() diff --git a/app/src/main/java/com/nextcloud/talk/webrtc/MagicBluetoothManager.java b/app/src/main/java/com/nextcloud/talk/webrtc/MagicBluetoothManager.java index 8820457df..2d067298b 100644 --- a/app/src/main/java/com/nextcloud/talk/webrtc/MagicBluetoothManager.java +++ b/app/src/main/java/com/nextcloud/talk/webrtc/MagicBluetoothManager.java @@ -42,6 +42,7 @@ import android.content.Intent; import android.content.IntentFilter; import android.content.pm.PackageManager; import android.media.AudioManager; +import android.os.Build; import android.os.Handler; import android.os.Looper; import android.os.Process; @@ -317,10 +318,9 @@ public class MagicBluetoothManager { @SuppressLint("HardwareIds") protected void logBluetoothAdapterInfo(BluetoothAdapter localAdapter) { Log.d(TAG, "BluetoothAdapter: " - + "enabled=" + localAdapter.isEnabled() + ", " - + "state=" + stateToString(localAdapter.getState()) + ", " - + "name=" + localAdapter.getName() + ", " - + "address=" + localAdapter.getAddress()); + + "enabled=" + localAdapter.isEnabled() + ", " + + "state=" + stateToString(localAdapter.getState()) + ", " + + "name=" + localAdapter.getName()); // Log the set of BluetoothDevice objects that are bonded (paired) to the local adapter. Set pairedDevices = localAdapter.getBondedDevices(); if (!pairedDevices.isEmpty()) {