summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkaiyiz <kaiyiz@codeaurora.org>2014-06-07 17:34:12 +0800
committerRoman Birg <roman@cyngn.com>2014-09-02 14:06:13 -0700
commitb438bc1b86f28db3a3bd221aeaa624827eb2352e (patch)
tree287414b7c343c8fe31473f61d51140fcb218efb7
parent321db95e6ce491968d5fbff0760674b86c1e7c55 (diff)
downloadandroid_packages_apps_ContactsCommon-b438bc1b86f28db3a3bd221aeaa624827eb2352e.tar.gz
android_packages_apps_ContactsCommon-b438bc1b86f28db3a3bd221aeaa624827eb2352e.tar.bz2
android_packages_apps_ContactsCommon-b438bc1b86f28db3a3bd221aeaa624827eb2352e.zip
Contacts: Add reasonable prompt for failing to export contacts
Except freeSimCount > 0, we consider other cases as the sim card is full. When freeSimCount <=0, check the adn count, it the adn count is 0, we consider it as sim contacts have not been loaded completely. CRs-Fixed: 676506 Change-Id: I2bce07e986606610bcbd6a3f596e9533e6848f18
-rw-r--r--res/values/cm_strings.xml2
-rw-r--r--src/com/android/contacts/common/interactions/ImportExportDialogFragment.java19
2 files changed, 18 insertions, 3 deletions
diff --git a/res/values/cm_strings.xml b/res/values/cm_strings.xml
index e0697442..1bf0fd8c 100644
--- a/res/values/cm_strings.xml
+++ b/res/values/cm_strings.xml
@@ -108,4 +108,6 @@
<!-- Storage path -->
<string name="sd_card">SD card</string>
<string name="phone_storage">Phone storage</string>
+
+ <string name="sim_contacts_not_load">Error, SIM contacts have not been loaded completely.</string>
</resources>
diff --git a/src/com/android/contacts/common/interactions/ImportExportDialogFragment.java b/src/com/android/contacts/common/interactions/ImportExportDialogFragment.java
index 2ef2f2b2..4fcf290f 100644
--- a/src/com/android/contacts/common/interactions/ImportExportDialogFragment.java
+++ b/src/com/android/contacts/common/interactions/ImportExportDialogFragment.java
@@ -149,6 +149,8 @@ public class ImportExportDialogFragment extends DialogFragment
private static final int TOAST_EXPORT_CANCELED = 4;
// only for not have phone number or email address
private static final int TOAST_EXPORT_NO_PHONE_OR_EMAIL = 5;
+ // only for sim contacts haven't been loaded completely
+ private static final int TOAST_SIM_CARD_NOT_LOAD_COMPLETE = 6;
private static final boolean DEBUG = false;
private static boolean isMenuItemClicked = false;
private SimContactsOperation mSimContactsOperation;
@@ -605,6 +607,7 @@ public class ImportExportDialogFragment extends DialogFragment
Account account = new Account(accountName,accountType);
boolean isAirplaneMode = false;
boolean isSimCardFull = false;
+ boolean isSimCardLoaded = true;
// GoogleSource.createMyContactsIfNotExist(account, getActivity());
// in case export is stopped, record the count of inserted successfully
int insertCount = 0;
@@ -645,7 +648,7 @@ public class ImportExportDialogFragment extends DialogFragment
if (type == TYPE_SELECT) {
if (contactList != null) {
Iterator<String[]> iterator = contactList.iterator();
- while (iterator.hasNext() && !canceled && !isAirplaneMode) {
+ while (iterator.hasNext() && !canceled && !isAirplaneMode && isSimCardLoaded) {
String[] contactInfo = iterator.next();
String name = "";
ArrayList<String> arrayNumber = new ArrayList<String>();
@@ -756,8 +759,14 @@ public class ImportExportDialogFragment extends DialogFragment
freeSimCount--;
}
} else {
- isSimCardFull = true;
- mToastHandler.sendEmptyMessage(TOAST_SIM_CARD_FULL);
+ if (MoreContactUtils.getAdnCount(subscription) == 0) {
+ isSimCardLoaded = false;
+ mToastHandler.sendEmptyMessage(
+ TOAST_SIM_CARD_NOT_LOAD_COMPLETE);
+ } else {
+ isSimCardFull = true;
+ mToastHandler.sendEmptyMessage(TOAST_SIM_CARD_FULL);
+ }
break;
}
}
@@ -857,6 +866,10 @@ public class ImportExportDialogFragment extends DialogFragment
mPeople.getString(R.string.export_no_phone_or_email, name),
Toast.LENGTH_SHORT).show();
break;
+ case TOAST_SIM_CARD_NOT_LOAD_COMPLETE:
+ Toast.makeText(mPeople, R.string.sim_contacts_not_load,
+ Toast.LENGTH_SHORT).show();
+ break;
}
}
};