summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsrowen <srowen@59b500cc-1b3d-0410-9834-0bbf25fbcc57>2012-01-21 21:53:24 +0400
committersrowen <srowen@59b500cc-1b3d-0410-9834-0bbf25fbcc57>2012-01-21 21:53:24 +0400
commitefe44ae321cdf337de81292f6519fe514d2152e0 (patch)
tree5167235a868f2207a44befdf714d895a99c7237f
parentaa86a75b10e1c129d51ef15a69635e8974a08e8e (diff)
downloadzxing-android-embedded-efe44ae321cdf337de81292f6519fe514d2152e0.tar.xz
Put URL, birthday in notes as there's not a better place for them by Intent
git-svn-id: http://zxing.googlecode.com/svn/trunk/android@2131 59b500cc-1b3d-0410-9834-0bbf25fbcc57
-rw-r--r--src/com/google/zxing/client/android/result/AddressBookResultHandler.java4
-rw-r--r--src/com/google/zxing/client/android/result/ResultHandler.java23
2 files changed, 22 insertions, 5 deletions
diff --git a/src/com/google/zxing/client/android/result/AddressBookResultHandler.java b/src/com/google/zxing/client/android/result/AddressBookResultHandler.java
index 2dbc02d2..f5999675 100644
--- a/src/com/google/zxing/client/android/result/AddressBookResultHandler.java
+++ b/src/com/google/zxing/client/android/result/AddressBookResultHandler.java
@@ -127,7 +127,9 @@ public final class AddressBookResultHandler extends ResultHandler {
address1,
address1Type,
addressResult.getOrg(),
- addressResult.getTitle());
+ addressResult.getTitle(),
+ addressResult.getURL(),
+ addressResult.getBirthday());
break;
case 1:
String[] names = addressResult.getNames();
diff --git a/src/com/google/zxing/client/android/result/ResultHandler.java b/src/com/google/zxing/client/android/result/ResultHandler.java
index 70915fa1..bec4209b 100644
--- a/src/com/google/zxing/client/android/result/ResultHandler.java
+++ b/src/com/google/zxing/client/android/result/ResultHandler.java
@@ -285,11 +285,11 @@ public abstract class ResultHandler {
}
final void addPhoneOnlyContact(String[] phoneNumbers,String[] phoneTypes) {
- addContact(null, null, phoneNumbers, phoneTypes, null, null, null, null, null, null, null, null);
+ addContact(null, null, phoneNumbers, phoneTypes, null, null, null, null, null, null, null, null, null, null);
}
final void addEmailOnlyContact(String[] emails, String[] emailTypes) {
- addContact(null, null, null, null, emails, emailTypes, null, null, null, null, null, null);
+ addContact(null, null, null, null, emails, emailTypes, null, null, null, null, null, null, null, null);
}
final void addContact(String[] names,
@@ -303,7 +303,9 @@ public abstract class ResultHandler {
String address,
String addressType,
String org,
- String title) {
+ String title,
+ String url,
+ String birthday) {
// Only use the first name in the array, if present.
Intent intent = new Intent(Intent.ACTION_INSERT_OR_EDIT, ContactsContract.Contacts.CONTENT_URI);
@@ -334,7 +336,20 @@ public abstract class ResultHandler {
}
}
- putExtra(intent, ContactsContract.Intents.Insert.NOTES, note);
+ // No field for URL, birthday; use notes
+ StringBuilder aggregatedNotes = new StringBuilder();
+ for (String aNote : new String[] { url, birthday, note }) {
+ if (aNote != null) {
+ if (aggregatedNotes.length() > 0) {
+ aggregatedNotes.append('\n');
+ }
+ aggregatedNotes.append(aNote);
+ }
+ }
+ if (aggregatedNotes.length() > 0) {
+ putExtra(intent, ContactsContract.Intents.Insert.NOTES, aggregatedNotes.toString());
+ }
+
putExtra(intent, ContactsContract.Intents.Insert.IM_HANDLE, instantMessenger);
putExtra(intent, ContactsContract.Intents.Insert.POSTAL, address);
if (addressType != null) {