From 786e35613e7cc2ba9e9465a4679e524c01c9ba30 Mon Sep 17 00:00:00 2001 From: Nikola Trubitsyn Date: Fri, 12 Jan 2018 11:57:33 +0300 Subject: [PATCH 01/54] Update values-ru/strings.xml (add space) --- app/src/main/res/values-ru/strings.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index af1107af..42ee8031 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -25,7 +25,7 @@ Отображать номера телефонов на главном экране - Эл.почта + Эл. почта Домашний Рабочий Другой From 90a51a407a6c878686d3c4d852a3d1fc72b833ae Mon Sep 17 00:00:00 2001 From: tibbi Date: Sun, 14 Jan 2018 16:37:02 +0100 Subject: [PATCH 02/54] ignore empty contact emails --- .../contacts/activities/ContactActivity.kt | 4 ---- .../simplemobiletools/contacts/activities/MainActivity.kt | 4 +--- .../com/simplemobiletools/contacts/helpers/Constants.kt | 7 +++++++ .../simplemobiletools/contacts/helpers/ContactsHelper.kt | 2 +- 4 files changed, 9 insertions(+), 8 deletions(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt index 5b826287..bf3fc43c 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt @@ -51,10 +51,6 @@ import java.text.SimpleDateFormat import java.util.* class ContactActivity : SimpleActivity() { - private val DEFAULT_EMAIL_TYPE = ContactsContract.CommonDataKinds.Email.TYPE_HOME - private val DEFAULT_PHONE_NUMBER_TYPE = ContactsContract.CommonDataKinds.Phone.TYPE_MOBILE - private val DEFAULT_EVENT_TYPE = ContactsContract.CommonDataKinds.Event.TYPE_BIRTHDAY - private val INTENT_TAKE_PHOTO = 1 private val INTENT_CHOOSE_PHOTO = 2 private val INTENT_CROP_PHOTO = 3 diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt index 43846846..7ad77db8 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt @@ -156,9 +156,7 @@ class MainActivity : SimpleActivity(), RefreshContactsListener { isSubmitButtonEnabled = false queryHint = getString(if (viewpager.currentItem == 0) R.string.search_contacts else R.string.search_favorites) setOnQueryTextListener(object : SearchView.OnQueryTextListener { - override fun onQueryTextSubmit(query: String): Boolean { - return false - } + override fun onQueryTextSubmit(query: String) = false override fun onQueryTextChange(newText: String): Boolean { if (isSearchOpen) { diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt index eff937cf..6d919c8b 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt @@ -1,5 +1,7 @@ package com.simplemobiletools.contacts.helpers +import android.provider.ContactsContract + // shared prefs val CALL_CONTACT_ON_CLICK = "call_contact_on_click" val SHOW_PHONE_NUMBERS = "show_phone_numbers" @@ -15,3 +17,8 @@ val PHOTO_ADDED = 1 val PHOTO_REMOVED = 2 val PHOTO_CHANGED = 3 val PHOTO_UNCHANGED = 4 + +// default contact values +val DEFAULT_EMAIL_TYPE = ContactsContract.CommonDataKinds.Email.TYPE_HOME +val DEFAULT_PHONE_NUMBER_TYPE = ContactsContract.CommonDataKinds.Phone.TYPE_MOBILE +val DEFAULT_EVENT_TYPE = ContactsContract.CommonDataKinds.Event.TYPE_BIRTHDAY diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt index 99d2b29c..ce3e774d 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt @@ -138,7 +138,7 @@ class ContactsHelper(val activity: BaseSimpleActivity) { if (cursor?.moveToFirst() == true) { do { val id = cursor.getIntValue(ContactsContract.Data.RAW_CONTACT_ID) - val email = cursor.getStringValue(ContactsContract.CommonDataKinds.Email.DATA) + val email = cursor.getStringValue(ContactsContract.CommonDataKinds.Email.DATA) ?: continue val type = cursor.getIntValue(ContactsContract.CommonDataKinds.Email.TYPE) if (emails[id] == null) { From 13b7a1cb611ed384181e6f5c8e2bf73a3a2347b0 Mon Sep 17 00:00:00 2001 From: tibbi Date: Sun, 14 Jan 2018 18:25:23 +0100 Subject: [PATCH 03/54] update commons to 3.7.2 --- app/build.gradle | 2 +- .../simplemobiletools/contacts/adapters/ContactsAdapter.kt | 7 ++++--- .../contacts/adapters/SelectContactsAdapter.kt | 2 +- .../contacts/fragments/MyViewPagerFragment.kt | 2 +- gradle/wrapper/gradle-wrapper.properties | 2 +- 5 files changed, 8 insertions(+), 7 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 818d9a14..a51d22ee 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -41,7 +41,7 @@ ext { } dependencies { - implementation 'com.simplemobiletools:commons:3.5.7' + implementation 'com.simplemobiletools:commons:3.7.2' implementation 'joda-time:joda-time:2.9.9' //debugImplementation "com.squareup.leakcanary:leakcanary-android:$leakCanaryVersion" diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/adapters/ContactsAdapter.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/adapters/ContactsAdapter.kt index 71b2a2df..6154ac39 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/adapters/ContactsAdapter.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/adapters/ContactsAdapter.kt @@ -13,6 +13,7 @@ import com.simplemobiletools.commons.adapters.MyRecyclerViewAdapter import com.simplemobiletools.commons.dialogs.ConfirmationDialog import com.simplemobiletools.commons.extensions.getColoredDrawableWithColor import com.simplemobiletools.commons.extensions.isActivityDestroyed +import com.simplemobiletools.commons.views.FastScroller import com.simplemobiletools.commons.views.MyRecyclerView import com.simplemobiletools.contacts.R import com.simplemobiletools.contacts.activities.SimpleActivity @@ -25,8 +26,8 @@ import kotlinx.android.synthetic.main.item_contact_with_number.view.* import java.util.* class ContactsAdapter(activity: SimpleActivity, var contactItems: MutableList, val listener: RefreshContactsListener?, - val isFavoritesFragment: Boolean, recyclerView: MyRecyclerView, itemClick: (Any) -> Unit) : - MyRecyclerViewAdapter(activity, recyclerView, itemClick) { + val isFavoritesFragment: Boolean, recyclerView: MyRecyclerView, fastScroller: FastScroller, itemClick: (Any) -> Unit) : + MyRecyclerViewAdapter(activity, recyclerView, fastScroller, itemClick) { lateinit private var contactDrawable: Drawable var config = activity.config @@ -163,7 +164,7 @@ class ContactsAdapter(activity: SimpleActivity, var contactItems: MutableList Date: Sun, 14 Jan 2018 18:37:11 +0100 Subject: [PATCH 04/54] adding some export/import related strings --- app/src/main/res/values-de/strings.xml | 9 +++++++++ app/src/main/res/values-ko-rKR/strings.xml | 9 +++++++++ app/src/main/res/values-pt/strings.xml | 9 +++++++++ app/src/main/res/values-ru/strings.xml | 9 +++++++++ app/src/main/res/values-sk/strings.xml | 9 +++++++++ app/src/main/res/values/strings.xml | 9 +++++++++ 6 files changed, 54 insertions(+) diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 4149bc48..6eb1ec3a 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -53,6 +53,15 @@ Kontakte durchsuchen Favoriten durchsuchen + + Import contacts + Export contacts + Import contacts from a .vcf file + Export contacts to a .vcf file + Target contact source + Include contact sources + Filename (without .vcf) + Eine App zum Verwalten von Kontakten, ganz ohne Werbung. diff --git a/app/src/main/res/values-ko-rKR/strings.xml b/app/src/main/res/values-ko-rKR/strings.xml index 2ef130a7..2af9acb0 100644 --- a/app/src/main/res/values-ko-rKR/strings.xml +++ b/app/src/main/res/values-ko-rKR/strings.xml @@ -53,6 +53,15 @@ 연락처 검색 자주쓰는 연락처 검색 + + Import contacts + Export contacts + Import contacts from a .vcf file + Export contacts to a .vcf file + Target contact source + Include contact sources + Filename (without .vcf) + 광고가 없는 연락처 관리 애플리케이션입니다. diff --git a/app/src/main/res/values-pt/strings.xml b/app/src/main/res/values-pt/strings.xml index 0cf93b1f..ac0aa86a 100644 --- a/app/src/main/res/values-pt/strings.xml +++ b/app/src/main/res/values-pt/strings.xml @@ -53,6 +53,15 @@ Search contacts Search favorites + + Import contacts + Export contacts + Import contacts from a .vcf file + Export contacts to a .vcf file + Target contact source + Include contact sources + Filename (without .vcf) + A contacts app for managing your contacts without ads. diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index 42ee8031..eb456006 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -53,6 +53,15 @@ Поиск контактов Поиск избранных + + Import contacts + Export contacts + Import contacts from a .vcf file + Export contacts to a .vcf file + Target contact source + Include contact sources + Filename (without .vcf) + Приложение для управления контактами без рекламы. diff --git a/app/src/main/res/values-sk/strings.xml b/app/src/main/res/values-sk/strings.xml index aecf75dc..eae50101 100644 --- a/app/src/main/res/values-sk/strings.xml +++ b/app/src/main/res/values-sk/strings.xml @@ -53,6 +53,15 @@ Hľadať v kontaktoch Hľadať medzi obľúbenými + + Importovať kontakty + Exportovať kontakty + Importovať kontakty zo súboru .vcf + Exportovať kontakty do súboru .vcf + Cieľový zdroj kontaktov + Zahrnúť zdroje kontaktov + Názov súboru (bez .vcf) + Aplikácia pre správu vašich kontaktov bez reklám. diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 6ff54cca..ead1f3ce 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -53,6 +53,15 @@ Search contacts Search favorites + + Import contacts + Export contacts + Import contacts from a .vcf file + Export contacts to a .vcf file + Target contact source + Include contact sources + Filename (without .vcf) + A contacts app for managing your contacts without ads. From 628acd9585cea154aad5da623ecf26970a8e4236 Mon Sep 17 00:00:00 2001 From: Phoenix1747 Date: Sun, 14 Jan 2018 19:41:56 +0100 Subject: [PATCH 05/54] Update strings.xml --- app/src/main/res/values-de/strings.xml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 6eb1ec3a..0ad82735 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -54,13 +54,13 @@ Favoriten durchsuchen - Import contacts - Export contacts - Import contacts from a .vcf file - Export contacts to a .vcf file - Target contact source - Include contact sources - Filename (without .vcf) + Kontakte importieren + Kontakte exportieren + Kontakte aus .vcf Datei importieren + Kontakte in .vcf Datei exportieren + Zielkontaktquelle + Kontaktquellen einschließen + Dateiname (ohne .vcf) From 68b9c4f5d288ce324ba60c4e85ff1c40218b8041 Mon Sep 17 00:00:00 2001 From: tibbi Date: Sun, 14 Jan 2018 19:58:25 +0100 Subject: [PATCH 06/54] add LeakCanary and storage permission back --- app/build.gradle | 4 ++-- app/src/main/AndroidManifest.xml | 1 + app/src/main/kotlin/com/simplemobiletools/contacts/App.kt | 5 +++-- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index a51d22ee..948575b3 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -44,8 +44,8 @@ dependencies { implementation 'com.simplemobiletools:commons:3.7.2' implementation 'joda-time:joda-time:2.9.9' - //debugImplementation "com.squareup.leakcanary:leakcanary-android:$leakCanaryVersion" - //releaseImplementation "com.squareup.leakcanary:leakcanary-android-no-op:$leakCanaryVersion" + debugImplementation "com.squareup.leakcanary:leakcanary-android:$leakCanaryVersion" + releaseImplementation "com.squareup.leakcanary:leakcanary-android-no-op:$leakCanaryVersion" } Properties props = new Properties() diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 8060eb4f..f3a6d48e 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -8,6 +8,7 @@ + Date: Sun, 14 Jan 2018 20:03:13 +0100 Subject: [PATCH 07/54] add menu items for importing/exporting vcf files --- .../contacts/activities/MainActivity.kt | 31 +++++++++++++++++++ app/src/main/res/menu/menu.xml | 8 +++++ app/src/main/res/values-de/strings.xml | 4 +-- app/src/main/res/values-ko-rKR/strings.xml | 4 +-- app/src/main/res/values-pt/strings.xml | 4 +-- app/src/main/res/values-ru/strings.xml | 4 +-- app/src/main/res/values-sk/strings.xml | 4 +-- app/src/main/res/values/strings.xml | 4 +-- 8 files changed, 51 insertions(+), 12 deletions(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt index 7ad77db8..ef049b3d 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt @@ -10,6 +10,7 @@ import android.support.v4.view.ViewPager import android.support.v7.widget.SearchView import android.view.Menu import android.view.MenuItem +import com.simplemobiletools.commons.dialogs.FilePickerDialog import com.simplemobiletools.commons.extensions.* import com.simplemobiletools.commons.helpers.* import com.simplemobiletools.contacts.BuildConfig @@ -130,6 +131,8 @@ class MainActivity : SimpleActivity(), RefreshContactsListener { when (item.itemId) { R.id.sort -> showSortingDialog() R.id.filter -> showFilterDialog() + R.id.import_contacts -> tryImportContacts() + R.id.export_contacts -> tryExportContacts() R.id.settings -> startActivity(Intent(applicationContext, SettingsActivity::class.java)) R.id.about -> launchAbout() else -> return super.onOptionsItemSelected(item) @@ -245,6 +248,34 @@ class MainActivity : SimpleActivity(), RefreshContactsListener { } } + private fun tryImportContacts() { + handlePermission(PERMISSION_READ_STORAGE) { + if (it) { + importContacts() + } + } + } + + private fun importContacts() { + FilePickerDialog(this) { + + } + } + + private fun tryExportContacts() { + handlePermission(PERMISSION_WRITE_STORAGE) { + if (it) { + exportContacts() + } + } + } + + private fun exportContacts() { + FilePickerDialog(this, pickFile = false, showFAB = true) { + + } + } + private fun launchAbout() { startAboutActivity(R.string.app_name, LICENSE_KOTLIN or LICENSE_MULTISELECT or LICENSE_JODA or LICENSE_GLIDE, BuildConfig.VERSION_NAME) } diff --git a/app/src/main/res/menu/menu.xml b/app/src/main/res/menu/menu.xml index 726c8de7..30f2f275 100644 --- a/app/src/main/res/menu/menu.xml +++ b/app/src/main/res/menu/menu.xml @@ -17,6 +17,14 @@ android:icon="@drawable/ic_filter" android:title="@string/filter" app:showAsAction="ifRoom"/> + + Kontakte importieren Kontakte exportieren - Kontakte aus .vcf Datei importieren - Kontakte in .vcf Datei exportieren + Kontakte aus .vcf Datei importieren + Kontakte in .vcf Datei exportieren Zielkontaktquelle Kontaktquellen einschließen Dateiname (ohne .vcf) diff --git a/app/src/main/res/values-ko-rKR/strings.xml b/app/src/main/res/values-ko-rKR/strings.xml index 2af9acb0..58d196bf 100644 --- a/app/src/main/res/values-ko-rKR/strings.xml +++ b/app/src/main/res/values-ko-rKR/strings.xml @@ -56,8 +56,8 @@ Import contacts Export contacts - Import contacts from a .vcf file - Export contacts to a .vcf file + Import contacts from a .vcf file + Export contacts to a .vcf file Target contact source Include contact sources Filename (without .vcf) diff --git a/app/src/main/res/values-pt/strings.xml b/app/src/main/res/values-pt/strings.xml index ac0aa86a..7eff3cc3 100644 --- a/app/src/main/res/values-pt/strings.xml +++ b/app/src/main/res/values-pt/strings.xml @@ -56,8 +56,8 @@ Import contacts Export contacts - Import contacts from a .vcf file - Export contacts to a .vcf file + Import contacts from a .vcf file + Export contacts to a .vcf file Target contact source Include contact sources Filename (without .vcf) diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index eb456006..2168a051 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -56,8 +56,8 @@ Import contacts Export contacts - Import contacts from a .vcf file - Export contacts to a .vcf file + Import contacts from a .vcf file + Export contacts to a .vcf file Target contact source Include contact sources Filename (without .vcf) diff --git a/app/src/main/res/values-sk/strings.xml b/app/src/main/res/values-sk/strings.xml index eae50101..7f9e47b8 100644 --- a/app/src/main/res/values-sk/strings.xml +++ b/app/src/main/res/values-sk/strings.xml @@ -56,8 +56,8 @@ Importovať kontakty Exportovať kontakty - Importovať kontakty zo súboru .vcf - Exportovať kontakty do súboru .vcf + Importovať kontakty z .vcf súboru + Exportovať kontakty do .vcf súboru Cieľový zdroj kontaktov Zahrnúť zdroje kontaktov Názov súboru (bez .vcf) diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index ead1f3ce..d8998545 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -56,8 +56,8 @@ Import contacts Export contacts - Import contacts from a .vcf file - Export contacts to a .vcf file + Import contacts from a .vcf file + Export contacts to a .vcf file Target contact source Include contact sources Filename (without .vcf) From 9950d5d3ceaed7c2ea0f838c55c1ea8c55932174 Mon Sep 17 00:00:00 2001 From: tibbi Date: Sun, 14 Jan 2018 20:53:29 +0100 Subject: [PATCH 08/54] adding the Import Contacts dialog --- .../contacts/activities/ContactActivity.kt | 27 ++-------- .../contacts/activities/MainActivity.kt | 9 +++- .../contacts/dialogs/ImportContactsDialog.kt | 52 ++++++++++++++++++ .../contacts/extensions/Activity.kt | 21 ++++++++ .../contacts/helpers/Constants.kt | 11 ++++ .../contacts/helpers/VcfImporter.kt | 53 +++++++++++++++++++ .../res/layout/dialog_import_contacts.xml | 28 ++++++++++ 7 files changed, 178 insertions(+), 23 deletions(-) create mode 100644 app/src/main/kotlin/com/simplemobiletools/contacts/dialogs/ImportContactsDialog.kt create mode 100644 app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfImporter.kt create mode 100644 app/src/main/res/layout/dialog_import_contacts.xml diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt index bf3fc43c..6269120a 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt @@ -304,7 +304,11 @@ class ContactActivity : SimpleActivity() { supportActionBar?.title = resources.getString(R.string.new_contact) contact = Contact(0, "", "", "", "", ArrayList(), ArrayList(), ArrayList(), "", 0, 0) contact_source.text = config.lastUsedContactSource - contact_source.setOnClickListener { showAccountSourcePicker() } + contact_source.setOnClickListener { + showContactSourcePicker(contact_source.value) { + contact_source.text = it + } + } } private fun showPhotoPlaceholder() { @@ -639,27 +643,6 @@ class ContactActivity : SimpleActivity() { } } - private fun showAccountSourcePicker() { - ContactsHelper(this).getContactSources { - val items = ArrayList() - val sources = it - val currentSource = contact_source.value - var currentSourceIndex = -1 - sources.forEachIndexed { index, account -> - items.add(RadioItem(index, account)) - if (account == currentSource) { - currentSourceIndex = index - } - } - - runOnUiThread { - RadioGroupDialog(this, items, currentSourceIndex) { - contact_source.text = sources[it as Int] - } - } - } - } - private fun toggleFavorite() { val isStarred = isContactStarred() contact_toggle_favorite.apply { diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt index ef049b3d..ccb8b040 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt @@ -18,6 +18,7 @@ import com.simplemobiletools.contacts.R import com.simplemobiletools.contacts.adapters.ViewPagerAdapter import com.simplemobiletools.contacts.dialogs.ChangeSortingDialog import com.simplemobiletools.contacts.dialogs.FilterContactSourcesDialog +import com.simplemobiletools.contacts.dialogs.ImportContactsDialog import com.simplemobiletools.contacts.extensions.config import com.simplemobiletools.contacts.extensions.onTabSelectionChanged import com.simplemobiletools.contacts.interfaces.RefreshContactsListener @@ -258,7 +259,13 @@ class MainActivity : SimpleActivity(), RefreshContactsListener { private fun importContacts() { FilePickerDialog(this) { - + ImportContactsDialog(this, it) { + if (it) { + runOnUiThread { + refreshContacts() + } + } + } } } diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/dialogs/ImportContactsDialog.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/dialogs/ImportContactsDialog.kt new file mode 100644 index 00000000..fde2a6fa --- /dev/null +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/dialogs/ImportContactsDialog.kt @@ -0,0 +1,52 @@ +package com.simplemobiletools.contacts.dialogs + +import android.support.v7.app.AlertDialog +import android.view.ViewGroup +import com.simplemobiletools.commons.extensions.setupDialogStuff +import com.simplemobiletools.commons.extensions.toast +import com.simplemobiletools.commons.extensions.value +import com.simplemobiletools.contacts.R +import com.simplemobiletools.contacts.activities.SimpleActivity +import com.simplemobiletools.contacts.extensions.config +import com.simplemobiletools.contacts.extensions.showContactSourcePicker +import com.simplemobiletools.contacts.helpers.VcfImporter +import com.simplemobiletools.contacts.helpers.VcfImporter.ImportResult.IMPORT_FAIL +import kotlinx.android.synthetic.main.dialog_import_contacts.view.* + +class ImportContactsDialog(val activity: SimpleActivity, val path: String, val callback: (refreshView: Boolean) -> Unit) { + init { + val view = (activity.layoutInflater.inflate(R.layout.dialog_import_contacts, null) as ViewGroup).apply { + import_contacts_title.text = activity.config.lastUsedContactSource + import_contacts_title.setOnClickListener { + activity.showContactSourcePicker(import_contacts_title.value) { + import_contacts_title.text = it + } + } + } + + AlertDialog.Builder(activity) + .setPositiveButton(R.string.ok, null) + .setNegativeButton(R.string.cancel, null) + .create().apply { + activity.setupDialogStuff(view, this, R.string.import_contacts) { + getButton(AlertDialog.BUTTON_POSITIVE).setOnClickListener { + activity.toast(R.string.importing) + Thread { + val result = VcfImporter(activity).importContacts(path, view.import_contacts_title.value) + handleParseResult(result) + dismiss() + }.start() + } + } + } + } + + private fun handleParseResult(result: VcfImporter.ImportResult) { + activity.toast(when (result) { + VcfImporter.ImportResult.IMPORT_OK -> R.string.importing_successful + VcfImporter.ImportResult.IMPORT_PARTIAL -> R.string.importing_some_entries_failed + else -> R.string.importing_failed + }) + callback(result != IMPORT_FAIL) + } +} diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/extensions/Activity.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/extensions/Activity.kt index 997b899d..3cb06261 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/extensions/Activity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/extensions/Activity.kt @@ -8,6 +8,7 @@ import com.simplemobiletools.commons.extensions.toast import com.simplemobiletools.commons.helpers.PERMISSION_CALL_PHONE import com.simplemobiletools.commons.models.RadioItem import com.simplemobiletools.contacts.activities.SimpleActivity +import com.simplemobiletools.contacts.helpers.ContactsHelper import com.simplemobiletools.contacts.models.Contact fun SimpleActivity.startCallIntent(recipient: String) { @@ -40,3 +41,23 @@ fun SimpleActivity.tryStartCall(contact: Contact) { } } } + +fun SimpleActivity.showContactSourcePicker(currentSource: String, callback: (newSource: String) -> Unit) { + ContactsHelper(this).getContactSources { + val items = ArrayList() + val sources = it + var currentSourceIndex = -1 + sources.forEachIndexed { index, account -> + items.add(RadioItem(index, account)) + if (account == currentSource) { + currentSourceIndex = index + } + } + + runOnUiThread { + RadioGroupDialog(this, items, currentSourceIndex) { + callback(sources[it as Int]) + } + } + } +} diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt index 6d919c8b..781c4acd 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt @@ -22,3 +22,14 @@ val PHOTO_UNCHANGED = 4 val DEFAULT_EMAIL_TYPE = ContactsContract.CommonDataKinds.Email.TYPE_HOME val DEFAULT_PHONE_NUMBER_TYPE = ContactsContract.CommonDataKinds.Phone.TYPE_MOBILE val DEFAULT_EVENT_TYPE = ContactsContract.CommonDataKinds.Event.TYPE_BIRTHDAY + +// export/import +val BEGIN_VCARD = "BEGIN:VCARD" +val END_VCARD = "END:VCARD" +val N = "N" +val FN = "FN" +val TEL = "TEL" +val VERSION = "VERSION" +val BDAY = "BDAY" +val PHOTO = "PHOTO" +val EMAIL = "EMAIL" diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfImporter.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfImporter.kt new file mode 100644 index 00000000..c486ca83 --- /dev/null +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfImporter.kt @@ -0,0 +1,53 @@ +package com.simplemobiletools.contacts.helpers + +import android.widget.Toast +import com.simplemobiletools.commons.extensions.showErrorToast +import com.simplemobiletools.contacts.activities.SimpleActivity +import com.simplemobiletools.contacts.helpers.VcfImporter.ImportResult.* +import java.io.File + +class VcfImporter(val activity: SimpleActivity) { + enum class ImportResult { + IMPORT_FAIL, IMPORT_OK, IMPORT_PARTIAL + } + + private var contactsImported = 0 + private var contactsFailed = 0 + + fun importContacts(path: String, targetContactSource: String): ImportResult { + try { + val inputStream = if (path.contains("/")) { + File(path).inputStream() + } else { + activity.assets.open(path) + } + + inputStream.bufferedReader().use { + while (true) { + val line = it.readLine() ?: break + if (line.trim().isEmpty()) + continue + + if (line == BEGIN_VCARD) { + resetValues() + } else if (line == END_VCARD) { + contactsImported++ + } + } + } + } catch (e: Exception) { + activity.showErrorToast(e, Toast.LENGTH_LONG) + contactsFailed++ + } + + return when { + contactsImported == 0 -> IMPORT_FAIL + contactsFailed > 0 -> IMPORT_PARTIAL + else -> IMPORT_OK + } + } + + private fun resetValues() { + + } +} diff --git a/app/src/main/res/layout/dialog_import_contacts.xml b/app/src/main/res/layout/dialog_import_contacts.xml new file mode 100644 index 00000000..98ef049f --- /dev/null +++ b/app/src/main/res/layout/dialog_import_contacts.xml @@ -0,0 +1,28 @@ + + + + + + + + From 5717dd48ed38be2b5c3c3ab68b886ae4d7168a46 Mon Sep 17 00:00:00 2001 From: tibbi Date: Sun, 14 Jan 2018 22:54:06 +0100 Subject: [PATCH 09/54] remove some constants boilerplate by adding a more specific import --- .../contacts/activities/ContactActivity.kt | 85 ++++++----- .../contacts/helpers/Constants.kt | 28 ++-- .../contacts/helpers/ContactsHelper.kt | 143 +++++++++--------- 3 files changed, 134 insertions(+), 122 deletions(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt index 6269120a..ffd137d7 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt @@ -1,5 +1,6 @@ package com.simplemobiletools.contacts.activities +import android.provider.ContactsContract.CommonDataKinds import android.app.DatePickerDialog import android.content.ClipData import android.content.Intent @@ -453,14 +454,14 @@ class ContactActivity : SimpleActivity() { private fun showNumberTypePicker(numberTypeField: TextView) { val items = arrayListOf( - RadioItem(ContactsContract.CommonDataKinds.Phone.TYPE_MOBILE, getString(R.string.mobile)), - RadioItem(ContactsContract.CommonDataKinds.Phone.TYPE_HOME, getString(R.string.home)), - RadioItem(ContactsContract.CommonDataKinds.Phone.TYPE_WORK, getString(R.string.work)), - RadioItem(ContactsContract.CommonDataKinds.Phone.TYPE_MAIN, getString(R.string.main_number)), - RadioItem(ContactsContract.CommonDataKinds.Phone.TYPE_FAX_WORK, getString(R.string.work_fax)), - RadioItem(ContactsContract.CommonDataKinds.Phone.TYPE_FAX_HOME, getString(R.string.home_fax)), - RadioItem(ContactsContract.CommonDataKinds.Phone.TYPE_PAGER, getString(R.string.pager)), - RadioItem(ContactsContract.CommonDataKinds.Phone.TYPE_OTHER, getString(R.string.other)) + RadioItem(CommonDataKinds.Phone.TYPE_MOBILE, getString(R.string.mobile)), + RadioItem(CommonDataKinds.Phone.TYPE_HOME, getString(R.string.home)), + RadioItem(CommonDataKinds.Phone.TYPE_WORK, getString(R.string.work)), + RadioItem(CommonDataKinds.Phone.TYPE_MAIN, getString(R.string.main_number)), + RadioItem(CommonDataKinds.Phone.TYPE_FAX_WORK, getString(R.string.work_fax)), + RadioItem(CommonDataKinds.Phone.TYPE_FAX_HOME, getString(R.string.home_fax)), + RadioItem(CommonDataKinds.Phone.TYPE_PAGER, getString(R.string.pager)), + RadioItem(CommonDataKinds.Phone.TYPE_OTHER, getString(R.string.other)) ) val currentNumberTypeId = getPhoneNumberTypeId(numberTypeField.value) @@ -471,10 +472,10 @@ class ContactActivity : SimpleActivity() { private fun showEmailTypePicker(emailTypeField: TextView) { val items = arrayListOf( - RadioItem(ContactsContract.CommonDataKinds.Email.TYPE_HOME, getString(R.string.home)), - RadioItem(ContactsContract.CommonDataKinds.Email.TYPE_WORK, getString(R.string.work)), - RadioItem(ContactsContract.CommonDataKinds.Email.TYPE_MOBILE, getString(R.string.mobile)), - RadioItem(ContactsContract.CommonDataKinds.Email.TYPE_OTHER, getString(R.string.other)) + RadioItem(CommonDataKinds.Email.TYPE_HOME, getString(R.string.home)), + RadioItem(CommonDataKinds.Email.TYPE_WORK, getString(R.string.work)), + RadioItem(CommonDataKinds.Email.TYPE_MOBILE, getString(R.string.mobile)), + RadioItem(CommonDataKinds.Email.TYPE_OTHER, getString(R.string.other)) ) val currentEmailTypeId = getEmailTypeId(emailTypeField.value) @@ -485,9 +486,9 @@ class ContactActivity : SimpleActivity() { private fun showEventTypePicker(eventTypeField: TextView) { val items = arrayListOf( - RadioItem(ContactsContract.CommonDataKinds.Event.TYPE_BIRTHDAY, getString(R.string.birthday)), - RadioItem(ContactsContract.CommonDataKinds.Event.TYPE_ANNIVERSARY, getString(R.string.anniversary)), - RadioItem(ContactsContract.CommonDataKinds.Event.TYPE_OTHER, getString(R.string.other)) + RadioItem(CommonDataKinds.Event.TYPE_BIRTHDAY, getString(R.string.birthday)), + RadioItem(CommonDataKinds.Event.TYPE_ANNIVERSARY, getString(R.string.anniversary)), + RadioItem(CommonDataKinds.Event.TYPE_OTHER, getString(R.string.other)) ) val currentEventTypeId = getEventTypeId(eventTypeField.value) @@ -748,50 +749,50 @@ class ContactActivity : SimpleActivity() { } private fun getPhoneNumberTextId(type: Int) = when (type) { - ContactsContract.CommonDataKinds.Phone.TYPE_MOBILE -> R.string.mobile - ContactsContract.CommonDataKinds.Phone.TYPE_HOME -> R.string.home - ContactsContract.CommonDataKinds.Phone.TYPE_WORK -> R.string.work - ContactsContract.CommonDataKinds.Phone.TYPE_MAIN -> R.string.main_number - ContactsContract.CommonDataKinds.Phone.TYPE_FAX_WORK -> R.string.work_fax - ContactsContract.CommonDataKinds.Phone.TYPE_FAX_HOME -> R.string.home_fax - ContactsContract.CommonDataKinds.Phone.TYPE_PAGER -> R.string.pager + CommonDataKinds.Phone.TYPE_MOBILE -> R.string.mobile + CommonDataKinds.Phone.TYPE_HOME -> R.string.home + CommonDataKinds.Phone.TYPE_WORK -> R.string.work + CommonDataKinds.Phone.TYPE_MAIN -> R.string.main_number + CommonDataKinds.Phone.TYPE_FAX_WORK -> R.string.work_fax + CommonDataKinds.Phone.TYPE_FAX_HOME -> R.string.home_fax + CommonDataKinds.Phone.TYPE_PAGER -> R.string.pager else -> R.string.other } private fun getPhoneNumberTypeId(value: String) = when (value) { - getString(R.string.mobile) -> ContactsContract.CommonDataKinds.Phone.TYPE_MOBILE - getString(R.string.home) -> ContactsContract.CommonDataKinds.Phone.TYPE_HOME - getString(R.string.work) -> ContactsContract.CommonDataKinds.Phone.TYPE_WORK - getString(R.string.main_number) -> ContactsContract.CommonDataKinds.Phone.TYPE_MAIN - getString(R.string.work_fax) -> ContactsContract.CommonDataKinds.Phone.TYPE_FAX_WORK - getString(R.string.home_fax) -> ContactsContract.CommonDataKinds.Phone.TYPE_FAX_HOME - getString(R.string.pager) -> ContactsContract.CommonDataKinds.Phone.TYPE_PAGER - else -> ContactsContract.CommonDataKinds.Phone.TYPE_OTHER + getString(R.string.mobile) -> CommonDataKinds.Phone.TYPE_MOBILE + getString(R.string.home) -> CommonDataKinds.Phone.TYPE_HOME + getString(R.string.work) -> CommonDataKinds.Phone.TYPE_WORK + getString(R.string.main_number) -> CommonDataKinds.Phone.TYPE_MAIN + getString(R.string.work_fax) -> CommonDataKinds.Phone.TYPE_FAX_WORK + getString(R.string.home_fax) -> CommonDataKinds.Phone.TYPE_FAX_HOME + getString(R.string.pager) -> CommonDataKinds.Phone.TYPE_PAGER + else -> CommonDataKinds.Phone.TYPE_OTHER } private fun getEmailTextId(type: Int) = when (type) { - ContactsContract.CommonDataKinds.Email.TYPE_HOME -> R.string.home - ContactsContract.CommonDataKinds.Email.TYPE_WORK -> R.string.work - ContactsContract.CommonDataKinds.Email.TYPE_MOBILE -> R.string.mobile + CommonDataKinds.Email.TYPE_HOME -> R.string.home + CommonDataKinds.Email.TYPE_WORK -> R.string.work + CommonDataKinds.Email.TYPE_MOBILE -> R.string.mobile else -> R.string.other } private fun getEmailTypeId(value: String) = when (value) { - getString(R.string.home) -> ContactsContract.CommonDataKinds.Email.TYPE_HOME - getString(R.string.work) -> ContactsContract.CommonDataKinds.Email.TYPE_WORK - getString(R.string.mobile) -> ContactsContract.CommonDataKinds.Email.TYPE_MOBILE - else -> ContactsContract.CommonDataKinds.Email.TYPE_OTHER + getString(R.string.home) -> CommonDataKinds.Email.TYPE_HOME + getString(R.string.work) -> CommonDataKinds.Email.TYPE_WORK + getString(R.string.mobile) -> CommonDataKinds.Email.TYPE_MOBILE + else -> CommonDataKinds.Email.TYPE_OTHER } private fun getEventTextId(type: Int) = when (type) { - ContactsContract.CommonDataKinds.Event.TYPE_BIRTHDAY -> R.string.birthday - ContactsContract.CommonDataKinds.Event.TYPE_ANNIVERSARY -> R.string.anniversary + CommonDataKinds.Event.TYPE_BIRTHDAY -> R.string.birthday + CommonDataKinds.Event.TYPE_ANNIVERSARY -> R.string.anniversary else -> R.string.other } private fun getEventTypeId(value: String) = when (value) { - getString(R.string.birthday) -> ContactsContract.CommonDataKinds.Event.TYPE_BIRTHDAY - getString(R.string.anniversary) -> ContactsContract.CommonDataKinds.Event.TYPE_ANNIVERSARY - else -> ContactsContract.CommonDataKinds.Event.TYPE_OTHER + getString(R.string.birthday) -> CommonDataKinds.Event.TYPE_BIRTHDAY + getString(R.string.anniversary) -> CommonDataKinds.Event.TYPE_ANNIVERSARY + else -> CommonDataKinds.Event.TYPE_OTHER } } diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt index 781c4acd..23dd6b9e 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt @@ -1,6 +1,6 @@ package com.simplemobiletools.contacts.helpers -import android.provider.ContactsContract +import android.provider.ContactsContract.CommonDataKinds // shared prefs val CALL_CONTACT_ON_CLICK = "call_contact_on_click" @@ -19,17 +19,27 @@ val PHOTO_CHANGED = 3 val PHOTO_UNCHANGED = 4 // default contact values -val DEFAULT_EMAIL_TYPE = ContactsContract.CommonDataKinds.Email.TYPE_HOME -val DEFAULT_PHONE_NUMBER_TYPE = ContactsContract.CommonDataKinds.Phone.TYPE_MOBILE -val DEFAULT_EVENT_TYPE = ContactsContract.CommonDataKinds.Event.TYPE_BIRTHDAY +val DEFAULT_EMAIL_TYPE = CommonDataKinds.Email.TYPE_HOME +val DEFAULT_PHONE_NUMBER_TYPE = CommonDataKinds.Phone.TYPE_MOBILE +val DEFAULT_EVENT_TYPE = CommonDataKinds.Event.TYPE_BIRTHDAY // export/import val BEGIN_VCARD = "BEGIN:VCARD" val END_VCARD = "END:VCARD" -val N = "N" -val FN = "FN" +val N = "N:" +val FN = "FN:" val TEL = "TEL" -val VERSION = "VERSION" -val BDAY = "BDAY" +val BDAY = "BDAY:" val PHOTO = "PHOTO" -val EMAIL = "EMAIL" +val EMAIL = "EMAIL;" + +// phone number types +val CELL = "CELL" +val WORK = "WORK" +val HOME = "HOME" +val PREF = "PREF" +val WORK_FAX = "WORK;FAX" +val HOME_FAX = "HOME;FAX" +val PAGER = "PAGER" +val VOICE = "VOICE" +val EMPTY = "" diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt index ce3e774d..0875ca3a 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt @@ -8,6 +8,7 @@ import android.database.Cursor import android.graphics.Bitmap import android.net.Uri import android.provider.ContactsContract +import android.provider.ContactsContract.CommonDataKinds import android.provider.MediaStore import android.util.SparseArray import com.simplemobiletools.commons.activities.BaseSimpleActivity @@ -35,7 +36,7 @@ class ContactsHelper(val activity: BaseSimpleActivity) { val uri = ContactsContract.Data.CONTENT_URI val projection = getContactProjection() val selection = "${ContactsContract.Data.MIMETYPE} = ?" - val selectionArgs = arrayOf(ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE) + val selectionArgs = arrayOf(CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE) val sortOrder = getSortString() var cursor: Cursor? = null @@ -44,15 +45,15 @@ class ContactsHelper(val activity: BaseSimpleActivity) { if (cursor?.moveToFirst() == true) { do { val id = cursor.getIntValue(ContactsContract.Data.RAW_CONTACT_ID) - val firstName = cursor.getStringValue(ContactsContract.CommonDataKinds.StructuredName.GIVEN_NAME) ?: "" - val middleName = cursor.getStringValue(ContactsContract.CommonDataKinds.StructuredName.MIDDLE_NAME) ?: "" - val surname = cursor.getStringValue(ContactsContract.CommonDataKinds.StructuredName.FAMILY_NAME) ?: "" - val photoUri = cursor.getStringValue(ContactsContract.CommonDataKinds.StructuredName.PHOTO_URI) ?: "" + val firstName = cursor.getStringValue(CommonDataKinds.StructuredName.GIVEN_NAME) ?: "" + val middleName = cursor.getStringValue(CommonDataKinds.StructuredName.MIDDLE_NAME) ?: "" + val surname = cursor.getStringValue(CommonDataKinds.StructuredName.FAMILY_NAME) ?: "" + val photoUri = cursor.getStringValue(CommonDataKinds.StructuredName.PHOTO_URI) ?: "" val number = ArrayList() // proper value is obtained below val emails = ArrayList() val events = ArrayList() val accountName = cursor.getStringValue(ContactsContract.RawContacts.ACCOUNT_NAME) - val starred = cursor.getIntValue(ContactsContract.CommonDataKinds.StructuredName.STARRED) + val starred = cursor.getIntValue(CommonDataKinds.StructuredName.STARRED) val contactId = cursor.getIntValue(ContactsContract.Data.CONTACT_ID) val contact = Contact(id, firstName, middleName, surname, photoUri, number, emails, events, accountName, starred, contactId) contacts.put(id, contact) @@ -88,11 +89,11 @@ class ContactsHelper(val activity: BaseSimpleActivity) { private fun getPhoneNumbers(contactId: Int? = null): SparseArray> { val phoneNumbers = SparseArray>() - val uri = ContactsContract.CommonDataKinds.Phone.CONTENT_URI + val uri = CommonDataKinds.Phone.CONTENT_URI val projection = arrayOf( ContactsContract.Data.RAW_CONTACT_ID, - ContactsContract.CommonDataKinds.Phone.NUMBER, - ContactsContract.CommonDataKinds.Phone.TYPE + CommonDataKinds.Phone.NUMBER, + CommonDataKinds.Phone.TYPE ) val selection = if (contactId == null) null else "${ContactsContract.Data.RAW_CONTACT_ID} = ?" @@ -104,8 +105,8 @@ class ContactsHelper(val activity: BaseSimpleActivity) { if (cursor?.moveToFirst() == true) { do { val id = cursor.getIntValue(ContactsContract.Data.RAW_CONTACT_ID) - val number = cursor.getStringValue(ContactsContract.CommonDataKinds.Phone.NUMBER) - val type = cursor.getIntValue(ContactsContract.CommonDataKinds.Phone.TYPE) + val number = cursor.getStringValue(CommonDataKinds.Phone.NUMBER) + val type = cursor.getIntValue(CommonDataKinds.Phone.TYPE) if (phoneNumbers[id] == null) { phoneNumbers.put(id, ArrayList()) @@ -122,11 +123,11 @@ class ContactsHelper(val activity: BaseSimpleActivity) { private fun getEmails(contactId: Int? = null): SparseArray> { val emails = SparseArray>() - val uri = ContactsContract.CommonDataKinds.Email.CONTENT_URI + val uri = CommonDataKinds.Email.CONTENT_URI val projection = arrayOf( ContactsContract.Data.RAW_CONTACT_ID, - ContactsContract.CommonDataKinds.Email.DATA, - ContactsContract.CommonDataKinds.Email.TYPE + CommonDataKinds.Email.DATA, + CommonDataKinds.Email.TYPE ) val selection = if (contactId == null) null else "${ContactsContract.Data.RAW_CONTACT_ID} = ?" @@ -138,8 +139,8 @@ class ContactsHelper(val activity: BaseSimpleActivity) { if (cursor?.moveToFirst() == true) { do { val id = cursor.getIntValue(ContactsContract.Data.RAW_CONTACT_ID) - val email = cursor.getStringValue(ContactsContract.CommonDataKinds.Email.DATA) ?: continue - val type = cursor.getIntValue(ContactsContract.CommonDataKinds.Email.TYPE) + val email = cursor.getStringValue(CommonDataKinds.Email.DATA) ?: continue + val type = cursor.getIntValue(CommonDataKinds.Email.TYPE) if (emails[id] == null) { emails.put(id, ArrayList()) @@ -159,18 +160,18 @@ class ContactsHelper(val activity: BaseSimpleActivity) { val events = SparseArray>() val uri = ContactsContract.Data.CONTENT_URI val projection = arrayOf( - ContactsContract.CommonDataKinds.Event.START_DATE, - ContactsContract.CommonDataKinds.Event.TYPE + CommonDataKinds.Event.START_DATE, + CommonDataKinds.Event.TYPE ) val selection = "${ContactsContract.Data.RAW_CONTACT_ID} = ? AND ${ContactsContract.Data.MIMETYPE} = ?" - val selectionArgs = arrayOf(contactId.toString(), ContactsContract.CommonDataKinds.Event.CONTENT_ITEM_TYPE) + val selectionArgs = arrayOf(contactId.toString(), CommonDataKinds.Event.CONTENT_ITEM_TYPE) var cursor: Cursor? = null try { cursor = activity.contentResolver.query(uri, projection, selection, selectionArgs, null) if (cursor?.moveToFirst() == true) { do { - val startDate = cursor.getStringValue(ContactsContract.CommonDataKinds.Event.START_DATE) - val type = cursor.getIntValue(ContactsContract.CommonDataKinds.Event.TYPE) + val startDate = cursor.getStringValue(CommonDataKinds.Event.START_DATE) + val type = cursor.getIntValue(CommonDataKinds.Event.TYPE) if (events[contactId] == null) { events.put(contactId, ArrayList()) @@ -196,20 +197,20 @@ class ContactsHelper(val activity: BaseSimpleActivity) { val uri = ContactsContract.Data.CONTENT_URI val projection = getContactProjection() val selection = "${ContactsContract.Data.MIMETYPE} = ? AND ${ContactsContract.Data.RAW_CONTACT_ID} = ?" - val selectionArgs = arrayOf(ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE, id.toString()) + val selectionArgs = arrayOf(CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE, id.toString()) var cursor: Cursor? = null try { cursor = activity.contentResolver.query(uri, projection, selection, selectionArgs, null) if (cursor?.moveToFirst() == true) { - val firstName = cursor.getStringValue(ContactsContract.CommonDataKinds.StructuredName.GIVEN_NAME) ?: "" - val middleName = cursor.getStringValue(ContactsContract.CommonDataKinds.StructuredName.MIDDLE_NAME) ?: "" - val surname = cursor.getStringValue(ContactsContract.CommonDataKinds.StructuredName.FAMILY_NAME) ?: "" - val photoUri = cursor.getStringValue(ContactsContract.CommonDataKinds.Phone.PHOTO_URI) ?: "" + val firstName = cursor.getStringValue(CommonDataKinds.StructuredName.GIVEN_NAME) ?: "" + val middleName = cursor.getStringValue(CommonDataKinds.StructuredName.MIDDLE_NAME) ?: "" + val surname = cursor.getStringValue(CommonDataKinds.StructuredName.FAMILY_NAME) ?: "" + val photoUri = cursor.getStringValue(CommonDataKinds.Phone.PHOTO_URI) ?: "" val number = getPhoneNumbers(id)[id] ?: ArrayList() val emails = getEmails(id)[id] ?: ArrayList() val events = getEvents(id)[id] ?: ArrayList() val accountName = cursor.getStringValue(ContactsContract.RawContacts.ACCOUNT_NAME) - val starred = cursor.getIntValue(ContactsContract.CommonDataKinds.StructuredName.STARRED) + val starred = cursor.getIntValue(CommonDataKinds.StructuredName.STARRED) val contactId = cursor.getIntValue(ContactsContract.Data.CONTACT_ID) return Contact(id, firstName, middleName, surname, photoUri, number, emails, events, accountName, starred, contactId) } @@ -264,21 +265,21 @@ class ContactsHelper(val activity: BaseSimpleActivity) { private fun getContactProjection() = arrayOf( ContactsContract.Data.CONTACT_ID, ContactsContract.Data.RAW_CONTACT_ID, - ContactsContract.CommonDataKinds.StructuredName.GIVEN_NAME, - ContactsContract.CommonDataKinds.StructuredName.MIDDLE_NAME, - ContactsContract.CommonDataKinds.StructuredName.FAMILY_NAME, - ContactsContract.CommonDataKinds.StructuredName.PHOTO_URI, - ContactsContract.CommonDataKinds.StructuredName.STARRED, + CommonDataKinds.StructuredName.GIVEN_NAME, + CommonDataKinds.StructuredName.MIDDLE_NAME, + CommonDataKinds.StructuredName.FAMILY_NAME, + CommonDataKinds.StructuredName.PHOTO_URI, + CommonDataKinds.StructuredName.STARRED, ContactsContract.RawContacts.ACCOUNT_NAME ) private fun getSortString(): String { val sorting = activity.config.sorting var sort = when { - sorting and SORT_BY_FIRST_NAME != 0 -> "${ContactsContract.CommonDataKinds.StructuredName.GIVEN_NAME} COLLATE NOCASE" - sorting and SORT_BY_MIDDLE_NAME != 0 -> "${ContactsContract.CommonDataKinds.StructuredName.MIDDLE_NAME} COLLATE NOCASE" - sorting and SORT_BY_SURNAME != 0 -> "${ContactsContract.CommonDataKinds.StructuredName.FAMILY_NAME} COLLATE NOCASE" - else -> ContactsContract.CommonDataKinds.Phone.NUMBER + sorting and SORT_BY_FIRST_NAME != 0 -> "${CommonDataKinds.StructuredName.GIVEN_NAME} COLLATE NOCASE" + sorting and SORT_BY_MIDDLE_NAME != 0 -> "${CommonDataKinds.StructuredName.MIDDLE_NAME} COLLATE NOCASE" + sorting and SORT_BY_SURNAME != 0 -> "${CommonDataKinds.StructuredName.FAMILY_NAME} COLLATE NOCASE" + else -> CommonDataKinds.Phone.NUMBER } if (sorting and SORT_DESCENDING != 0) { @@ -294,18 +295,18 @@ class ContactsHelper(val activity: BaseSimpleActivity) { val operations = ArrayList() ContentProviderOperation.newUpdate(ContactsContract.Data.CONTENT_URI).apply { val selection = "${ContactsContract.Data.RAW_CONTACT_ID} = ? AND ${ContactsContract.Data.MIMETYPE} = ?" - val selectionArgs = arrayOf(contact.id.toString(), ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE) + val selectionArgs = arrayOf(contact.id.toString(), CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE) withSelection(selection, selectionArgs) - withValue(ContactsContract.CommonDataKinds.StructuredName.GIVEN_NAME, contact.firstName) - withValue(ContactsContract.CommonDataKinds.StructuredName.MIDDLE_NAME, contact.middleName) - withValue(ContactsContract.CommonDataKinds.StructuredName.FAMILY_NAME, contact.surname) + withValue(CommonDataKinds.StructuredName.GIVEN_NAME, contact.firstName) + withValue(CommonDataKinds.StructuredName.MIDDLE_NAME, contact.middleName) + withValue(CommonDataKinds.StructuredName.FAMILY_NAME, contact.surname) operations.add(build()) } // delete phone numbers ContentProviderOperation.newDelete(ContactsContract.Data.CONTENT_URI).apply { val selection = "${ContactsContract.Data.RAW_CONTACT_ID} = ? AND ${ContactsContract.Data.MIMETYPE} = ? " - val selectionArgs = arrayOf(contact.id.toString(), ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE) + val selectionArgs = arrayOf(contact.id.toString(), CommonDataKinds.Phone.CONTENT_ITEM_TYPE) withSelection(selection, selectionArgs) operations.add(build()) } @@ -314,9 +315,9 @@ class ContactsHelper(val activity: BaseSimpleActivity) { contact.phoneNumbers.forEach { ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI).apply { withValue(ContactsContract.Data.RAW_CONTACT_ID, contact.id) - withValue(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE) - withValue(ContactsContract.CommonDataKinds.Phone.NUMBER, it.value) - withValue(ContactsContract.CommonDataKinds.Phone.TYPE, it.type) + withValue(ContactsContract.Data.MIMETYPE, CommonDataKinds.Phone.CONTENT_ITEM_TYPE) + withValue(CommonDataKinds.Phone.NUMBER, it.value) + withValue(CommonDataKinds.Phone.TYPE, it.type) operations.add(build()) } } @@ -324,7 +325,7 @@ class ContactsHelper(val activity: BaseSimpleActivity) { // delete emails ContentProviderOperation.newDelete(ContactsContract.Data.CONTENT_URI).apply { val selection = "${ContactsContract.Data.RAW_CONTACT_ID} = ? AND ${ContactsContract.Data.MIMETYPE} = ? " - val selectionArgs = arrayOf(contact.id.toString(), ContactsContract.CommonDataKinds.Email.CONTENT_ITEM_TYPE) + val selectionArgs = arrayOf(contact.id.toString(), CommonDataKinds.Email.CONTENT_ITEM_TYPE) withSelection(selection, selectionArgs) operations.add(build()) } @@ -333,9 +334,9 @@ class ContactsHelper(val activity: BaseSimpleActivity) { contact.emails.forEach { ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI).apply { withValue(ContactsContract.Data.RAW_CONTACT_ID, contact.id) - withValue(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Email.CONTENT_ITEM_TYPE) - withValue(ContactsContract.CommonDataKinds.Email.DATA, it.value) - withValue(ContactsContract.CommonDataKinds.Email.TYPE, it.type) + withValue(ContactsContract.Data.MIMETYPE, CommonDataKinds.Email.CONTENT_ITEM_TYPE) + withValue(CommonDataKinds.Email.DATA, it.value) + withValue(CommonDataKinds.Email.TYPE, it.type) operations.add(build()) } } @@ -343,7 +344,7 @@ class ContactsHelper(val activity: BaseSimpleActivity) { // delete events ContentProviderOperation.newDelete(ContactsContract.Data.CONTENT_URI).apply { val selection = "${ContactsContract.Data.RAW_CONTACT_ID} = ? AND ${ContactsContract.Data.MIMETYPE} = ? " - val selectionArgs = arrayOf(contact.id.toString(), ContactsContract.CommonDataKinds.Event.CONTENT_ITEM_TYPE) + val selectionArgs = arrayOf(contact.id.toString(), CommonDataKinds.Event.CONTENT_ITEM_TYPE) withSelection(selection, selectionArgs) operations.add(build()) } @@ -352,9 +353,9 @@ class ContactsHelper(val activity: BaseSimpleActivity) { contact.events.forEach { ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI).apply { withValue(ContactsContract.Data.RAW_CONTACT_ID, contact.id) - withValue(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Event.CONTENT_ITEM_TYPE) - withValue(ContactsContract.CommonDataKinds.Event.START_DATE, it.value) - withValue(ContactsContract.CommonDataKinds.Event.TYPE, it.type) + withValue(ContactsContract.Data.MIMETYPE, CommonDataKinds.Event.CONTENT_ITEM_TYPE) + withValue(CommonDataKinds.Event.START_DATE, it.value) + withValue(CommonDataKinds.Event.TYPE, it.type) operations.add(build()) } } @@ -398,8 +399,8 @@ class ContactsHelper(val activity: BaseSimpleActivity) { ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI).apply { withValue(ContactsContract.Data.RAW_CONTACT_ID, contact.id) - withValue(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Photo.CONTENT_ITEM_TYPE) - withValue(ContactsContract.CommonDataKinds.Photo.PHOTO, scaledSizePhotoData) + withValue(ContactsContract.Data.MIMETYPE, CommonDataKinds.Photo.CONTENT_ITEM_TYPE) + withValue(CommonDataKinds.Photo.PHOTO, scaledSizePhotoData) operations.add(build()) } @@ -411,7 +412,7 @@ class ContactsHelper(val activity: BaseSimpleActivity) { private fun removePhoto(contact: Contact, operations: ArrayList): ArrayList { ContentProviderOperation.newDelete(ContactsContract.Data.CONTENT_URI).apply { val selection = "${ContactsContract.Data.RAW_CONTACT_ID} = ? AND ${ContactsContract.Data.MIMETYPE} = ?" - val selectionArgs = arrayOf(contact.id.toString(), ContactsContract.CommonDataKinds.Photo.CONTENT_ITEM_TYPE) + val selectionArgs = arrayOf(contact.id.toString(), CommonDataKinds.Photo.CONTENT_ITEM_TYPE) withSelection(selection, selectionArgs) operations.add(build()) } @@ -432,10 +433,10 @@ class ContactsHelper(val activity: BaseSimpleActivity) { // names ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI).apply { withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0) - withValue(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE) - withValue(ContactsContract.CommonDataKinds.StructuredName.GIVEN_NAME, contact.firstName) - withValue(ContactsContract.CommonDataKinds.StructuredName.MIDDLE_NAME, contact.middleName) - withValue(ContactsContract.CommonDataKinds.StructuredName.FAMILY_NAME, contact.surname) + withValue(ContactsContract.Data.MIMETYPE, CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE) + withValue(CommonDataKinds.StructuredName.GIVEN_NAME, contact.firstName) + withValue(CommonDataKinds.StructuredName.MIDDLE_NAME, contact.middleName) + withValue(CommonDataKinds.StructuredName.FAMILY_NAME, contact.surname) operations.add(build()) } @@ -443,9 +444,9 @@ class ContactsHelper(val activity: BaseSimpleActivity) { contact.phoneNumbers.forEach { ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI).apply { withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0) - withValue(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE) - withValue(ContactsContract.CommonDataKinds.Phone.NUMBER, it.value) - withValue(ContactsContract.CommonDataKinds.Phone.TYPE, it.type) + withValue(ContactsContract.Data.MIMETYPE, CommonDataKinds.Phone.CONTENT_ITEM_TYPE) + withValue(CommonDataKinds.Phone.NUMBER, it.value) + withValue(CommonDataKinds.Phone.TYPE, it.type) operations.add(build()) } } @@ -454,9 +455,9 @@ class ContactsHelper(val activity: BaseSimpleActivity) { contact.emails.forEach { ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI).apply { withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0) - withValue(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Email.CONTENT_ITEM_TYPE) - withValue(ContactsContract.CommonDataKinds.Email.DATA, it.value) - withValue(ContactsContract.CommonDataKinds.Email.TYPE, it.type) + withValue(ContactsContract.Data.MIMETYPE, CommonDataKinds.Email.CONTENT_ITEM_TYPE) + withValue(CommonDataKinds.Email.DATA, it.value) + withValue(CommonDataKinds.Email.TYPE, it.type) operations.add(build()) } } @@ -465,9 +466,9 @@ class ContactsHelper(val activity: BaseSimpleActivity) { contact.events.forEach { ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI).apply { withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0) - withValue(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Event.CONTENT_ITEM_TYPE) - withValue(ContactsContract.CommonDataKinds.Event.START_DATE, it.value) - withValue(ContactsContract.CommonDataKinds.Event.TYPE, it.type) + withValue(ContactsContract.Data.MIMETYPE, CommonDataKinds.Event.CONTENT_ITEM_TYPE) + withValue(CommonDataKinds.Event.START_DATE, it.value) + withValue(CommonDataKinds.Event.TYPE, it.type) operations.add(build()) } } @@ -489,8 +490,8 @@ class ContactsHelper(val activity: BaseSimpleActivity) { ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI).apply { withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0) - withValue(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Photo.CONTENT_ITEM_TYPE) - withValue(ContactsContract.CommonDataKinds.Photo.PHOTO, scaledSizePhotoData) + withValue(ContactsContract.Data.MIMETYPE, CommonDataKinds.Photo.CONTENT_ITEM_TYPE) + withValue(CommonDataKinds.Photo.PHOTO, scaledSizePhotoData) operations.add(build()) } } @@ -540,7 +541,7 @@ class ContactsHelper(val activity: BaseSimpleActivity) { val uri = ContactsContract.Data.CONTENT_URI val projection = arrayOf(ContactsContract.Data.CONTACT_ID, ContactsContract.Data.LOOKUP_KEY) val selection = "${ContactsContract.Data.MIMETYPE} = ? AND ${ContactsContract.Data.RAW_CONTACT_ID} = ?" - val selectionArgs = arrayOf(ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE, contactId) + val selectionArgs = arrayOf(CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE, contactId) var cursor: Cursor? = null try { cursor = activity.contentResolver.query(uri, projection, selection, selectionArgs, null) From e0257c742d26a9016893b1c1df2d6c4d4981e2be Mon Sep 17 00:00:00 2001 From: tibbi Date: Sun, 14 Jan 2018 23:26:56 +0100 Subject: [PATCH 10/54] implement the actual contact importer parser --- .../contacts/helpers/Constants.kt | 9 +- .../contacts/helpers/VcfImporter.kt | 88 +++++++++++++++++-- 2 files changed, 86 insertions(+), 11 deletions(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt index 23dd6b9e..30708ee7 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt @@ -27,13 +27,13 @@ val DEFAULT_EVENT_TYPE = CommonDataKinds.Event.TYPE_BIRTHDAY val BEGIN_VCARD = "BEGIN:VCARD" val END_VCARD = "END:VCARD" val N = "N:" -val FN = "FN:" val TEL = "TEL" val BDAY = "BDAY:" +val ANNIVERSARY = "ANNIVERSARY:" val PHOTO = "PHOTO" -val EMAIL = "EMAIL;" +val EMAIL = "EMAIL" -// phone number types +// phone number/email types val CELL = "CELL" val WORK = "WORK" val HOME = "HOME" @@ -41,5 +41,4 @@ val PREF = "PREF" val WORK_FAX = "WORK;FAX" val HOME_FAX = "HOME;FAX" val PAGER = "PAGER" -val VOICE = "VOICE" -val EMPTY = "" +val MOBILE = "MOBILE" diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfImporter.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfImporter.kt index c486ca83..d2384182 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfImporter.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfImporter.kt @@ -1,9 +1,14 @@ package com.simplemobiletools.contacts.helpers +import android.provider.ContactsContract.CommonDataKinds import android.widget.Toast import com.simplemobiletools.commons.extensions.showErrorToast import com.simplemobiletools.contacts.activities.SimpleActivity import com.simplemobiletools.contacts.helpers.VcfImporter.ImportResult.* +import com.simplemobiletools.contacts.models.Contact +import com.simplemobiletools.contacts.models.Email +import com.simplemobiletools.contacts.models.Event +import com.simplemobiletools.contacts.models.PhoneNumber import java.io.File class VcfImporter(val activity: SimpleActivity) { @@ -11,6 +16,13 @@ class VcfImporter(val activity: SimpleActivity) { IMPORT_FAIL, IMPORT_OK, IMPORT_PARTIAL } + private var curFirstName = "" + private var curMiddleName = "" + private var curSurname = "" + private var curPhoneNumbers = ArrayList() + private var curEmails = ArrayList() + private var curEvents = ArrayList() + private var contactsImported = 0 private var contactsFailed = 0 @@ -25,13 +37,18 @@ class VcfImporter(val activity: SimpleActivity) { inputStream.bufferedReader().use { while (true) { val line = it.readLine() ?: break - if (line.trim().isEmpty()) + if (line.trim().isEmpty()) { continue + } - if (line == BEGIN_VCARD) { - resetValues() - } else if (line == END_VCARD) { - contactsImported++ + when { + line == BEGIN_VCARD -> resetValues() + line.startsWith(N) -> parseNames(line.substring(N.length)) + line.startsWith(TEL) -> addPhoneNumber(line.substring(TEL.length)) + line.startsWith(EMAIL) -> addEmail(line.substring(EMAIL.length)) + line.startsWith(BDAY) -> addBirthday(line.substring(BDAY.length)) + line.startsWith(ANNIVERSARY) -> addAnniversary(line.substring(ANNIVERSARY.length)) + line == END_VCARD -> saveContact(targetContactSource) } } } @@ -47,7 +64,66 @@ class VcfImporter(val activity: SimpleActivity) { } } - private fun resetValues() { + private fun parseNames(names: String) { + val nameParts = names.split(";") + curFirstName = nameParts[1] + curMiddleName = nameParts[2] + curSurname = nameParts[0] + } + private fun addPhoneNumber(phoneNumber: String) { + val phoneParts = phoneNumber.trimStart(';').split(":") + val type = getPhoneNumberTypeId(phoneParts[0]) + val value = phoneParts[1] + curPhoneNumbers.add(PhoneNumber(value, type)) + } + + private fun getPhoneNumberTypeId(type: String) = when (type) { + CELL -> CommonDataKinds.Phone.TYPE_MOBILE + WORK -> CommonDataKinds.Phone.TYPE_WORK + HOME -> CommonDataKinds.Phone.TYPE_HOME + PREF -> CommonDataKinds.Phone.TYPE_MAIN + WORK_FAX -> CommonDataKinds.Phone.TYPE_FAX_WORK + HOME_FAX -> CommonDataKinds.Phone.TYPE_FAX_HOME + PAGER -> CommonDataKinds.Phone.TYPE_PAGER + else -> CommonDataKinds.Phone.TYPE_OTHER + } + + private fun addEmail(email: String) { + val emailParts = email.trimStart(';').split(":") + val type = getEmailTypeId(emailParts[0]) + val value = emailParts[1] + curEmails.add(Email(value, type)) + } + + private fun getEmailTypeId(type: String) = when (type) { + HOME -> CommonDataKinds.Email.TYPE_HOME + WORK -> CommonDataKinds.Email.TYPE_WORK + MOBILE -> CommonDataKinds.Email.TYPE_MOBILE + else -> CommonDataKinds.Email.TYPE_OTHER + } + + private fun addBirthday(birthday: String) { + curEvents.add(Event(birthday, CommonDataKinds.Event.TYPE_BIRTHDAY)) + } + + private fun addAnniversary(anniversary: String) { + curEvents.add(Event(anniversary, CommonDataKinds.Event.TYPE_ANNIVERSARY)) + } + + private fun saveContact(source: String) { + val contact = Contact(0, curFirstName, curMiddleName, curSurname, "", curPhoneNumbers, curEmails, curEvents, source, 0, 0) + if (ContactsHelper(activity).insertContact(contact)) { + contactsImported++ + } + } + + private fun resetValues() { + curFirstName = "" + curMiddleName = "" + curSurname = "" + curPhoneNumbers = ArrayList() + curEmails = ArrayList() + curEvents = ArrayList() } } From 69b68de511b15fe908da8220a05df0d7d829f511 Mon Sep 17 00:00:00 2001 From: tibbi Date: Mon, 15 Jan 2018 00:06:53 +0100 Subject: [PATCH 11/54] properly parse phone numbers at Version 3 vcf files too --- .../contacts/helpers/Constants.kt | 2 ++ .../contacts/helpers/VcfImporter.kt | 23 +++++++++++++++---- 2 files changed, 21 insertions(+), 4 deletions(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt index 30708ee7..5559ff4d 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt @@ -38,6 +38,8 @@ val CELL = "CELL" val WORK = "WORK" val HOME = "HOME" val PREF = "PREF" +val MAIN = "MAIN" +val FAX = "FAX" val WORK_FAX = "WORK;FAX" val HOME_FAX = "HOME;FAX" val PAGER = "PAGER" diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfImporter.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfImporter.kt index d2384182..069cdc70 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfImporter.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfImporter.kt @@ -73,25 +73,40 @@ class VcfImporter(val activity: SimpleActivity) { private fun addPhoneNumber(phoneNumber: String) { val phoneParts = phoneNumber.trimStart(';').split(":") - val type = getPhoneNumberTypeId(phoneParts[0]) + var rawType = phoneParts[0] + var subType = "" + if (rawType.contains('=')) { + val types = rawType.split('=') + if (types.any { it.contains(';') }) { + subType = types[1].split(';').first() + } + rawType = types.last() + } + + val type = getPhoneNumberTypeId(rawType, subType) val value = phoneParts[1] curPhoneNumbers.add(PhoneNumber(value, type)) } - private fun getPhoneNumberTypeId(type: String) = when (type) { + private fun getPhoneNumberTypeId(type: String, subType: String) = when (type) { CELL -> CommonDataKinds.Phone.TYPE_MOBILE WORK -> CommonDataKinds.Phone.TYPE_WORK HOME -> CommonDataKinds.Phone.TYPE_HOME - PREF -> CommonDataKinds.Phone.TYPE_MAIN + PREF, MAIN -> CommonDataKinds.Phone.TYPE_MAIN WORK_FAX -> CommonDataKinds.Phone.TYPE_FAX_WORK HOME_FAX -> CommonDataKinds.Phone.TYPE_FAX_HOME + FAX -> if (subType == WORK) CommonDataKinds.Phone.TYPE_FAX_WORK else CommonDataKinds.Phone.TYPE_FAX_HOME PAGER -> CommonDataKinds.Phone.TYPE_PAGER else -> CommonDataKinds.Phone.TYPE_OTHER } private fun addEmail(email: String) { val emailParts = email.trimStart(';').split(":") - val type = getEmailTypeId(emailParts[0]) + var rawType = emailParts[0] + if (rawType.contains('=')) { + rawType = rawType.split('=').last() + } + val type = getEmailTypeId(rawType) val value = emailParts[1] curEmails.add(Email(value, type)) } From c6515bb40f823d5bdc85d373a630871407203273 Mon Sep 17 00:00:00 2001 From: bulbarsaur Date: Mon, 15 Jan 2018 12:40:40 +0900 Subject: [PATCH 12/54] Update Korean translation --- app/src/main/res/values-ko-rKR/strings.xml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/app/src/main/res/values-ko-rKR/strings.xml b/app/src/main/res/values-ko-rKR/strings.xml index 58d196bf..b0cd5b7e 100644 --- a/app/src/main/res/values-ko-rKR/strings.xml +++ b/app/src/main/res/values-ko-rKR/strings.xml @@ -3,7 +3,7 @@ 연락처 주소 등록중… - 갱신중… + 수정중… 연락처가 포함된 계정을 선택하세요. 새로운 연락처 @@ -54,13 +54,13 @@ 자주쓰는 연락처 검색 - Import contacts - Export contacts - Import contacts from a .vcf file - Export contacts to a .vcf file - Target contact source - Include contact sources - Filename (without .vcf) + 연락처 가져오기 + 연락처 내보내기 + .vcf file에서 가져오기 + .vcf file로 내보내기 + 내보내기 대상 + 가져오기 대상 + 파일이름 (.vcf 확장자 생략) @@ -69,7 +69,7 @@ 연락처를 생성하고 관리하는 간단한 앱입니다. 연락처는 기본적으로 기기에만 저장되며 Google 또는 다른 계정을 통해 동기화 할 수도 있습니다. 즐겨 찾는 연락처는 별도의 목록에 표시 할 수 있습니다. 다양한 조건으로 정렬 및 필터링이 가능하며 성과 이름을 표시하는 옵션도 제공합니다. 또한 애플리케이션을 이용해 사용자 이메일 및 이벤트 관리를 할 수도 있습니다. - + 광고가 포함되어 있거나, 불필요한 권한을 요청하지 않습니다. 이 앱의 모든 소스는 오픈소스이며, 사용자가 직접 애플리케이션의 컬러를 설정 할 수 있습니다. 이 앱은 다양한 시리즈의 모바일앱 중 하나입니다. 나머지는 http://www.simplemobiletools.com 에서 찾아 보실 수 있습니다. From 0e1009b499c1f9a55f21d0fc77fc5e509d3af2c8 Mon Sep 17 00:00:00 2001 From: tibbi Date: Mon, 15 Jan 2018 14:08:52 +0100 Subject: [PATCH 13/54] handle contact photo importing --- .../contacts/activities/ContactActivity.kt | 11 ---- .../contacts/extensions/Context.kt | 16 +++++ .../contacts/helpers/Constants.kt | 1 + .../contacts/helpers/ContactsHelper.kt | 2 +- .../contacts/helpers/VcfImporter.kt | 61 ++++++++++++++++++- 5 files changed, 77 insertions(+), 14 deletions(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt index ffd137d7..70ab342c 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt @@ -737,17 +737,6 @@ class ContactActivity : SimpleActivity() { } } - private fun getCachePhotoUri(): Uri { - val imagesFolder = File(cacheDir, "my_cache") - if (!imagesFolder.exists()) { - imagesFolder.mkdirs() - } - - val file = File(imagesFolder, "Photo_${System.currentTimeMillis()}.jpg") - file.createNewFile() - return FileProvider.getUriForFile(this, "${BuildConfig.APPLICATION_ID}.provider", file) - } - private fun getPhoneNumberTextId(type: Int) = when (type) { CommonDataKinds.Phone.TYPE_MOBILE -> R.string.mobile CommonDataKinds.Phone.TYPE_HOME -> R.string.home diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/extensions/Context.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/extensions/Context.kt index c738891a..c8e5c5bd 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/extensions/Context.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/extensions/Context.kt @@ -7,14 +7,17 @@ import android.database.Cursor import android.net.Uri import android.os.Build import android.provider.ContactsContract +import android.support.v4.content.FileProvider import com.simplemobiletools.commons.R import com.simplemobiletools.commons.extensions.getIntValue import com.simplemobiletools.commons.extensions.isLollipopPlus import com.simplemobiletools.commons.extensions.toast +import com.simplemobiletools.contacts.BuildConfig import com.simplemobiletools.contacts.activities.ContactActivity import com.simplemobiletools.contacts.helpers.CONTACT_ID import com.simplemobiletools.contacts.helpers.Config import com.simplemobiletools.contacts.models.Contact +import java.io.File val Context.config: Config get() = Config.newInstance(applicationContext) @@ -94,3 +97,16 @@ fun lookupContactUri(lookup: String, context: Context): Uri { val lookupUri = Uri.withAppendedPath(ContactsContract.Contacts.CONTENT_LOOKUP_URI, lookup) return ContactsContract.Contacts.lookupContact(context.contentResolver, lookupUri) } + +fun Context.getCachePhoto(): File { + val imagesFolder = File(cacheDir, "my_cache") + if (!imagesFolder.exists()) { + imagesFolder.mkdirs() + } + + val file = File(imagesFolder, "Photo_${System.currentTimeMillis()}.jpg") + file.createNewFile() + return file +} + +fun Context.getCachePhotoUri(file: File = getCachePhoto()) = FileProvider.getUriForFile(this, "${BuildConfig.APPLICATION_ID}.provider", file) diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt index 5559ff4d..3c4d4a3e 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt @@ -32,6 +32,7 @@ val BDAY = "BDAY:" val ANNIVERSARY = "ANNIVERSARY:" val PHOTO = "PHOTO" val EMAIL = "EMAIL" +val BASE64 = "BASE64" // phone number/email types val CELL = "CELL" diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt index 0875ca3a..e178eb24 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt @@ -483,9 +483,9 @@ class ContactsHelper(val activity: BaseSimpleActivity) { val thumbnailSize = getThumbnailSize() val scaledPhoto = Bitmap.createScaledBitmap(bitmap, thumbnailSize, thumbnailSize, false) scaledSizePhotoData = bitmapToByteArray(scaledPhoto) - scaledPhoto.recycle() fullSizePhotoData = bitmapToByteArray(bitmap) + scaledPhoto.recycle() bitmap.recycle() ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI).apply { diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfImporter.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfImporter.kt index 069cdc70..2e5104d5 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfImporter.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfImporter.kt @@ -1,15 +1,22 @@ package com.simplemobiletools.contacts.helpers +import android.graphics.Bitmap +import android.graphics.BitmapFactory import android.provider.ContactsContract.CommonDataKinds +import android.util.Base64 import android.widget.Toast import com.simplemobiletools.commons.extensions.showErrorToast import com.simplemobiletools.contacts.activities.SimpleActivity +import com.simplemobiletools.contacts.extensions.getCachePhoto +import com.simplemobiletools.contacts.extensions.getCachePhotoUri import com.simplemobiletools.contacts.helpers.VcfImporter.ImportResult.* import com.simplemobiletools.contacts.models.Contact import com.simplemobiletools.contacts.models.Email import com.simplemobiletools.contacts.models.Event import com.simplemobiletools.contacts.models.PhoneNumber import java.io.File +import java.io.FileOutputStream + class VcfImporter(val activity: SimpleActivity) { enum class ImportResult { @@ -19,10 +26,15 @@ class VcfImporter(val activity: SimpleActivity) { private var curFirstName = "" private var curMiddleName = "" private var curSurname = "" + private var curPhotoUri = "" private var curPhoneNumbers = ArrayList() private var curEmails = ArrayList() private var curEvents = ArrayList() + private var isGettingPhoto = false + private var currentPhotoString = StringBuilder() + private var currentPhotoCompressionFormat = Bitmap.CompressFormat.JPEG + private var contactsImported = 0 private var contactsFailed = 0 @@ -38,6 +50,10 @@ class VcfImporter(val activity: SimpleActivity) { while (true) { val line = it.readLine() ?: break if (line.trim().isEmpty()) { + if (isGettingPhoto) { + savePhoto() + isGettingPhoto = false + } continue } @@ -48,7 +64,9 @@ class VcfImporter(val activity: SimpleActivity) { line.startsWith(EMAIL) -> addEmail(line.substring(EMAIL.length)) line.startsWith(BDAY) -> addBirthday(line.substring(BDAY.length)) line.startsWith(ANNIVERSARY) -> addAnniversary(line.substring(ANNIVERSARY.length)) + line.startsWith(PHOTO) -> addPhoto(line.substring(PHOTO.length)) line == END_VCARD -> saveContact(targetContactSource) + isGettingPhoto -> currentPhotoString.append(line.trim()) } } } @@ -78,7 +96,7 @@ class VcfImporter(val activity: SimpleActivity) { if (rawType.contains('=')) { val types = rawType.split('=') if (types.any { it.contains(';') }) { - subType = types[1].split(';').first() + subType = types[1].split(';')[0] } rawType = types.last() } @@ -126,8 +144,42 @@ class VcfImporter(val activity: SimpleActivity) { curEvents.add(Event(anniversary, CommonDataKinds.Event.TYPE_ANNIVERSARY)) } + private fun addPhoto(photo: String) { + val photoParts = photo.trimStart(';').split(';') + if (photoParts.size == 2) { + val typeParts = photoParts[1].split(':') + currentPhotoCompressionFormat = getPhotoCompressionFormat(typeParts[0]) + val encoding = photoParts[0].split('=').last() + if (encoding == BASE64) { + isGettingPhoto = true + currentPhotoString.append(typeParts[1].trim()) + } + } + } + + private fun getPhotoCompressionFormat(type: String) = when (type.toLowerCase()) { + "png" -> Bitmap.CompressFormat.PNG + "webp" -> Bitmap.CompressFormat.WEBP + else -> Bitmap.CompressFormat.JPEG + } + + private fun savePhoto() { + val file = activity.getCachePhoto() + val imageAsBytes = Base64.decode(currentPhotoString.toString().toByteArray(), Base64.DEFAULT) + val bitmap = BitmapFactory.decodeByteArray(imageAsBytes, 0, imageAsBytes.size) + var fileOutputStream: FileOutputStream? = null + try { + fileOutputStream = FileOutputStream(file) + bitmap.compress(currentPhotoCompressionFormat, 100, fileOutputStream) + } finally { + fileOutputStream?.close() + } + + curPhotoUri = activity.getCachePhotoUri(file).toString() + } + private fun saveContact(source: String) { - val contact = Contact(0, curFirstName, curMiddleName, curSurname, "", curPhoneNumbers, curEmails, curEvents, source, 0, 0) + val contact = Contact(0, curFirstName, curMiddleName, curSurname, curPhotoUri, curPhoneNumbers, curEmails, curEvents, source, 0, 0) if (ContactsHelper(activity).insertContact(contact)) { contactsImported++ } @@ -137,8 +189,13 @@ class VcfImporter(val activity: SimpleActivity) { curFirstName = "" curMiddleName = "" curSurname = "" + curPhotoUri = "" curPhoneNumbers = ArrayList() curEmails = ArrayList() curEvents = ArrayList() + + isGettingPhoto = false + currentPhotoString = StringBuilder() + currentPhotoCompressionFormat = Bitmap.CompressFormat.JPEG } } From 04b345e0ac88a35f701c968504db6a3fcf24432f Mon Sep 17 00:00:00 2001 From: tibbi Date: Mon, 15 Jan 2018 16:01:24 +0100 Subject: [PATCH 14/54] create the Export Contacts dialog --- app/build.gradle | 2 +- .../contacts/activities/MainActivity.kt | 3 + .../contacts/dialogs/ExportContactsDialog.kt | 54 +++++++++++++ .../res/layout/dialog_export_contacts.xml | 78 +++++++++++++++++++ 4 files changed, 136 insertions(+), 1 deletion(-) create mode 100644 app/src/main/kotlin/com/simplemobiletools/contacts/dialogs/ExportContactsDialog.kt create mode 100644 app/src/main/res/layout/dialog_export_contacts.xml diff --git a/app/build.gradle b/app/build.gradle index 948575b3..663494c9 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -41,7 +41,7 @@ ext { } dependencies { - implementation 'com.simplemobiletools:commons:3.7.2' + implementation 'com.simplemobiletools:commons:3.7.3' implementation 'joda-time:joda-time:2.9.9' debugImplementation "com.squareup.leakcanary:leakcanary-android:$leakCanaryVersion" diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt index ccb8b040..f37a138a 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt @@ -17,6 +17,7 @@ import com.simplemobiletools.contacts.BuildConfig import com.simplemobiletools.contacts.R import com.simplemobiletools.contacts.adapters.ViewPagerAdapter import com.simplemobiletools.contacts.dialogs.ChangeSortingDialog +import com.simplemobiletools.contacts.dialogs.ExportContactsDialog import com.simplemobiletools.contacts.dialogs.FilterContactSourcesDialog import com.simplemobiletools.contacts.dialogs.ImportContactsDialog import com.simplemobiletools.contacts.extensions.config @@ -279,7 +280,9 @@ class MainActivity : SimpleActivity(), RefreshContactsListener { private fun exportContacts() { FilePickerDialog(this, pickFile = false, showFAB = true) { + ExportContactsDialog(this, it) { file, contactSources -> + } } } diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/dialogs/ExportContactsDialog.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/dialogs/ExportContactsDialog.kt new file mode 100644 index 00000000..1df75ded --- /dev/null +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/dialogs/ExportContactsDialog.kt @@ -0,0 +1,54 @@ +package com.simplemobiletools.contacts.dialogs + +import android.support.v7.app.AlertDialog +import android.view.ViewGroup +import com.simplemobiletools.commons.extensions.* +import com.simplemobiletools.contacts.R +import com.simplemobiletools.contacts.activities.SimpleActivity +import com.simplemobiletools.contacts.adapters.FilterContactSourcesAdapter +import com.simplemobiletools.contacts.extensions.config +import com.simplemobiletools.contacts.helpers.ContactsHelper +import kotlinx.android.synthetic.main.dialog_export_contacts.view.* +import java.io.File + +class ExportContactsDialog(val activity: SimpleActivity, val path: String, val callback: (file: File, contactSources: HashSet) -> Unit) { + + init { + val view = (activity.layoutInflater.inflate(R.layout.dialog_export_contacts, null) as ViewGroup).apply { + export_contacts_folder.text = activity.humanizePath(path) + export_contacts_filename.setText("contacts_${System.currentTimeMillis() / 1000}") + + ContactsHelper(activity).getContactSources { + activity.runOnUiThread { + export_contacts_list.adapter = FilterContactSourcesAdapter(activity, it, activity.config.displayContactSources) + } + } + } + + AlertDialog.Builder(activity) + .setPositiveButton(R.string.ok, null) + .setNegativeButton(R.string.cancel, null) + .create().apply { + activity.setupDialogStuff(view, this, R.string.export_contacts) { + getButton(AlertDialog.BUTTON_POSITIVE).setOnClickListener { + val filename = view.export_contacts_filename.value + when { + filename.isEmpty() -> activity.toast(R.string.empty_name) + filename.isAValidFilename() -> { + val file = File(path, "$filename.vcf") + if (file.exists()) { + activity.toast(R.string.name_taken) + return@setOnClickListener + } + + val contactSources = (view.export_contacts_list.adapter as FilterContactSourcesAdapter).getSelectedItemsSet() + callback(file, contactSources) + dismiss() + } + else -> activity.toast(R.string.invalid_name) + } + } + } + } + } +} diff --git a/app/src/main/res/layout/dialog_export_contacts.xml b/app/src/main/res/layout/dialog_export_contacts.xml new file mode 100644 index 00000000..0f053e06 --- /dev/null +++ b/app/src/main/res/layout/dialog_export_contacts.xml @@ -0,0 +1,78 @@ + + + + + + + + + + + + + + + + + + + + + From ca463d056b9ee85ff5b2d133f25b228d3d623f97 Mon Sep 17 00:00:00 2001 From: tibbi Date: Mon, 15 Jan 2018 16:18:19 +0100 Subject: [PATCH 15/54] creating the structure of contact exporting --- .../contacts/activities/MainActivity.kt | 21 ++++++++++- .../contacts/helpers/VcfExporter.kt | 37 +++++++++++++++++++ 2 files changed, 57 insertions(+), 1 deletion(-) create mode 100644 app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfExporter.kt diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt index f37a138a..2afb7fae 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt @@ -22,7 +22,10 @@ import com.simplemobiletools.contacts.dialogs.FilterContactSourcesDialog import com.simplemobiletools.contacts.dialogs.ImportContactsDialog import com.simplemobiletools.contacts.extensions.config import com.simplemobiletools.contacts.extensions.onTabSelectionChanged +import com.simplemobiletools.contacts.helpers.ContactsHelper +import com.simplemobiletools.contacts.helpers.VcfExporter import com.simplemobiletools.contacts.interfaces.RefreshContactsListener +import com.simplemobiletools.contacts.models.Contact import kotlinx.android.synthetic.main.activity_main.* import kotlinx.android.synthetic.main.fragment_contacts.* import kotlinx.android.synthetic.main.fragment_favorites.* @@ -281,7 +284,23 @@ class MainActivity : SimpleActivity(), RefreshContactsListener { private fun exportContacts() { FilePickerDialog(this, pickFile = false, showFAB = true) { ExportContactsDialog(this, it) { file, contactSources -> - + Thread { + ContactsHelper(this).getContacts { + val contacts = it.filter { contactSources.contains(it.source) } + if (contacts.isEmpty()) { + toast(R.string.no_entries_for_exporting) + } else { + toast(R.string.exporting) + VcfExporter().exportContacts(this, file, contacts as ArrayList) { + toast(when (it) { + VcfExporter.ExportResult.EXPORT_OK -> R.string.exporting_successful + VcfExporter.ExportResult.EXPORT_PARTIAL -> R.string.exporting_some_entries_failed + else -> R.string.exporting_failed + }) + } + } + } + }.start() } } } diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfExporter.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfExporter.kt new file mode 100644 index 00000000..f014f987 --- /dev/null +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfExporter.kt @@ -0,0 +1,37 @@ +package com.simplemobiletools.contacts.helpers + +import com.simplemobiletools.commons.activities.BaseSimpleActivity +import com.simplemobiletools.commons.extensions.getFileOutputStream +import com.simplemobiletools.contacts.helpers.VcfExporter.ExportResult.* +import com.simplemobiletools.contacts.models.Contact +import java.io.File + +class VcfExporter() { + enum class ExportResult { + EXPORT_FAIL, EXPORT_OK, EXPORT_PARTIAL + } + + private var contactsExported = 0 + private var contactsFailed = 0 + + fun exportContacts(activity: BaseSimpleActivity, file: File, contacts: ArrayList, callback: (result: ExportResult) -> Unit) { + activity.getFileOutputStream(file) { + if (it == null) { + callback(EXPORT_FAIL) + return@getFileOutputStream + } + + it.bufferedWriter().use { out -> + for (contact in contacts) { + + } + } + } + + callback(when { + contactsExported == 0 -> EXPORT_FAIL + contactsFailed > 0 -> EXPORT_PARTIAL + else -> EXPORT_OK + }) + } +} From 052e17bed6059ecba4ef1e6b5395bb1788e6a6c1 Mon Sep 17 00:00:00 2001 From: tibbi Date: Mon, 15 Jan 2018 18:12:09 +0100 Subject: [PATCH 16/54] create a vcf file contacts exporter --- app/build.gradle | 2 +- .../contacts/helpers/Constants.kt | 2 + .../contacts/helpers/VcfExporter.kt | 41 +++++++++++++++++++ .../contacts/helpers/VcfImporter.kt | 3 +- 4 files changed, 45 insertions(+), 3 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 663494c9..dac99717 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -41,7 +41,7 @@ ext { } dependencies { - implementation 'com.simplemobiletools:commons:3.7.3' + implementation 'com.simplemobiletools:commons:3.7.4' implementation 'joda-time:joda-time:2.9.9' debugImplementation "com.squareup.leakcanary:leakcanary-android:$leakCanaryVersion" diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt index 3c4d4a3e..49d1115b 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt @@ -33,6 +33,7 @@ val ANNIVERSARY = "ANNIVERSARY:" val PHOTO = "PHOTO" val EMAIL = "EMAIL" val BASE64 = "BASE64" +val VERSION_2_1 = "VERSION:2.1" // phone number/email types val CELL = "CELL" @@ -45,3 +46,4 @@ val WORK_FAX = "WORK;FAX" val HOME_FAX = "HOME;FAX" val PAGER = "PAGER" val MOBILE = "MOBILE" +val VOICE = "VOICE" diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfExporter.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfExporter.kt index f014f987..0a92aede 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfExporter.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfExporter.kt @@ -1,7 +1,9 @@ package com.simplemobiletools.contacts.helpers +import android.provider.ContactsContract.CommonDataKinds import com.simplemobiletools.commons.activities.BaseSimpleActivity import com.simplemobiletools.commons.extensions.getFileOutputStream +import com.simplemobiletools.commons.extensions.writeLn import com.simplemobiletools.contacts.helpers.VcfExporter.ExportResult.* import com.simplemobiletools.contacts.models.Contact import java.io.File @@ -23,7 +25,28 @@ class VcfExporter() { it.bufferedWriter().use { out -> for (contact in contacts) { + out.writeLn(BEGIN_VCARD) + out.writeLn(VERSION_2_1) + out.writeLn("$N${contact.surname};${contact.firstName};${contact.middleName};;") + contact.phoneNumbers.forEach { + out.writeLn("$TEL;${getPhoneNumberLabel(it.type)}:${it.value}") + } + + contact.emails.forEach { + val type = getEmailTypeLabel(it.type) + val delimiterType = if (type.isEmpty()) "" else ";$type" + out.writeLn("$EMAIL$delimiterType:${it.value}") + } + + contact.events.forEach { + if (it.type == CommonDataKinds.Event.TYPE_BIRTHDAY) { + out.writeLn("$BDAY:${it.value}") + } + } + + out.writeLn(END_VCARD) + contactsExported++ } } } @@ -34,4 +57,22 @@ class VcfExporter() { else -> EXPORT_OK }) } + + private fun getPhoneNumberLabel(type: Int) = when (type) { + CommonDataKinds.Phone.TYPE_MOBILE -> CELL + CommonDataKinds.Phone.TYPE_HOME -> HOME + CommonDataKinds.Phone.TYPE_WORK -> WORK + CommonDataKinds.Phone.TYPE_MAIN -> PREF + CommonDataKinds.Phone.TYPE_FAX_WORK -> WORK_FAX + CommonDataKinds.Phone.TYPE_FAX_HOME -> HOME_FAX + CommonDataKinds.Phone.TYPE_PAGER -> PAGER + else -> VOICE + } + + private fun getEmailTypeLabel(type: Int) = when (type) { + CommonDataKinds.Email.TYPE_HOME -> HOME + CommonDataKinds.Email.TYPE_WORK -> WORK + CommonDataKinds.Email.TYPE_MOBILE -> MOBILE + else -> "" + } } diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfImporter.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfImporter.kt index 2e5104d5..0b33a7ff 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfImporter.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfImporter.kt @@ -17,7 +17,6 @@ import com.simplemobiletools.contacts.models.PhoneNumber import java.io.File import java.io.FileOutputStream - class VcfImporter(val activity: SimpleActivity) { enum class ImportResult { IMPORT_FAIL, IMPORT_OK, IMPORT_PARTIAL @@ -108,8 +107,8 @@ class VcfImporter(val activity: SimpleActivity) { private fun getPhoneNumberTypeId(type: String, subType: String) = when (type) { CELL -> CommonDataKinds.Phone.TYPE_MOBILE - WORK -> CommonDataKinds.Phone.TYPE_WORK HOME -> CommonDataKinds.Phone.TYPE_HOME + WORK -> CommonDataKinds.Phone.TYPE_WORK PREF, MAIN -> CommonDataKinds.Phone.TYPE_MAIN WORK_FAX -> CommonDataKinds.Phone.TYPE_FAX_WORK HOME_FAX -> CommonDataKinds.Phone.TYPE_FAX_HOME From 135240564ff20c92fd28bc83e6cc6d52f8bd3d87 Mon Sep 17 00:00:00 2001 From: tibbi Date: Mon, 15 Jan 2018 20:41:04 +0100 Subject: [PATCH 17/54] add thumbnailUri to the contact model --- .../contacts/activities/ContactActivity.kt | 2 +- .../simplemobiletools/contacts/helpers/ContactsHelper.kt | 7 +++++-- .../com/simplemobiletools/contacts/helpers/VcfImporter.kt | 2 +- .../com/simplemobiletools/contacts/models/Contact.kt | 2 +- 4 files changed, 8 insertions(+), 5 deletions(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt index 70ab342c..76563a1f 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt @@ -303,7 +303,7 @@ class ContactActivity : SimpleActivity() { private fun setupNewContact() { window.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE) supportActionBar?.title = resources.getString(R.string.new_contact) - contact = Contact(0, "", "", "", "", ArrayList(), ArrayList(), ArrayList(), "", 0, 0) + contact = Contact(0, "", "", "", "", ArrayList(), ArrayList(), ArrayList(), "", 0, 0, "") contact_source.text = config.lastUsedContactSource contact_source.setOnClickListener { showContactSourcePicker(contact_source.value) { diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt index e178eb24..7b081186 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt @@ -55,7 +55,8 @@ class ContactsHelper(val activity: BaseSimpleActivity) { val accountName = cursor.getStringValue(ContactsContract.RawContacts.ACCOUNT_NAME) val starred = cursor.getIntValue(CommonDataKinds.StructuredName.STARRED) val contactId = cursor.getIntValue(ContactsContract.Data.CONTACT_ID) - val contact = Contact(id, firstName, middleName, surname, photoUri, number, emails, events, accountName, starred, contactId) + val thumbnailUri = cursor.getStringValue(CommonDataKinds.StructuredName.PHOTO_THUMBNAIL_URI) ?: "" + val contact = Contact(id, firstName, middleName, surname, photoUri, number, emails, events, accountName, starred, contactId, thumbnailUri) contacts.put(id, contact) } while (cursor.moveToNext()) } @@ -212,7 +213,8 @@ class ContactsHelper(val activity: BaseSimpleActivity) { val accountName = cursor.getStringValue(ContactsContract.RawContacts.ACCOUNT_NAME) val starred = cursor.getIntValue(CommonDataKinds.StructuredName.STARRED) val contactId = cursor.getIntValue(ContactsContract.Data.CONTACT_ID) - return Contact(id, firstName, middleName, surname, photoUri, number, emails, events, accountName, starred, contactId) + val thumbnailUri = cursor.getStringValue(CommonDataKinds.StructuredName.PHOTO_THUMBNAIL_URI) ?: "" + return Contact(id, firstName, middleName, surname, photoUri, number, emails, events, accountName, starred, contactId, thumbnailUri) } } finally { cursor?.close() @@ -269,6 +271,7 @@ class ContactsHelper(val activity: BaseSimpleActivity) { CommonDataKinds.StructuredName.MIDDLE_NAME, CommonDataKinds.StructuredName.FAMILY_NAME, CommonDataKinds.StructuredName.PHOTO_URI, + CommonDataKinds.StructuredName.PHOTO_THUMBNAIL_URI, CommonDataKinds.StructuredName.STARRED, ContactsContract.RawContacts.ACCOUNT_NAME ) diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfImporter.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfImporter.kt index 0b33a7ff..e1f2e0d0 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfImporter.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfImporter.kt @@ -178,7 +178,7 @@ class VcfImporter(val activity: SimpleActivity) { } private fun saveContact(source: String) { - val contact = Contact(0, curFirstName, curMiddleName, curSurname, curPhotoUri, curPhoneNumbers, curEmails, curEvents, source, 0, 0) + val contact = Contact(0, curFirstName, curMiddleName, curSurname, curPhotoUri, curPhoneNumbers, curEmails, curEvents, source, 0, 0, "") if (ContactsHelper(activity).insertContact(contact)) { contactsImported++ } diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/models/Contact.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/models/Contact.kt index 44e3ab64..95131fe6 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/models/Contact.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/models/Contact.kt @@ -6,7 +6,7 @@ import com.simplemobiletools.commons.helpers.SORT_DESCENDING data class Contact(val id: Int, var firstName: String, var middleName: String, var surname: String, var photoUri: String, var phoneNumbers: ArrayList, var emails: ArrayList, var events: ArrayList, var source: String, - var starred: Int, val contactId: Int) : Comparable { + var starred: Int, val contactId: Int, val thumbnailUri: String) : Comparable { companion object { var sorting: Int = 0 } From bd13b59e360a18b3ffdad769c88ed405f720c620 Mon Sep 17 00:00:00 2001 From: tibbi Date: Mon, 15 Jan 2018 20:54:37 +0100 Subject: [PATCH 18/54] redraw the contacts list after changing the filters --- .../simplemobiletools/contacts/activities/MainActivity.kt | 1 + .../contacts/fragments/MyViewPagerFragment.kt | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt index 2afb7fae..8fe105d6 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt @@ -249,6 +249,7 @@ class MainActivity : SimpleActivity(), RefreshContactsListener { fun showFilterDialog() { FilterContactSourcesDialog(this) { + contacts_fragment.forceListRedraw = true contacts_fragment.initContacts() } } diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/fragments/MyViewPagerFragment.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/fragments/MyViewPagerFragment.kt index 6095c725..0f0099d2 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/fragments/MyViewPagerFragment.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/fragments/MyViewPagerFragment.kt @@ -26,6 +26,8 @@ abstract class MyViewPagerFragment(context: Context, attributeSet: AttributeSet) private var contactsIgnoringSearch = ArrayList() lateinit private var config: Config + var forceListRedraw = false + fun setupFragment(activity: MainActivity) { config = activity.config if (this.activity == null) { @@ -114,7 +116,8 @@ abstract class MyViewPagerFragment(context: Context, attributeSet: AttributeSet) fragment_list.beVisibleIf(contacts.isNotEmpty()) val currAdapter = fragment_list.adapter - if (currAdapter == null) { + if (currAdapter == null || forceListRedraw) { + forceListRedraw = false ContactsAdapter(activity as SimpleActivity, contacts, activity, this is FavoritesFragment, fragment_list, fragment_fastscroller) { if (config.callContact) { val contact = it as Contact @@ -132,6 +135,7 @@ abstract class MyViewPagerFragment(context: Context, attributeSet: AttributeSet) fragment_list.adapter = this } + fragment_fastscroller.setScrollTo(0) fragment_fastscroller.setViews(fragment_list) { val item = (fragment_list.adapter as ContactsAdapter).contactItems.getOrNull(it) fragment_fastscroller.updateBubbleText(item?.getBubbleText() ?: "") From f729b0de6ad265b4b40a2d1ef17f376d0a3ffe67 Mon Sep 17 00:00:00 2001 From: tibbi Date: Mon, 15 Jan 2018 21:47:21 +0100 Subject: [PATCH 19/54] move the Inserting... toast to ContactActivity --- .../contacts/activities/ContactActivity.kt | 6 ++---- .../simplemobiletools/contacts/helpers/ContactsHelper.kt | 1 - 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt index 76563a1f..c5ffd9d4 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt @@ -1,6 +1,5 @@ package com.simplemobiletools.contacts.activities -import android.provider.ContactsContract.CommonDataKinds import android.app.DatePickerDialog import android.content.ClipData import android.content.Intent @@ -9,8 +8,8 @@ import android.graphics.drawable.Drawable import android.net.Uri import android.os.Bundle import android.provider.ContactsContract +import android.provider.ContactsContract.CommonDataKinds import android.provider.MediaStore -import android.support.v4.content.FileProvider import android.view.Menu import android.view.MenuItem import android.view.ViewGroup @@ -32,7 +31,6 @@ import com.simplemobiletools.commons.helpers.PERMISSION_READ_CONTACTS import com.simplemobiletools.commons.helpers.PERMISSION_WRITE_CONTACTS import com.simplemobiletools.commons.helpers.getDateFormats import com.simplemobiletools.commons.models.RadioItem -import com.simplemobiletools.contacts.BuildConfig import com.simplemobiletools.contacts.R import com.simplemobiletools.contacts.extensions.* import com.simplemobiletools.contacts.helpers.* @@ -46,7 +44,6 @@ import kotlinx.android.synthetic.main.item_event.view.* import kotlinx.android.synthetic.main.item_phone_number.view.* import org.joda.time.DateTime import org.joda.time.format.DateTimeFormat -import java.io.File import java.text.DateFormat import java.text.SimpleDateFormat import java.util.* @@ -580,6 +577,7 @@ class ContactActivity : SimpleActivity() { private fun insertNewContact() { isSaving = true + toast(R.string.inserting) if (ContactsHelper(this@ContactActivity).insertContact(contact!!)) { finish() } else { diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt index 7b081186..018d0e61 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt @@ -425,7 +425,6 @@ class ContactsHelper(val activity: BaseSimpleActivity) { fun insertContact(contact: Contact): Boolean { return try { - activity.toast(R.string.inserting) val operations = ArrayList() ContentProviderOperation.newInsert(ContactsContract.RawContacts.CONTENT_URI).apply { withValue(ContactsContract.RawContacts.ACCOUNT_NAME, contact.source) From eefb6a1dabf0f86802e550dfcba209846d688983 Mon Sep 17 00:00:00 2001 From: tibbi Date: Mon, 15 Jan 2018 22:09:30 +0100 Subject: [PATCH 20/54] handle exporting base64 encoded contact images --- .../contacts/helpers/Constants.kt | 2 ++ .../contacts/helpers/VcfExporter.kt | 30 ++++++++++++++++++- 2 files changed, 31 insertions(+), 1 deletion(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt index 49d1115b..bd29cb23 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/Constants.kt @@ -32,7 +32,9 @@ val BDAY = "BDAY:" val ANNIVERSARY = "ANNIVERSARY:" val PHOTO = "PHOTO" val EMAIL = "EMAIL" +val ENCODING = "ENCODING" val BASE64 = "BASE64" +val JPEG = "JPEG" val VERSION_2_1 = "VERSION:2.1" // phone number/email types diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfExporter.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfExporter.kt index 0a92aede..b8c53758 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfExporter.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfExporter.kt @@ -1,14 +1,21 @@ package com.simplemobiletools.contacts.helpers +import android.graphics.Bitmap +import android.net.Uri import android.provider.ContactsContract.CommonDataKinds +import android.provider.MediaStore +import android.util.Base64 import com.simplemobiletools.commons.activities.BaseSimpleActivity import com.simplemobiletools.commons.extensions.getFileOutputStream import com.simplemobiletools.commons.extensions.writeLn import com.simplemobiletools.contacts.helpers.VcfExporter.ExportResult.* import com.simplemobiletools.contacts.models.Contact +import java.io.ByteArrayOutputStream import java.io.File -class VcfExporter() { +class VcfExporter { + private val ENCODED_PHOTO_LINE_LENGTH = 74 + enum class ExportResult { EXPORT_FAIL, EXPORT_OK, EXPORT_PARTIAL } @@ -45,6 +52,27 @@ class VcfExporter() { } } + if (contact.thumbnailUri.isNotEmpty()) { + val firstLine = "$PHOTO;$ENCODING=$BASE64;$JPEG:" + val bitmap = MediaStore.Images.Media.getBitmap(activity.contentResolver, Uri.parse(contact.thumbnailUri)) + val byteArrayOutputStream = ByteArrayOutputStream() + bitmap.compress(Bitmap.CompressFormat.JPEG, 85, byteArrayOutputStream) + bitmap.recycle() + val byteArray = byteArrayOutputStream.toByteArray() + val encoded = Base64.encodeToString(byteArray, Base64.NO_WRAP) + + val encodedFirstLineSection = encoded.substring(0, ENCODED_PHOTO_LINE_LENGTH - firstLine.length) + out.writeLn(firstLine + encodedFirstLineSection) + var curStartIndex = encodedFirstLineSection.length + do { + val part = encoded.substring(curStartIndex, Math.min(curStartIndex + ENCODED_PHOTO_LINE_LENGTH - 1, encoded.length)) + out.writeLn(" $part") + curStartIndex += ENCODED_PHOTO_LINE_LENGTH - 1 + } while (curStartIndex < encoded.length) + + out.writeLn("") + } + out.writeLn(END_VCARD) contactsExported++ } From d17ec1ff4f338c07912aa1fe1a2bc570a32f8d8e Mon Sep 17 00:00:00 2001 From: tibbi Date: Mon, 15 Jan 2018 23:19:16 +0100 Subject: [PATCH 21/54] handle importing contacts via opening vcf file intent --- app/src/main/AndroidManifest.xml | 10 +++++ .../contacts/activities/MainActivity.kt | 40 ++++++++++++++++--- .../contacts/extensions/Activity.kt | 14 +++++++ app/src/main/res/xml/provider_paths.xml | 1 + 4 files changed, 60 insertions(+), 5 deletions(-) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index f3a6d48e..6175cbd1 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -41,6 +41,16 @@ + + + + + + + + + + showImportContactsDialog(uri.path) + uri.scheme == "content" -> { + val tempFile = getTempFile() + if (tempFile == null) { + toast(R.string.unknown_error_occurred) + return + } + + val inputStream = contentResolver.openInputStream(uri) + val out = FileOutputStream(tempFile) + inputStream.copyTo(out) + showImportContactsDialog(tempFile.absolutePath) + } + else -> toast(R.string.invalid_file_format) + } + } + private fun tryExportContacts() { handlePermission(PERMISSION_WRITE_STORAGE) { if (it) { diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/extensions/Activity.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/extensions/Activity.kt index 3cb06261..7f631c8e 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/extensions/Activity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/extensions/Activity.kt @@ -3,6 +3,7 @@ package com.simplemobiletools.contacts.extensions import android.content.Intent import android.net.Uri import com.simplemobiletools.commons.R +import com.simplemobiletools.commons.activities.BaseSimpleActivity import com.simplemobiletools.commons.dialogs.RadioGroupDialog import com.simplemobiletools.commons.extensions.toast import com.simplemobiletools.commons.helpers.PERMISSION_CALL_PHONE @@ -10,6 +11,7 @@ import com.simplemobiletools.commons.models.RadioItem import com.simplemobiletools.contacts.activities.SimpleActivity import com.simplemobiletools.contacts.helpers.ContactsHelper import com.simplemobiletools.contacts.models.Contact +import java.io.File fun SimpleActivity.startCallIntent(recipient: String) { handlePermission(PERMISSION_CALL_PHONE) { @@ -61,3 +63,15 @@ fun SimpleActivity.showContactSourcePicker(currentSource: String, callback: (new } } } + +fun BaseSimpleActivity.getTempFile(): File? { + val folder = File(cacheDir, "contacts") + if (!folder.exists()) { + if (!folder.mkdir()) { + toast(R.string.unknown_error_occurred) + return null + } + } + + return File(folder, "contacts.vcf") +} diff --git a/app/src/main/res/xml/provider_paths.xml b/app/src/main/res/xml/provider_paths.xml index 90100f76..c91794e3 100644 --- a/app/src/main/res/xml/provider_paths.xml +++ b/app/src/main/res/xml/provider_paths.xml @@ -3,4 +3,5 @@ + From dc308a94dc3c857c9a1ded442ed50fa33fee517a Mon Sep 17 00:00:00 2001 From: tibbi Date: Mon, 15 Jan 2018 23:42:03 +0100 Subject: [PATCH 22/54] allow sharing a contact via creating a vcf file --- .../contacts/activities/ContactActivity.kt | 60 ++++++++++--------- .../contacts/extensions/Activity.kt | 19 ++++++ .../contacts/helpers/VcfExporter.kt | 2 +- app/src/main/res/menu/menu_contact.xml | 5 ++ 4 files changed, 58 insertions(+), 28 deletions(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt index c5ffd9d4..f7592b94 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt @@ -87,6 +87,35 @@ class ContactActivity : SimpleActivity() { } } + override fun onCreateOptionsMenu(menu: Menu): Boolean { + menuInflater.inflate(R.menu.menu_contact, menu) + if (wasActivityInitialized) { + menu.findItem(R.id.delete).isVisible = contact?.id != 0 + menu.findItem(R.id.share).isVisible = contact?.id != 0 + } + return true + } + + override fun onOptionsItemSelected(item: MenuItem): Boolean { + when (item.itemId) { + R.id.save -> saveContact() + R.id.delete -> deleteContact() + R.id.share -> shareContact() + else -> return super.onOptionsItemSelected(item) + } + return true + } + + override fun onActivityResult(requestCode: Int, resultCode: Int, resultData: Intent?) { + super.onActivityResult(requestCode, resultCode, resultData) + if (resultCode == RESULT_OK) { + when (requestCode) { + INTENT_TAKE_PHOTO, INTENT_CHOOSE_PHOTO -> startCropPhotoIntent(lastPhotoIntentUri!!) + INTENT_CROP_PHOTO -> updateContactPhoto(lastPhotoIntentUri.toString()) + } + } + } + private fun initContact() { var contactId = intent.getIntExtra(CONTACT_ID, 0) val action = intent.action @@ -173,33 +202,6 @@ class ContactActivity : SimpleActivity() { invalidateOptionsMenu() } - override fun onCreateOptionsMenu(menu: Menu): Boolean { - menuInflater.inflate(R.menu.menu_contact, menu) - if (wasActivityInitialized) { - menu.findItem(R.id.delete).isVisible = contact?.id != 0 - } - return true - } - - override fun onOptionsItemSelected(item: MenuItem): Boolean { - when (item.itemId) { - R.id.save -> saveContact() - R.id.delete -> deleteContact() - else -> return super.onOptionsItemSelected(item) - } - return true - } - - override fun onActivityResult(requestCode: Int, resultCode: Int, resultData: Intent?) { - super.onActivityResult(requestCode, resultCode, resultData) - if (resultCode == RESULT_OK) { - when (requestCode) { - INTENT_TAKE_PHOTO, INTENT_CHOOSE_PHOTO -> startCropPhotoIntent(lastPhotoIntentUri!!) - INTENT_CROP_PHOTO -> updateContactPhoto(lastPhotoIntentUri.toString()) - } - } - } - private fun startCropPhotoIntent(uri: Uri) { lastPhotoIntentUri = getCachePhotoUri() Intent("com.android.camera.action.CROP").apply { @@ -309,6 +311,10 @@ class ContactActivity : SimpleActivity() { } } + private fun shareContact() { + shareContact(contact!!) + } + private fun showPhotoPlaceholder() { val placeholder = resources.getColoredBitmap(R.drawable.ic_person, config.primaryColor.getContrastColor()) val padding = resources.getDimension(R.dimen.activity_margin).toInt() diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/extensions/Activity.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/extensions/Activity.kt index 7f631c8e..ff191b4f 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/extensions/Activity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/extensions/Activity.kt @@ -5,11 +5,15 @@ import android.net.Uri import com.simplemobiletools.commons.R import com.simplemobiletools.commons.activities.BaseSimpleActivity import com.simplemobiletools.commons.dialogs.RadioGroupDialog +import com.simplemobiletools.commons.extensions.getFilePublicUri +import com.simplemobiletools.commons.extensions.shareUri import com.simplemobiletools.commons.extensions.toast import com.simplemobiletools.commons.helpers.PERMISSION_CALL_PHONE import com.simplemobiletools.commons.models.RadioItem +import com.simplemobiletools.contacts.BuildConfig import com.simplemobiletools.contacts.activities.SimpleActivity import com.simplemobiletools.contacts.helpers.ContactsHelper +import com.simplemobiletools.contacts.helpers.VcfExporter import com.simplemobiletools.contacts.models.Contact import java.io.File @@ -64,6 +68,21 @@ fun SimpleActivity.showContactSourcePicker(currentSource: String, callback: (new } } +fun BaseSimpleActivity.shareContact(contact: Contact) { + val file = getTempFile() + if (file == null) { + toast(R.string.unknown_error_occurred) + return + } + + VcfExporter().exportContacts(this, file, arrayListOf(contact)) { + if (it == VcfExporter.ExportResult.EXPORT_OK) { + val uri = getFilePublicUri(file, BuildConfig.APPLICATION_ID) + shareUri(uri, BuildConfig.APPLICATION_ID) + } + } +} + fun BaseSimpleActivity.getTempFile(): File? { val folder = File(cacheDir, "contacts") if (!folder.exists()) { diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfExporter.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfExporter.kt index b8c53758..b45bd0af 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfExporter.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfExporter.kt @@ -48,7 +48,7 @@ class VcfExporter { contact.events.forEach { if (it.type == CommonDataKinds.Event.TYPE_BIRTHDAY) { - out.writeLn("$BDAY:${it.value}") + out.writeLn("$BDAY${it.value}") } } diff --git a/app/src/main/res/menu/menu_contact.xml b/app/src/main/res/menu/menu_contact.xml index 262a8535..f7605732 100644 --- a/app/src/main/res/menu/menu_contact.xml +++ b/app/src/main/res/menu/menu_contact.xml @@ -11,4 +11,9 @@ android:icon="@drawable/ic_delete" android:title="@string/delete" app:showAsAction="ifRoom"/> + From 13f5fbc85923eb63712423b7e11d7c0e190c6c0c Mon Sep 17 00:00:00 2001 From: tibbi Date: Mon, 15 Jan 2018 23:49:03 +0100 Subject: [PATCH 23/54] allow sharing multiple handpicked contacts at once --- .../contacts/activities/ContactActivity.kt | 2 +- .../contacts/adapters/ContactsAdapter.kt | 17 ++++++++++++++++- .../contacts/extensions/Activity.kt | 4 ++-- app/src/main/res/menu/cab.xml | 5 +++++ 4 files changed, 24 insertions(+), 4 deletions(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt index f7592b94..29173d97 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/ContactActivity.kt @@ -312,7 +312,7 @@ class ContactActivity : SimpleActivity() { } private fun shareContact() { - shareContact(contact!!) + shareContacts(arrayListOf(contact!!)) } private fun showPhotoPlaceholder() { diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/adapters/ContactsAdapter.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/adapters/ContactsAdapter.kt index 6154ac39..5f176f22 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/adapters/ContactsAdapter.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/adapters/ContactsAdapter.kt @@ -19,6 +19,7 @@ import com.simplemobiletools.contacts.R import com.simplemobiletools.contacts.activities.SimpleActivity import com.simplemobiletools.contacts.extensions.config import com.simplemobiletools.contacts.extensions.openContact +import com.simplemobiletools.contacts.extensions.shareContacts import com.simplemobiletools.contacts.helpers.ContactsHelper import com.simplemobiletools.contacts.interfaces.RefreshContactsListener import com.simplemobiletools.contacts.models.Contact @@ -62,9 +63,10 @@ class ContactsAdapter(activity: SimpleActivity, var contactItems: MutableList editContact() R.id.cab_select_all -> selectAll() - R.id.cab_delete -> askConfirmDelete() R.id.cab_add_to_favorites -> addToFavorites() + R.id.cab_share -> shareContacts() R.id.cab_remove -> removeFavorites() + R.id.cab_delete -> askConfirmDelete() } } @@ -161,6 +163,19 @@ class ContactsAdapter(activity: SimpleActivity, var contactItems: MutableList() + selectedPositions.forEach { + contacts.add(contactItems[it]) + } + + activity.shareContacts(contacts) + } + override fun onViewRecycled(holder: ViewHolder?) { super.onViewRecycled(holder) if (!activity.isActivityDestroyed()) { diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/extensions/Activity.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/extensions/Activity.kt index ff191b4f..0f1eeb83 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/extensions/Activity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/extensions/Activity.kt @@ -68,14 +68,14 @@ fun SimpleActivity.showContactSourcePicker(currentSource: String, callback: (new } } -fun BaseSimpleActivity.shareContact(contact: Contact) { +fun BaseSimpleActivity.shareContacts(contacts: ArrayList) { val file = getTempFile() if (file == null) { toast(R.string.unknown_error_occurred) return } - VcfExporter().exportContacts(this, file, arrayListOf(contact)) { + VcfExporter().exportContacts(this, file, contacts) { if (it == VcfExporter.ExportResult.EXPORT_OK) { val uri = getFilePublicUri(file, BuildConfig.APPLICATION_ID) shareUri(uri, BuildConfig.APPLICATION_ID) diff --git a/app/src/main/res/menu/cab.xml b/app/src/main/res/menu/cab.xml index 50c583c0..c727d9bd 100644 --- a/app/src/main/res/menu/cab.xml +++ b/app/src/main/res/menu/cab.xml @@ -16,6 +16,11 @@ android:icon="@drawable/ic_star_on" android:title="@string/add_to_favorites" app:showAsAction="ifRoom"/> + Date: Tue, 16 Jan 2018 00:04:49 +0100 Subject: [PATCH 24/54] update commons to 3.7.5 --- app/build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/build.gradle b/app/build.gradle index dac99717..8be0ecdc 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -41,7 +41,7 @@ ext { } dependencies { - implementation 'com.simplemobiletools:commons:3.7.4' + implementation 'com.simplemobiletools:commons:3.7.5' implementation 'joda-time:joda-time:2.9.9' debugImplementation "com.squareup.leakcanary:leakcanary-android:$leakCanaryVersion" From 7467f0b5b552c4c46ebcd8b395691b02911a075e Mon Sep 17 00:00:00 2001 From: tibbi Date: Tue, 16 Jan 2018 00:04:56 +0100 Subject: [PATCH 25/54] update version to 3.1.0 --- app/build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 8be0ecdc..82e4e658 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -9,8 +9,8 @@ android { applicationId "com.simplemobiletools.contacts" minSdkVersion 16 targetSdkVersion 27 - versionCode 4 - versionName "3.0.3" + versionCode 5 + versionName "3.1.0" setProperty("archivesBaseName", "contacts") } From 71c39b7f28ba540fd2d650271a97f6e6f9daf781 Mon Sep 17 00:00:00 2001 From: tibbi Date: Tue, 16 Jan 2018 00:05:01 +0100 Subject: [PATCH 26/54] updating changelog --- CHANGELOG.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9312e027..fa96fb92 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,12 @@ Changelog ========== +Version 3.1.0 *(2018-01-16)* +---------------------------- + + * Added contact import/export functions + * Allow sharing contacts + Version 3.0.3 *(2018-01-03)* ---------------------------- From d78811b3310c760de09f9ea9c4d70ada3d7677e3 Mon Sep 17 00:00:00 2001 From: Tibor Kaputa Date: Tue, 16 Jan 2018 23:27:22 +0100 Subject: [PATCH 27/54] Update README.md --- README.md | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index ae02be1f..571c2abc 100644 --- a/README.md +++ b/README.md @@ -8,16 +8,19 @@ You can use it for managing user emails and events too. It has the ability to so Contains no ads or unnecessary permissions. It is fully opensource, provides customizable colors. This app is just one piece of a bigger series of apps. You can find the rest of them at http://www.simplemobiletools.com + Get it on Google Play Get it on F-Droid -App image -App image -App image +
+App image +App image +App image +
License ------- - Copyright 2017 SimpleMobileTools + Copyright 2016-present SimpleMobileTools Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. From 46f55eff14c4e75dc4ac3a51d0c269e344010038 Mon Sep 17 00:00:00 2001 From: tibbi Date: Tue, 16 Jan 2018 23:32:38 +0100 Subject: [PATCH 28/54] update commons to 3.7.7 --- app/build.gradle | 2 +- app/src/main/res/values/colors.xml | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 82e4e658..6b443e2b 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -41,7 +41,7 @@ ext { } dependencies { - implementation 'com.simplemobiletools:commons:3.7.5' + implementation 'com.simplemobiletools:commons:3.7.7' implementation 'joda-time:joda-time:2.9.9' debugImplementation "com.squareup.leakcanary:leakcanary-android:$leakCanaryVersion" diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index 0ebcd872..d781ec5f 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -1,6 +1,4 @@ - - @color/theme_dark_text_color - @color/theme_dark_background_color + From 7eab978a4e414aa2d52de451f66d380f585c1b36 Mon Sep 17 00:00:00 2001 From: Phoenix1747 Date: Wed, 17 Jan 2018 14:32:45 +0100 Subject: [PATCH 29/54] Update strings.xml --- app/src/main/res/values-de/strings.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 1a8106e3..246decc5 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -21,7 +21,7 @@ Kontakt bei Klick anrufen - Namen mit Vornamen beginnen + Namen mit Nachname beginnen Zeige Telefonnummern im Hauptmenü From 8ef613bf510878db47b26d5e53092b535f3d3b83 Mon Sep 17 00:00:00 2001 From: Phoenix1747 Date: Wed, 17 Jan 2018 14:36:51 +0100 Subject: [PATCH 30/54] typo --- app/src/main/res/values-de/strings.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 246decc5..d482754f 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -21,7 +21,7 @@ Kontakt bei Klick anrufen - Namen mit Nachname beginnen + Namen mit Nachnamen beginnen Zeige Telefonnummern im Hauptmenü From b535d6481f15d4c38beef251fce4ca53c4650f35 Mon Sep 17 00:00:00 2001 From: Tibor Kaputa Date: Wed, 17 Jan 2018 16:07:53 +0100 Subject: [PATCH 31/54] change license to 2017+ --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 571c2abc..9c491951 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,7 @@ This app is just one piece of a bigger series of apps. You can find the rest of License ------- - Copyright 2016-present SimpleMobileTools + Copyright 2017-present SimpleMobileTools Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. From 922c9ab2b3dbdbe14303a136033a394741f2d5ee Mon Sep 17 00:00:00 2001 From: tibbi Date: Thu, 18 Jan 2018 10:53:57 +0100 Subject: [PATCH 32/54] updating screenshots --- screenshots/app.png | Bin 81018 -> 79972 bytes screenshots/app_2.png | Bin 69159 -> 68065 bytes screenshots/app_3.png | Bin 89383 -> 88462 bytes 3 files changed, 0 insertions(+), 0 deletions(-) diff --git a/screenshots/app.png b/screenshots/app.png index 98de0809c7046c8575ba74492b202c69d9da4004..5fdfe1320c49117a08296f4e12f414f6e0239ba8 100644 GIT binary patch literal 79972 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 literal 81018 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 k=<=wOMCJ%DSAN^$UtL(DC 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 Nd%F6$taD0e0syXEsI>q9 diff --git a/screenshots/app_2.png b/screenshots/app_2.png index 6d7c50cbc71704c3dfb63150119a4d798dad28b4..ca454ba65705178b36135e1c8a9984dc4e365ca0 100644 GIT binary patch literal 68065 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 literal 69159 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 diff --git a/screenshots/app_3.png b/screenshots/app_3.png index 4c6d025ceda9b433f26407a738d2a8cda6b46ccb..6d51e66d2be850b88dcac3cfc7c11ba6c002ea09 100644 GIT binary patch literal 88462 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

U=xrhKLS~benbtdz0CWF#e8bxB%pBC5P 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

o{F-AMPBlI6Vb;ROKjEuk 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 literal 89383 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�<~>^vF; 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

?UutY0-%yOe2YW(9r(t? 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 Date: Sat, 20 Jan 2018 20:30:46 +0100 Subject: [PATCH 33/54] Add Swedish translation --- app/src/main/res/values-sv/strings.xml | 82 ++++++++++++++++++++++++++ 1 file changed, 82 insertions(+) create mode 100644 app/src/main/res/values-sv/strings.xml diff --git a/app/src/main/res/values-sv/strings.xml b/app/src/main/res/values-sv/strings.xml new file mode 100644 index 00000000..956b2cec --- /dev/null +++ b/app/src/main/res/values-sv/strings.xml @@ -0,0 +1,82 @@ + + Simple Contacts + Kontakter + Adress + Lägger till… + Uppdaterar… + Du måste välja vilket konto kontakten ska tillhöra + + Ny kontakt + Redigera kontakt + Välj kontakt + Välj kontakter + Förnamn + Mellannamn + Efternamn + + + Ta foto + Välj foto + Ta bort foto + + + Ring kontakter när jag trycker på dem + Visa efternamn först + Visa telefonnummer i huvudvyn + + + E-post + Hem + Arbete + Annat + + + Nummer + Mobil + Primärt nummer + Arbetsfax + Hemfax + Personsökare + Inget telefonnummer hittades + + + Födelsedag + Årsdag + + + Det verkar som att du inte har lagt till några favoritkontakter ännu. + Lägg till favoriter + Lägg till i favoriter + Ta bort från favoriter + + + Sök efter kontakter + Sök efter favoriter + + + Importera kontakter + Exportera kontakter + Importera kontakter från en .vcf-fil + Exportera kontakter till en .vcf-fil + Målkontaktkälla + Inkludera kontaktkällor + Filnamn (utan .vcf) + + + + En app för att hantera dina kontakter utan reklam. + + En enkel app för att skapa och hantera kontakter från olika källor. Kontakterna kan lagras bara på din enhet, men kan också synkroniseras med ditt Google-konto eller andra konton. Du kan visa dina favoritkontakter i en separat lista. + + Du kan också använda den för att hantera dina kontakters e-postadresser och händelser. Den kan sortera och filtrera efter flera parametrar. Den kan också visa efternamn först. + + Innehåller ingen reklam eller onödiga behörigheter. Den har helt öppen källkod och anpassningsbara färger. + + Denna app är bara en del av en större serie appar. Du hittar resten av dem på http://www.simplemobiletools.com + + + + From a0d48195432216fc93e05506ca9c77088569b557 Mon Sep 17 00:00:00 2001 From: Nikola Trubitsyn Date: Sun, 21 Jan 2018 04:12:06 +0300 Subject: [PATCH 34/54] Update strings.xml --- app/src/main/res/values-ru/strings.xml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index 2168a051..b79a1e95 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -54,13 +54,13 @@ Поиск избранных - Import contacts - Export contacts - Import contacts from a .vcf file - Export contacts to a .vcf file - Target contact source - Include contact sources - Filename (without .vcf) + Импортировать контакты + Экспортировать контакты + Импортировать контакты из .vcf файла + Экспортировать контакты в .vcf файл + Назначенный к обновлению источник контактов + Включить источники контактов + Имя файла (без .vcf) From 42a3433dc0ce8092799b4d720c64dc09c25a4013 Mon Sep 17 00:00:00 2001 From: Nikola Trubitsyn Date: Mon, 22 Jan 2018 13:11:11 +0300 Subject: [PATCH 35/54] Specify build tools 27.0.3 explicitly --- app/build.gradle | 1 + 1 file changed, 1 insertion(+) diff --git a/app/build.gradle b/app/build.gradle index 6b443e2b..d07508d3 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -4,6 +4,7 @@ apply plugin: 'kotlin-android-extensions' android { compileSdkVersion 27 + buildToolsVersion "27.0.3" defaultConfig { applicationId "com.simplemobiletools.contacts" From 4bfcbd59c4bc1cefb769a89a7841900e5e613c05 Mon Sep 17 00:00:00 2001 From: tibbi Date: Mon, 22 Jan 2018 20:57:48 +0100 Subject: [PATCH 36/54] update kotlin to 1.2.20 --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 9d3da9d8..97726280 100644 --- a/build.gradle +++ b/build.gradle @@ -1,7 +1,7 @@ // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { - ext.kotlin_version = '1.2.10' + ext.kotlin_version = '1.2.20' repositories { google() From 41286a7346fc545f4e041642ebb56497f8b1ee58 Mon Sep 17 00:00:00 2001 From: tibbi Date: Mon, 22 Jan 2018 20:59:30 +0100 Subject: [PATCH 37/54] update commons to 3.8.0 --- app/build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/build.gradle b/app/build.gradle index d07508d3..91dcccd3 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -42,7 +42,7 @@ ext { } dependencies { - implementation 'com.simplemobiletools:commons:3.7.7' + implementation 'com.simplemobiletools:commons:3.8.0' implementation 'joda-time:joda-time:2.9.9' debugImplementation "com.squareup.leakcanary:leakcanary-android:$leakCanaryVersion" From b9224e4db684ed5386fadd99853ab3e56a8a50ed Mon Sep 17 00:00:00 2001 From: tibbi Date: Mon, 22 Jan 2018 20:59:39 +0100 Subject: [PATCH 38/54] update version to 3.1.1 --- app/build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 91dcccd3..cddc42b3 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -10,8 +10,8 @@ android { applicationId "com.simplemobiletools.contacts" minSdkVersion 16 targetSdkVersion 27 - versionCode 5 - versionName "3.1.0" + versionCode 6 + versionName "3.1.1" setProperty("archivesBaseName", "contacts") } From 888c94e69fdaf9d8ba9c4596f82d2636e0c3aa21 Mon Sep 17 00:00:00 2001 From: tibbi Date: Mon, 22 Jan 2018 20:59:44 +0100 Subject: [PATCH 39/54] updating changelog --- CHANGELOG.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index fa96fb92..df0f9e28 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,11 @@ Changelog ========== +Version 3.1.1 *(2018-01-22)* +---------------------------- + + * An f-droid build test version + Version 3.1.0 *(2018-01-16)* ---------------------------- From f2e4f4385148309a9a17a3b4556fa8e943358e6f Mon Sep 17 00:00:00 2001 From: tibbi Date: Mon, 22 Jan 2018 23:05:02 +0100 Subject: [PATCH 40/54] move the screenshots in fastlane --- README.md | 6 +++--- .../android/en-US/images/featureGraphic.png | Bin 0 -> 6179 bytes fastlane/metadata/android/en-US/images/icon.png | Bin 0 -> 17042 bytes .../en-US/images/phoneScreenshots}/app.png | Bin .../en-US/images/phoneScreenshots}/app_2.png | Bin .../en-US/images/phoneScreenshots}/app_3.png | Bin fastlane/metadata/android/en-US/title.txt | 1 + 7 files changed, 4 insertions(+), 3 deletions(-) create mode 100644 fastlane/metadata/android/en-US/images/featureGraphic.png create mode 100644 fastlane/metadata/android/en-US/images/icon.png rename {screenshots => fastlane/metadata/android/en-US/images/phoneScreenshots}/app.png (100%) rename {screenshots => fastlane/metadata/android/en-US/images/phoneScreenshots}/app_2.png (100%) rename {screenshots => fastlane/metadata/android/en-US/images/phoneScreenshots}/app_3.png (100%) create mode 100644 fastlane/metadata/android/en-US/title.txt diff --git a/README.md b/README.md index 9c491951..0b67eb6a 100644 --- a/README.md +++ b/README.md @@ -13,9 +13,9 @@ This app is just one piece of a bigger series of apps. You can find the rest of Get it on F-Droid

-App image -App image -App image +App image +App image +App image
License diff --git a/fastlane/metadata/android/en-US/images/featureGraphic.png b/fastlane/metadata/android/en-US/images/featureGraphic.png new file mode 100644 index 0000000000000000000000000000000000000000..bb47ee959213df4ea463439e0bcd9b4c8cfc64cf GIT binary patch literal 6179 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 NJ#7PI(KV}({|C=?>J|V1 literal 0 HcmV?d00001 diff --git a/screenshots/app.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/app.png similarity index 100% rename from screenshots/app.png rename to fastlane/metadata/android/en-US/images/phoneScreenshots/app.png diff --git a/screenshots/app_2.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/app_2.png similarity index 100% rename from screenshots/app_2.png rename to fastlane/metadata/android/en-US/images/phoneScreenshots/app_2.png diff --git a/screenshots/app_3.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/app_3.png similarity index 100% rename from screenshots/app_3.png rename to fastlane/metadata/android/en-US/images/phoneScreenshots/app_3.png diff --git a/fastlane/metadata/android/en-US/title.txt b/fastlane/metadata/android/en-US/title.txt new file mode 100644 index 00000000..d83108ca --- /dev/null +++ b/fastlane/metadata/android/en-US/title.txt @@ -0,0 +1 @@ +Simple Contacts From 21103fd202e43b69cc356e73a607ff861cd4c489 Mon Sep 17 00:00:00 2001 From: Tibor Kaputa Date: Mon, 22 Jan 2018 23:05:31 +0100 Subject: [PATCH 41/54] Update README.md --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 0b67eb6a..25e5fc37 100644 --- a/README.md +++ b/README.md @@ -13,9 +13,9 @@ This app is just one piece of a bigger series of apps. You can find the rest of Get it on F-Droid
-App image -App image -App image +App image +App image +App image
License From c9549cd60fe48a88e71c6d3aab20708a3a8acfa0 Mon Sep 17 00:00:00 2001 From: tibbi Date: Tue, 23 Jan 2018 20:10:51 +0100 Subject: [PATCH 42/54] add app descriptions to fastlane --- fastlane/metadata/android/en-US/full_description.txt | 7 +++++++ fastlane/metadata/android/en-US/short_description.txt | 1 + 2 files changed, 8 insertions(+) create mode 100644 fastlane/metadata/android/en-US/full_description.txt create mode 100644 fastlane/metadata/android/en-US/short_description.txt diff --git a/fastlane/metadata/android/en-US/full_description.txt b/fastlane/metadata/android/en-US/full_description.txt new file mode 100644 index 00000000..30b18821 --- /dev/null +++ b/fastlane/metadata/android/en-US/full_description.txt @@ -0,0 +1,7 @@ +A simple app for creating or managing your contacts from any source. The contacts can be stored on your device only, but also synchronized via Google, or other accounts. You can display your favorite contacts on a separate list. + +You can use it for managing user emails and events too. It has the ability to sort/filter by multiple parameters, optionally display surname as the first name. + +Contains no ads or unnecessary permissions. It is fully opensource, provides customizable colors. + +This app is just one piece of a bigger series of apps. You can find the rest of them at http://www.simplemobiletools.com diff --git a/fastlane/metadata/android/en-US/short_description.txt b/fastlane/metadata/android/en-US/short_description.txt new file mode 100644 index 00000000..754859ae --- /dev/null +++ b/fastlane/metadata/android/en-US/short_description.txt @@ -0,0 +1 @@ +A contacts app for managing your contacts without ads. From 3c643e7dedcc411d148c919d7ac385da5b6e6a9c Mon Sep 17 00:00:00 2001 From: tibbi Date: Tue, 23 Jan 2018 20:10:59 +0100 Subject: [PATCH 43/54] update commons to 3.8.2 --- app/build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/build.gradle b/app/build.gradle index cddc42b3..c5fb6f2e 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -42,7 +42,7 @@ ext { } dependencies { - implementation 'com.simplemobiletools:commons:3.8.0' + implementation 'com.simplemobiletools:commons:3.8.2' implementation 'joda-time:joda-time:2.9.9' debugImplementation "com.squareup.leakcanary:leakcanary-android:$leakCanaryVersion" From a916827b476ab5f61f6401a77379fecdb6487633 Mon Sep 17 00:00:00 2001 From: tibbi Date: Tue, 23 Jan 2018 20:38:21 +0100 Subject: [PATCH 44/54] show the empty placeholder if search gives no results --- .../contacts/fragments/MyViewPagerFragment.kt | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/fragments/MyViewPagerFragment.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/fragments/MyViewPagerFragment.kt index 0f0099d2..f66300bc 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/fragments/MyViewPagerFragment.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/fragments/MyViewPagerFragment.kt @@ -169,6 +169,11 @@ abstract class MyViewPagerFragment(context: Context, attributeSet: AttributeSet) filtered.sort() filtered.sortBy { !it.getFullName(startNameWithSurname).startsWith(text, true) } + if (filtered.isEmpty() && this@MyViewPagerFragment is FavoritesFragment) { + fragment_placeholder.text = activity.getString(R.string.no_items_found) + } + + fragment_placeholder.beVisibleIf(filtered.isEmpty()) updateItems(filtered) } } @@ -179,6 +184,9 @@ abstract class MyViewPagerFragment(context: Context, attributeSet: AttributeSet) fun onSearchClosed() { (fragment_list.adapter as ContactsAdapter).updateItems(contactsIgnoringSearch) + if (this is FavoritesFragment) { + fragment_placeholder.text = activity?.getString(R.string.no_favorites) + } } private fun updateViewStuff() { From d59f2277ab4a4c6f6b69928daa38bfbc92dc11ab Mon Sep 17 00:00:00 2001 From: tibbi Date: Tue, 23 Jan 2018 20:40:02 +0100 Subject: [PATCH 45/54] allow empty account name at contact fetching --- .../com/simplemobiletools/contacts/helpers/ContactsHelper.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt index 018d0e61..5683bb0d 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt @@ -52,7 +52,7 @@ class ContactsHelper(val activity: BaseSimpleActivity) { val number = ArrayList() // proper value is obtained below val emails = ArrayList() val events = ArrayList() - val accountName = cursor.getStringValue(ContactsContract.RawContacts.ACCOUNT_NAME) + val accountName = cursor.getStringValue(ContactsContract.RawContacts.ACCOUNT_NAME) ?: "" val starred = cursor.getIntValue(CommonDataKinds.StructuredName.STARRED) val contactId = cursor.getIntValue(ContactsContract.Data.CONTACT_ID) val thumbnailUri = cursor.getStringValue(CommonDataKinds.StructuredName.PHOTO_THUMBNAIL_URI) ?: "" From 83418936f5576709a449bb128389e241beaa9e84 Mon Sep 17 00:00:00 2001 From: tibbi Date: Tue, 23 Jan 2018 21:04:13 +0100 Subject: [PATCH 46/54] fix #4, properly import contacts exported from Thunderbird --- .../contacts/helpers/VcfImporter.kt | 26 ++++++++++--------- 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfImporter.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfImporter.kt index e1f2e0d0..d42f7fbd 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfImporter.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/VcfImporter.kt @@ -57,14 +57,14 @@ class VcfImporter(val activity: SimpleActivity) { } when { - line == BEGIN_VCARD -> resetValues() - line.startsWith(N) -> parseNames(line.substring(N.length)) - line.startsWith(TEL) -> addPhoneNumber(line.substring(TEL.length)) - line.startsWith(EMAIL) -> addEmail(line.substring(EMAIL.length)) - line.startsWith(BDAY) -> addBirthday(line.substring(BDAY.length)) - line.startsWith(ANNIVERSARY) -> addAnniversary(line.substring(ANNIVERSARY.length)) - line.startsWith(PHOTO) -> addPhoto(line.substring(PHOTO.length)) - line == END_VCARD -> saveContact(targetContactSource) + line.toUpperCase() == BEGIN_VCARD -> resetValues() + line.toUpperCase().startsWith(N) -> parseNames(line.substring(N.length)) + line.toUpperCase().startsWith(TEL) -> addPhoneNumber(line.substring(TEL.length)) + line.toUpperCase().startsWith(EMAIL) -> addEmail(line.substring(EMAIL.length)) + line.toUpperCase().startsWith(BDAY) -> addBirthday(line.substring(BDAY.length)) + line.toUpperCase().startsWith(ANNIVERSARY) -> addAnniversary(line.substring(ANNIVERSARY.length)) + line.toUpperCase().startsWith(PHOTO) -> addPhoto(line.substring(PHOTO.length)) + line.toUpperCase() == END_VCARD -> saveContact(targetContactSource) isGettingPhoto -> currentPhotoString.append(line.trim()) } } @@ -83,9 +83,11 @@ class VcfImporter(val activity: SimpleActivity) { private fun parseNames(names: String) { val nameParts = names.split(";") - curFirstName = nameParts[1] - curMiddleName = nameParts[2] curSurname = nameParts[0] + curFirstName = nameParts[1] + if (nameParts.size > 2) { + curMiddleName = nameParts[2] + } } private fun addPhoneNumber(phoneNumber: String) { @@ -100,7 +102,7 @@ class VcfImporter(val activity: SimpleActivity) { rawType = types.last() } - val type = getPhoneNumberTypeId(rawType, subType) + val type = getPhoneNumberTypeId(rawType.toUpperCase(), subType) val value = phoneParts[1] curPhoneNumbers.add(PhoneNumber(value, type)) } @@ -123,7 +125,7 @@ class VcfImporter(val activity: SimpleActivity) { if (rawType.contains('=')) { rawType = rawType.split('=').last() } - val type = getEmailTypeId(rawType) + val type = getEmailTypeId(rawType.toUpperCase()) val value = emailParts[1] curEmails.add(Email(value, type)) } From 71d40b0e08dc7fe80343b3f66bd280b6149561d4 Mon Sep 17 00:00:00 2001 From: tibbi Date: Tue, 23 Jan 2018 21:13:12 +0100 Subject: [PATCH 47/54] ignore phone number entries without a number --- .../com/simplemobiletools/contacts/helpers/ContactsHelper.kt | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt index 5683bb0d..9687776f 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt @@ -106,14 +106,15 @@ class ContactsHelper(val activity: BaseSimpleActivity) { if (cursor?.moveToFirst() == true) { do { val id = cursor.getIntValue(ContactsContract.Data.RAW_CONTACT_ID) - val number = cursor.getStringValue(CommonDataKinds.Phone.NUMBER) + val number = cursor.getStringValue(CommonDataKinds.Phone.NUMBER) ?: continue val type = cursor.getIntValue(CommonDataKinds.Phone.TYPE) if (phoneNumbers[id] == null) { phoneNumbers.put(id, ArrayList()) } - phoneNumbers[id].add(PhoneNumber(number, type)) + val phoneNumber = PhoneNumber(number, type) + phoneNumbers[id].add(phoneNumber) } while (cursor.moveToNext()) } } finally { From 2606456255f99576f21cea53426b107297d64897 Mon Sep 17 00:00:00 2001 From: tibbi Date: Tue, 23 Jan 2018 21:15:23 +0100 Subject: [PATCH 48/54] catch and report errors thrown at obtaining phone numbers and emails --- .../com/simplemobiletools/contacts/helpers/ContactsHelper.kt | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt index 9687776f..af03044a 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt @@ -117,6 +117,8 @@ class ContactsHelper(val activity: BaseSimpleActivity) { phoneNumbers[id].add(phoneNumber) } while (cursor.moveToNext()) } + } catch (e: Exception) { + activity.showErrorToast(e) } finally { cursor?.close() } @@ -151,6 +153,9 @@ class ContactsHelper(val activity: BaseSimpleActivity) { emails[id]!!.add(Email(email, type)) } while (cursor.moveToNext()) } + + } catch (e: Exception) { + activity.showErrorToast(e) } finally { cursor?.close() } From d2d5f306e29dd1447a680f816e4fc5f2d7376eae Mon Sep 17 00:00:00 2001 From: tibbi Date: Tue, 23 Jan 2018 21:16:58 +0100 Subject: [PATCH 49/54] adding some null checks --- .../simplemobiletools/contacts/activities/MainActivity.kt | 8 ++++---- .../contacts/fragments/MyViewPagerFragment.kt | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt index 06f1623c..730f4324 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/MainActivity.kt @@ -111,10 +111,10 @@ class MainActivity : SimpleActivity(), RefreshContactsListener { if (viewpager.adapter == null) { initFragments() } - contacts_fragment.initContacts() - contacts_fragment.onActivityResume() - favorites_fragment.initContacts() - favorites_fragment.onActivityResume() + contacts_fragment?.initContacts() + contacts_fragment?.onActivityResume() + favorites_fragment?.initContacts() + favorites_fragment?.onActivityResume() } isFirstResume = false } diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/fragments/MyViewPagerFragment.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/fragments/MyViewPagerFragment.kt index f66300bc..150cfd3e 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/fragments/MyViewPagerFragment.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/fragments/MyViewPagerFragment.kt @@ -179,7 +179,7 @@ abstract class MyViewPagerFragment(context: Context, attributeSet: AttributeSet) } fun onSearchOpened() { - contactsIgnoringSearch = (fragment_list.adapter as ContactsAdapter).contactItems as ArrayList + contactsIgnoringSearch = (fragment_list.adapter as? ContactsAdapter)?.contactItems as ArrayList } fun onSearchClosed() { From 79f4b38c8c5f2593037de10639a29988e4909878 Mon Sep 17 00:00:00 2001 From: tibbi Date: Tue, 23 Jan 2018 21:18:31 +0100 Subject: [PATCH 50/54] allow empty accountName at getting a specific contact info too --- .../com/simplemobiletools/contacts/helpers/ContactsHelper.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt index af03044a..6827551e 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/helpers/ContactsHelper.kt @@ -216,7 +216,7 @@ class ContactsHelper(val activity: BaseSimpleActivity) { val number = getPhoneNumbers(id)[id] ?: ArrayList() val emails = getEmails(id)[id] ?: ArrayList() val events = getEvents(id)[id] ?: ArrayList() - val accountName = cursor.getStringValue(ContactsContract.RawContacts.ACCOUNT_NAME) + val accountName = cursor.getStringValue(ContactsContract.RawContacts.ACCOUNT_NAME) ?: "" val starred = cursor.getIntValue(CommonDataKinds.StructuredName.STARRED) val contactId = cursor.getIntValue(ContactsContract.Data.CONTACT_ID) val thumbnailUri = cursor.getStringValue(CommonDataKinds.StructuredName.PHOTO_THUMBNAIL_URI) ?: "" From 82ab0f2958185ae600e9f37760e88ffe5b4d5554 Mon Sep 17 00:00:00 2001 From: tibbi Date: Tue, 23 Jan 2018 21:19:06 +0100 Subject: [PATCH 51/54] update version to 3.1.2 --- app/build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index c5fb6f2e..9caf6647 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -10,8 +10,8 @@ android { applicationId "com.simplemobiletools.contacts" minSdkVersion 16 targetSdkVersion 27 - versionCode 6 - versionName "3.1.1" + versionCode 7 + versionName "3.1.2" setProperty("archivesBaseName", "contacts") } From 194140f67a9a8e37ec9f315e458eb5f1710f1e2b Mon Sep 17 00:00:00 2001 From: tibbi Date: Tue, 23 Jan 2018 21:19:11 +0100 Subject: [PATCH 52/54] updating changelog --- CHANGELOG.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index df0f9e28..857219bd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,12 @@ Changelog ========== +Version 3.1.2 *(2018-01-23)* +---------------------------- + + * Properly handle vcf files exported from Thunderbird + * Misc smaller improvements + Version 3.1.1 *(2018-01-22)* ---------------------------- From ad9dac8ec6cd00a1521c1348e9131102b7b23f9a Mon Sep 17 00:00:00 2001 From: Tibor Kaputa Date: Tue, 23 Jan 2018 21:30:36 +0100 Subject: [PATCH 53/54] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 25e5fc37..5e9e5da6 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ Contains no ads or unnecessary permissions. It is fully opensource, provides cus This app is just one piece of a bigger series of apps. You can find the rest of them at http://www.simplemobiletools.com Get it on Google Play -Get it on F-Droid +Get it on F-Droid
App image From 4ffcfcd2f40295070308db985d63e4491fe92772 Mon Sep 17 00:00:00 2001 From: tibbi Date: Sat, 27 Jan 2018 20:26:15 +0100 Subject: [PATCH 54/54] add some strings related to toggling contact avatars --- app/src/main/res/values-de/strings.xml | 1 + app/src/main/res/values-ko-rKR/strings.xml | 1 + app/src/main/res/values-pt/strings.xml | 1 + app/src/main/res/values-ru/strings.xml | 1 + app/src/main/res/values-sk/strings.xml | 1 + app/src/main/res/values-sv/strings.xml | 1 + app/src/main/res/values/strings.xml | 1 + 7 files changed, 7 insertions(+) diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index d482754f..8809a0f8 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -23,6 +23,7 @@ Kontakt bei Klick anrufen Namen mit Nachnamen beginnen Zeige Telefonnummern im Hauptmenü + Show contact avatars Email diff --git a/app/src/main/res/values-ko-rKR/strings.xml b/app/src/main/res/values-ko-rKR/strings.xml index b0cd5b7e..bde780d0 100644 --- a/app/src/main/res/values-ko-rKR/strings.xml +++ b/app/src/main/res/values-ko-rKR/strings.xml @@ -23,6 +23,7 @@ 클릭으로 전화걸기 성을 먼저 표시 메인 스크린에 전화번호 표시 + Show contact avatars 이메일 diff --git a/app/src/main/res/values-pt/strings.xml b/app/src/main/res/values-pt/strings.xml index 7eff3cc3..e88a3341 100644 --- a/app/src/main/res/values-pt/strings.xml +++ b/app/src/main/res/values-pt/strings.xml @@ -23,6 +23,7 @@ Call contact on click Start name with surname Show phone numbers on the main screen + Show contact avatars E-mail diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index b79a1e95..9e6936ff 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -23,6 +23,7 @@ Вызывать контакт при нажатии Отображать сначала фамилии Отображать номера телефонов на главном экране + Show contact avatars Эл. почта diff --git a/app/src/main/res/values-sk/strings.xml b/app/src/main/res/values-sk/strings.xml index 7f9e47b8..0d76b488 100644 --- a/app/src/main/res/values-sk/strings.xml +++ b/app/src/main/res/values-sk/strings.xml @@ -23,6 +23,7 @@ Zavolať kontakt po kliknutí Začať meno priezviskom Zobraziť telefónne čísla na hlavnej obrazovke + Zobraziť obrázky kontaktov Email diff --git a/app/src/main/res/values-sv/strings.xml b/app/src/main/res/values-sv/strings.xml index 956b2cec..1d4f9c6a 100644 --- a/app/src/main/res/values-sv/strings.xml +++ b/app/src/main/res/values-sv/strings.xml @@ -23,6 +23,7 @@ Ring kontakter när jag trycker på dem Visa efternamn först Visa telefonnummer i huvudvyn + Show contact avatars E-post diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index d8998545..4966b2d5 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -23,6 +23,7 @@ Call contact on click Start name with surname Show phone numbers on the main screen + Show contact avatars Email