/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: 2012-12-21 11:57:56 UTC
  • Revision ID: tim@ed.am-20121221115756-zm37hcmc2a3wht6x
handle empty lines in vCards properly; be less case sensitive; fixed some comment typos

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
* rename VCFImporter to VcardImporter and VCard to Vcard
2
 
* VcardImporter.Vcard.finaliseParsing() should be renamed to finalise() to
3
 
        override Importer.ContactData.finalise(), if Java will permit us to do that
4
 
        (fnaliseParsing() throws stuff that finalise() doesn't), and should call
5
 
        super.finalise().
6
 
* rename Importer.isImportRequired() to checkForDuplicate() and make it private.
7
 
        This should be called from Importer.importContact(), which should then call
8
 
        skipContact() to update the UI and return if checkForDuplicate() returns
9
 
        false.
10
 
* ContactData.finalise should create a ContactsCache.CacheIdentifier and throw
11
 
        ContactCannotBeIdentifiedException() if that fails, which can be picked up
12
 
        in Vcard.finalise(). Importer.importContact() and the renamed
13
 
        Importer.checkForDuplicates() should use the ContactData's CacheIdentifier
14
 
        and not create their own. This will also ensure that ContactData.finalise()
15
 
        has been correctly called (or the identifier would be null).
16
 
* import a crap-load of contacts before release!
17
 
* change some public final static ints, that aren't really consts, in to enums
18
 
* create a back-end object to read/write to android. This can be overridden to
19
 
        use the new ContractsContacts API.
20
 
* add warnings when email addresses, phone numbers, etc, fail sanitisation (and
21
 
        are ignored) during the import
22
 
* add base64 decoding to support (even if to ignore) vcards with image data
23
 
* possible bug: when displaying "aborting import" toaster, make sure the back
 
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
 
 
6
FUTURE
 
7
 
 
8
  * rename wizard activity classes (append "Wizard"), so you can tell them apart
 
9
        from the others
 
10
  * handle large screen sizes (don't worry about xlarge)
 
11
  * reorganise intro page (licence on separate tab)
 
12
  * add account selection (instead of it being hardcoded to the phone-only), for
 
13
        use with ContactsContract backend
 
14
  * add a logfile facility
 
15
  * add facility to enter a group name, that any imported contacts are added to
 
16
  * change some public final static ints, that aren't really consts, in to enums
 
17
  * add warnings when email addresses, phone numbers, etc, fail sanitisation
 
18
        (and are ignored) during the import (see TODO comments in the code)
 
19
  * add base64 decoding to support (even if to ignore) vcards with image data
 
20
  * possible bug: when displaying "aborting import" toaster, make sure the back
24
21
        button is enabled and the abort button is hidden (as if abort were pressed)
25
22
        since this can happen if, say, the alarm goes off.
26
 
* in the long term, we need to save/restore state from doit/importer
 
23
  * add facility to be asked to confirm each contact import (or show the prompt
 
24
        if the contact is a dupe)
 
25
  * add facility to import a duplicate contact as a new, renamed contact
 
26
          - renamed contacts would have to be re-dupe checked
 
27
  * in the long term, we probably need to save/restore state from doit/importer
 
28
        and stop preventing screen rotation on some activities