signalapp / Flock

Private contact and calendar sync for Android.
https://signal.org/blog/flock
358 stars 80 forks source link

Disconnecting Flock account requires factory reset #81

Closed patcon closed 9 years ago

patcon commented 9 years ago

During testing, found that Flock accounts can't easily be removed without wiping the whole device. This is an edge case, but seems rather drastic, especially if someone wants to move from OWS hosted to self-hosted.

Here's how I tried to remove it:

Settings > Accounts > Flock > [ACCOUNT NAME] > More >  Remove account [confirm]

This was the dialog that popped up, and I could only hit "OK":

This account is required by some apps. You can only remove it by resetting the tablet to factory defaults (which deletes all your personal data) in Settings > Backup & reset.

Clearing all data from Flock app did not resolve the issue. Also, fwiw I'd destroyed the sync server at this point, so there was a pending sync error before attempting to disconnect.

Uninstalling the Flock app might work, but I can't do that right now as I'm testing other things and cant' easily reinstall via adb atm. If uninstall solves it, then clarifying that might be helpful.

patcon commented 9 years ago

Uninstall Flock worked and I could reinstall fresh, so this is minor, if we care at all.

rhodey commented 9 years ago

@patcon Flock is built on the Android "Sync Adapter" model which automatically gifts it some cool integration with the Android system UIs. This "Remove account" system menu however is pretty lame :/

Ideally when the user clicks "Remove account" the Flock app would be notified and so it could launch the "Unregister account" action found in the Flock main menu UI. This "Unregister account" action is currently the only supported way to remove the account from both phone and Flock Sync servers. Unfortunately I found no way to detect when this "Remove account" action is tapped by the user so for now we're kinda stuck with things as are.

I'll take another look at hijacking the "Remove account" systems button though.

rhodey commented 9 years ago

no way to hijack the "remove account" button :[