mirror of
https://github.com/nextcloud/talk-android.git
synced 2024-11-26 06:55:42 +03:00
Merge pull request #1059 from nextcloud/fixPhonebookIntegration
Fix phonebook integration
This commit is contained in:
commit
808d68ecec
2 changed files with 32 additions and 32 deletions
|
@ -171,8 +171,8 @@ class MainActivity : BaseActivity(), ActionBarProvider {
|
||||||
|
|
||||||
when (intent.type) {
|
when (intent.type) {
|
||||||
"vnd.android.cursor.item/vnd.com.nextcloud.talk2.chat" -> {
|
"vnd.android.cursor.item/vnd.com.nextcloud.talk2.chat" -> {
|
||||||
val user = userId.split("@")[0]
|
val user = userId.substringBeforeLast("@")
|
||||||
val baseUrl = userId.split("@")[1]
|
val baseUrl = userId.substringAfterLast("@")
|
||||||
if (userUtils.currentUser?.baseUrl?.endsWith(baseUrl) == true) {
|
if (userUtils.currentUser?.baseUrl?.endsWith(baseUrl) == true) {
|
||||||
startConversation(user)
|
startConversation(user)
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -86,11 +86,14 @@ class ContactAddressBookWorker(val context: Context, workerParameters: WorkerPar
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(AccountManager.get(context).getAccountsByType(ACCOUNT_TYPE).isEmpty()){
|
||||||
AccountManager.get(context).addAccountExplicitly(Account(ACCOUNT_NAME, ACCOUNT_TYPE), "", null)
|
AccountManager.get(context).addAccountExplicitly(Account(ACCOUNT_NAME, ACCOUNT_TYPE), "", null)
|
||||||
|
}
|
||||||
|
|
||||||
// collect all contacts with phone number
|
// collect all contacts with phone number
|
||||||
val contactsWithNumbers = collectPhoneNumbers()
|
val contactsWithNumbers = collectPhoneNumbers()
|
||||||
|
|
||||||
|
if(contactsWithNumbers.isNotEmpty()){
|
||||||
val currentLocale = ConfigurationCompat.getLocales(context.resources.configuration)[0].country
|
val currentLocale = ConfigurationCompat.getLocales(context.resources.configuration)[0].country
|
||||||
|
|
||||||
val map = mutableMapOf<String, Any>()
|
val map = mutableMapOf<String, Any>()
|
||||||
|
@ -113,18 +116,15 @@ class ContactAddressBookWorker(val context: Context, workerParameters: WorkerPar
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onNext(foundContacts: ContactsByNumberOverall) {
|
override fun onNext(foundContacts: ContactsByNumberOverall) {
|
||||||
Log.d(javaClass.simpleName, "next")
|
|
||||||
|
|
||||||
// todo update
|
|
||||||
up(foundContacts)
|
up(foundContacts)
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onError(e: Throwable) {
|
override fun onError(e: Throwable) {
|
||||||
// TODO error handling
|
Log.e(javaClass.simpleName, "Failed to searchContactsByPhoneNumber", e)
|
||||||
Log.d(javaClass.simpleName, "error")
|
|
||||||
}
|
}
|
||||||
|
|
||||||
})
|
})
|
||||||
|
}
|
||||||
|
|
||||||
// store timestamp
|
// store timestamp
|
||||||
appPreferences.setPhoneBookIntegrationLastRun(System.currentTimeMillis())
|
appPreferences.setPhoneBookIntegrationLastRun(System.currentTimeMillis())
|
||||||
|
@ -321,9 +321,9 @@ class ContactAddressBookWorker(val context: Context, workerParameters: WorkerPar
|
||||||
try {
|
try {
|
||||||
context.contentResolver.applyBatch(ContactsContract.AUTHORITY, ops)
|
context.contentResolver.applyBatch(ContactsContract.AUTHORITY, ops)
|
||||||
} catch (e: OperationApplicationException) {
|
} catch (e: OperationApplicationException) {
|
||||||
e.printStackTrace()
|
Log.e(javaClass.simpleName, "", e)
|
||||||
} catch (e: RemoteException) {
|
} catch (e: RemoteException) {
|
||||||
e.printStackTrace()
|
Log.e(javaClass.simpleName, "", e)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue