/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-30 14:04:51 UTC
  • Revision ID: edam@waxworlds.org-20110530140451-d99fy3zoi6zq1jf2
- renamed VCFImporter to VcardImporter and VCard to Vcard

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
IMMEDIATE (for next release)
2
 
 
3
 
* re-import all the test data, skipping dupes, so we can test caching
4
 
* re-import all the test data, having added a TEL to one of the contacts,
5
 
        merging dupes, so we can test merging with cached contacts
6
 
* things to check from test data
7
 
        - if there is a dupe that is merged contains a TEL, does that take
8
 
                preference over the existing contact's preferred TEL?
9
 
* "TEL;TYPE=WORK;TYPE=FAX:" is imported as "work", not "work fax"!
10
 
* after correcting the "TYPE=WORK;TYPE=FAX" issue, check that when two numbers
11
 
        appear, the first a fax, the second a normal number, but neither is
12
 
        preferred, the normal number takes precedence
13
 
* "EMAIL;TYPE=INTERNET;TYPE=WORK:" imports a "home" email address
 
1
* VcardImporter.Vcard.finaliseParsing() should be renamed to finalise() to
 
2
        override Importer.ContactData.finalise(), if Java will permit us to do that
 
3
        (fnaliseParsing() throws stuff that finalise() doesn't), and should call
 
4
        super.finalise().
 
5
* rename Importer.isImportRequired() to checkForDuplicate() and make it private.
 
6
        This should be called from Importer.importContact(), which should then call
 
7
        skipContact() to update the UI and return if checkForDuplicate() returns
 
8
        false.
 
9
* ContactData.finalise should create a ContactsCache.CacheIdentifier and throw
 
10
        ContactCannotBeIdentifiedException() if that fails, which can be picked up
 
11
        in Vcard.finalise(). Importer.importContact() and the renamed
 
12
        Importer.checkForDuplicates() should use the ContactData's CacheIdentifier
 
13
        and not create their own. This will also ensure that ContactData.finalise()
 
14
        has been correctly called (or the identifier would be null).
 
15
* import a crap-load of contacts before release!
14
16
* change some public final static ints, that aren't really consts, in to enums
15
 
 
16
 
FUTURE
17
 
 
18
17
* create a back-end object to read/write to android. This can be overridden to
19
18
        use the new ContractsContacts API.
20
19
* add warnings when email addresses, phone numbers, etc, fail sanitisation (and
21
 
        are ignored) during the import (see TODO comments in the code)
 
20
        are ignored) during the import
22
21
* add base64 decoding to support (even if to ignore) vcards with image data
23
22
* possible bug: when displaying "aborting import" toaster, make sure the back
24
23
        button is enabled and the abort button is hidden (as if abort were pressed)
25
24
        since this can happen if, say, the alarm goes off.
26
25
* add facility to be asked whether to import all contacts, not just those that
27
26
        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
 
27
* in the long term, we need to save/restore state from doit/importer