Save contacts to local file and share
We extend ExportVCardActivity in order to reuse VCarcService
to write contacts data to vcf file in background. This change
gets rid of TransactionTooLargeException and provides better
user experience, since we write data in background.
The current UX design is: user will receive Toast message
once export file is ready, and then user needs to tap the
notification to share contacts.
Bug 22083005
Change-Id: I7d7142f3037b1a0647d185d477365df8f2994271
(cherry picked from commit e6c7494bbafe1bef1187245510b1ec0beba6ce10)
diff --git a/res-common/values/donottranslate_config.xml b/res-common/values/donottranslate_config.xml
index a7142e2..d0e0b38 100644
--- a/res-common/values/donottranslate_config.xml
+++ b/res-common/values/donottranslate_config.xml
@@ -90,4 +90,7 @@
<string name="pref_open_source_licenses_key">pref_open_source_licenses</string>
<string name="pref_privacy_policy_key">pref_privacy_policy</string>
<string name="pref_terms_of_service_key">pref_terms_of_service</string>
+
+ <!-- File Authority for AOSP Contacts files -->
+ <string name="contacts_file_provider_authority">com.android.contacts.files</string>
</resources>
diff --git a/res-common/values/strings.xml b/res-common/values/strings.xml
index ce4cd30..54d14d7 100644
--- a/res-common/values/strings.xml
+++ b/res-common/values/strings.xml
@@ -520,6 +520,12 @@
<!-- The title shown when exporting vCard has finished successfully but the destination filename could not be resolved. [CHAR LIMIT=NONE] -->
<string name="exporting_vcard_finished_title_fallback">Finished exporting contacts.</string>
+ <!-- The toast message shown when exporting vCard has finished and vCards are ready to be shared [CHAR LIMIT=150]-->
+ <string name="exporting_vcard_finished_toast">Finished exporting contacts, click the notification to share contacts.</string>
+
+ <!-- The message on notification shown when exporting vCard has finished and vCards are ready to be shared [CHAR LIMIT=60]-->
+ <string name="touch_to_share_contacts">Tap to share contacts.</string>
+
<!-- The title shown when exporting vCard is canceled (probably by a user)
The argument is file name the user canceled importing.
[CHAR LIMIT=40] -->
@@ -529,7 +535,7 @@
<string name="exporting_contact_list_title">Exporting contact data</string>
<!-- Message shown when the application is exporting contact data outside -->
- <string name="exporting_contact_list_message">Your contact data is being exported to: <xliff:g id="file_name">%s</xliff:g>.</string>
+ <string name="exporting_contact_list_message">Contact data is being exported.</string>
<!-- The error reason the vCard composer "may" emit when database is corrupted or
something is going wrong. Usually users should not see this text. [CHAR LIMIT=NONE] -->
@@ -597,6 +603,9 @@
<!-- The message shown when a vCard export request is accepted but the destination filename could not be resolved. [CHAR LIMIT=NONE] -->
<string name="vcard_export_will_start_message_fallback">The file will be exported shortly.</string>
+ <!-- The message shown when a vCard export request is accepted and contacts will be exported shortly. [CHAR LIMIT=70]-->
+ <string name="contacts_export_will_start_message">Contacts will be exported shortly.</string>
+
<!-- The message shown when a given vCard export request is rejected by the system. [CHAR LIMIT=NONE] -->
<string name="vcard_export_request_rejected_message">vCard export request was rejected. Try again later.</string>
<!-- Used when file name is unknown in vCard processing. It typically happens