/android/import-contacts

To get this branch, use:
bzr branch http://bzr.ed.am/android/import-contacts

« back to all changes in this revision

Viewing changes to TODO

  • Committer: edam
  • Date: 2011-05-02 18:28:24 UTC
  • Revision ID: edam@waxworlds.org-20110502182824-acgdi3qfxfzqgely
- fixed logic for vcard field types (home, work, cell, etc) so it works
- updated NEWS and TODO
- rewrote most of ContactsCache, including a new ContactIdentifier class to identify contacts in the cache and new cache building code
- contacts now identified in the same way that Andoid displays them (by name, or organisation, or number, or email, in that order)
- propper handling and support for organisations and titles
- validation of imported contact now done by Importer, not VcfImporter
- separated sanitisation and normalisation (for cache lookups)
- generacised PhoneData, EmailData and AddressData classes
- ContactData is now aware of primary numbers, emails and organisations (defaults to the first prefrred one seen, or the first one seen where none is preferred)

Show diffs side-by-side

added added

removed removed

1
 
IMMEDIATE (for next release)
2
 
 
3
 
* re-import all the test data, having added a TEL to one of the contacts,
4
 
        merging dupes, so we can test merging with cached contacts
5
 
* add support for arbitrary notes in vCards
6
 
* add ContactsContract backend
7
 
        ? enumerate different account name/type combos and assign them an id
8
 
        ? with each cached contact, store the account that it comes from
9
 
        ? change contactscache to store names as "associated" data
10
 
        ? change contacts cache so that names, organisations, primary phones and
11
 
                emails map to an array of ids (ContactsContract can store multiple
12
 
                contacts with the same identifying detail, the old backend can't)
13
 
        ? add selection of account to create contacts in
14
 
 
15
 
FUTURE
16
 
 
17
 
* add a logfile facility
18
 
* add facility to enter a group name, that any imported contacts are added to
 
1
* declare war on camelCase variables
19
2
* change some public final static ints, that aren't really consts, in to enums
 
3
* create a back-end object to read/write to android. This can be overridden to
 
4
        use the new ContractsContacts API.
20
5
* add warnings when email addresses, phone numbers, etc, fail sanitisation (and
21
 
        are ignored) during the import (see TODO comments in the code)
 
6
        are ignored) during the import
22
7
* add base64 decoding to support (even if to ignore) vcards with image data
23
8
* possible bug: when displaying "aborting import" toaster, make sure the back
24
9
        button is enabled and the abort button is hidden (as if abort were pressed)
25
10
        since this can happen if, say, the alarm goes off.
26
 
* add facility to be asked whether to import all contacts, not just those that
27
 
        are duplicates.
28
 
* add facility to import a duplicate contact as a new contact
29
 
        - is this possible? can you have two contacts with the same name in Android?
30
 
        - how would future duplicate merging be handled? you'd have to select which
31
 
                one you wanted to merge in to!
32
 
* in the long term, we probably need to save/restore state from doit/importer
33
 
        and stop preventing screen rotation on some activities
 
11
* in the long term, we need to save/restore state from doit/importer