In response to what Arlen Holder <
arlen...@anyexample.com> wrote :
> What's a good way to bulk delete all contacts on an Android phone?
It turns out that Android contacts sqlite databases and accounts are super
confusing, where each app that purports to "manage" contacts often sees
only "some" of the contact databases stored on the Android phone.
For example, on Android 9, this is my set of 6 contacts databases:
Settings > Accounts > Accounts for Owner >
(_)2ndLine [2ndLine]
(_)Local Sync [Local Sync]
(_)com.opera.browser [Opera]
(_)My Contacts [Phone]
(_)gibberish [Talkatone]
(_)TextNow [TextNow]
Notice "Device" is missing, aka the SIM card.
Notice the official Google Contacts says there are 3321 contacts in other
accounts, of which it can find 3 other accounts:
o 2226 contacts in Local Sync
o 1095 contacts in Phone
o 0 contacts in Device
Notice my "real" contacts are kept only inside SimpleMobileTools
(which lists 611 contacts when I press the "select all" button):
Yet the three duplicate-contacts apps sees only _two_ of those,
the Local Sync with 2220 contacts & My Contacts with 1092 for
a total of 3312 contacts:
The cz.psencik contacts app also sees only 2 of those:
OpenContacts sees 1185 contacts from un-named database(s):
Orgware Contacts sees all 6 accounts:
Contact Deleter sees one combined database of 3602 contacts:
Contact Eraser sees one combined database of 579 contacts:
123 gr.alterora.apps sees one combined database of 579 contacts:
NOTE: I was snapping screenshots, but it gets time consuming,
so I cut my losses and deleted the snapshots since the point is that only
"some" (rarely any) apps actually "see" all the contact databases.
In summary, it's super confusing how to "really" delete your contacts since
each app shows _different_ databases and different numbers of contacts.
Nonetheless, almost all the apps have a "delete" button.
The trick is finding the one "good" app that does two things:
a. It "sees" all the contact databases as separate entities, and,
b. It allows you to delete those entities separately.
--
Some tests are just confusing when the underlying db is complex.