Discussion:
Does anyone know how the PHONE ties to CONTACTS tiies to SMS on Android 9 Pie?
(too old to reply)
Arlen Holder
2019-12-10 01:19:35 UTC
Permalink
Does anyone know to make these three apps use the same contacts?
o Phone
o Contacts
o SMS/MMS

Android does not seem to have a separate default for each app:
<1 Loading Image...>

1. I picked up a new Moto G7 and set it up to my liking:
<3 Loading Image...>

2. Everything works fine if I use the stock default apps.

3. However, when I choose defaults NOT the Google defaults, those 3 apps
don't talk as much to each other (yet) as they need to.
o Phone = Emerald Dialer (ru.henridellal.dialer, from F-Droid)
o Contacts = Contacts (com.simplemobiletools.contacts.prom from F-Droid)
o SMS = PulseSMS (xyz.klinker.messenger, from Aurora Store)

4. To be clear, all the number dialers work just fine to dial numbers:
<4 Loading Image...>

5. But only the "contacts" app seems to access the contacts list:
<2 Loading Image...>

5. Neither the SMS app nor the phone app accesses the contact list!
<5 Loading Image...>

Given the "contacts" app forces me to set it as the default "phone" app:
<2 http://img4.imagetitan.com/img.php?image=20_phone02.jpg>

Note: You can set the default "SMS" & "Phone" app (which seems to be the
"Contacts" app, but you can't seem to set a separate "Contacts" app.

Is there a good explanation of how to make the three apps work off the same
contacts (separately is fine)?

What I don't want is:
a. I don't want ANYTHING on the cloud!
b. I think it's unfair (to the contacts!) to put contacts on the cloud.

All I want is:
A. My contacts to be used by the contacts, phone, & SMS apps.
B. It's ok if they use a separate database, or the same database.

Have you gotten non-Google apps to work together for sms, phone, & contact?
How?
--
Usenet allows people to find others with solutions to the same issues.
Joe Beanfish
2019-12-10 14:46:52 UTC
Permalink
Post by Arlen Holder
Does anyone know to make these three apps use the same contacts?
o Phone o Contacts o SMS/MMS
<1 http://img4.imagetitan.com/img.php?image=20_phone01.jpg>
<3 http://img4.imagetitan.com/img.php?image=20_phone03.jpg>
2. Everything works fine if I use the stock default apps.
3. However, when I choose defaults NOT the Google defaults, those 3 apps
don't talk as much to each other (yet) as they need to.
o Phone = Emerald Dialer (ru.henridellal.dialer, from F-Droid)
o Contacts = Contacts (com.simplemobiletools.contacts.prom from F-Droid)
o SMS = PulseSMS (xyz.klinker.messenger, from Aurora Store)
<4 http://img4.imagetitan.com/img.php?image=20_phone04.jpg>
<2 http://img4.imagetitan.com/img.php?image=20_phone02.jpg>
5. Neither the SMS app nor the phone app accesses the contact list!
<5 http://img4.imagetitan.com/img.php?image=20_phone05.jpg>
<2 http://img4.imagetitan.com/img.php?image=20_phone02.jpg>
Note: You can set the default "SMS" & "Phone" app (which seems to be the
"Contacts" app, but you can't seem to set a separate "Contacts" app.
Is there a good explanation of how to make the three apps work off the
same contacts (separately is fine)?
a. I don't want ANYTHING on the cloud!
b. I think it's unfair (to the contacts!) to put contacts on the cloud.
A. My contacts to be used by the contacts, phone, & SMS apps.
B. It's ok if they use a separate database, or the same database.
Have you gotten non-Google apps to work together for sms, phone, & contact?
How?
It's up to those specific apps to request access to the contacts.
Then it's up to you to approve said access when the popup appears.
Go into app manager and check the perms for those apps to make sure
you didn't accidentally deny access. And/or go into permissions->Contacts
and see if your apps are listed as wanting access and if it's on or off.

I use the stock dialer, but a 3rd party SMS and gave it perms for
contacts when asked.
Arlen Holder
2019-12-11 03:41:05 UTC
Permalink
Post by Joe Beanfish
It's up to those specific apps to request access to the contacts.
Then it's up to you to approve said access when the popup appears.
Go into app manager and check the perms for those apps to make sure
you didn't accidentally deny access. And/or go into permissions->Contacts
and see if your apps are listed as wanting access and if it's on or off.
It's an enigma how the dialer/contacts & SMS/MMS access contact names.

What's confusing is how it works when you ditch the default dialer (which I
ditched mainly because it appears to be a Google dialer), in favor of:
o Dialer (Emerald Dialer, ru.henridellal.dialer)
o Contacts (Contacts, com.simplemobiletools.contacts.pro)
o SMS/MMS (PulseSMS, xyz.klinker.messenger)

Oddly, you only get two related defaults, not three defaults:
o Default #1: Contacts & Dialer (they must be the same app!)
o Default #2: SMS/MMS (this can be a different app)
<Loading Image...>

I think the root of the problem is that you apparently get no choice for
default "dialer" or "contacts"; apparently BOTH must be one & the same!
1. Your dialer & contact app MUST be the same DEFAULT (you have no choice!)
2. Your SMS/MMS app can be a different default.
<http://img4.imagetitan.com/img.php?image=20_phone05.jpg>

Yet you can set contact/dialer/sms permissions separately:
<Loading Image...>

Something is strange here because all three apps have access to "Contacts",
but only the Contacts app is actually finding them when I search by name.
Arlen Holder
2019-12-11 09:54:04 UTC
Permalink
Post by Arlen Holder
It's an enigma how the dialer/contacts & SMS/MMS access contact names.
SOLVED:
I figured some of this magic out; but it is NOT intuitive!
(Warning: The information below will be a bit confusing since what's really
happening is that there is some "Android magic" going on with "contacts").

In short, once you populate the Google default Android contacts/dialer app
with your contacts (either from a local contacts.vcf file, or from the
cloud) then EVERYTHING ELSE is automatically populated!

But, if you don't use the Google default contacts/dialer, then you have to
figure out how to populate the replacement apps from contacts.vcf, where
it's NOT intuitive how to do that (but it's easy, once you figure it out).

NOTE: Most of you don't see this problem simply because you likely blindly
auto-populate your Google default contacts/dialer from the cloud, but I do
not (e.g., this is a bogus Gmail account, for example, and I never store
other people's contacts on the cloud, because I consider that to be rude).

Given I didn't blindly auto-populate the default Google contacts/dialer
from the cloud, one "issue" is that the default Google dialer/contacts app
does NOT have an "import" contacts.vcf option, so you have to figure out
how to import contacts.vcf into even the default Google dialer/contacts app
(see below).

If you don't populate the Google Android contacts/dialer app with your
contacts, then you have to figure out how to populate everything else on
your own, where the method of populating each of the apps is NOT intuitive
because it's not the same for every third party contacts/dialer app:
o Some have a menu to directly import contacts.vcf (but most do not!)
o Some allow a longpress on contacts.vcf in a file manager to "open as"
o Some allow a longpress on contacts.vcf in a file manager to "open with"
o Some allow a shorttap on contacts.cvf in a file manager to "use a different app"

You'd think there are 3 "types" of apps, but this would be partially wrong:
o dialers
o contacts
o SMS/MMS

In reality, these are (at least) these four types of apps:
o dialers
o contacts
o contacts/dialer combination apps
o sms/mms texting apps

The rare dialer-only apps (e.g., the Emerald Dialer) would not populate
contacts no matter what method I tried; hence, I deleted this app (and I do
not recommend pure dialer-only apps since they don't seem to be able to
import contacts.vcf by any known method that I could find).

So the first thing I had to do was give up on the pure dialer apps, since
they suffered from two killer faults:
o They couldn't be populated with contacts.vcf, and,
o Even so, Android would never let me set them as the default dialer.

Android would only allow the combination contacts/dialers to be set as the
default dialer.

That leaves only two types of apps left that Android will set defaults to:
o contacts/dialer combination apps
o sms/mms texting apps

I tested these combination contacts/dialers on my new $100 Moto G7:
o Phone "com.google.android.dialer" (round, blue bg, white handset)
o Contacts "com.google.android.contacts" (blue bg, white person, round)
o Contacts "com.simplemobiletools.contacts.pro" (orange bg, white person, round)
o OpenContacts "opencontacts.open.com.opencontacts" (white bg, blue handset, square)
o Dialer "com.simpler.dialer" (blue bg, white handset, round)
o Call "com.i45.launchdialer" (green bg, white handset, square)

Also note these hidden apps which, I suspect, contain the contacts imported
into "com.google.android.contacts" and which manage calls & logs overall:
o Phone and Messaging "com.android.providers.telephony" (round, greenish, white handset)
o Contacts Storage "com.android.providers.contacts" (round, bluish bg, white person)
o Call Management "com.android.server.telecom" (square, white bg, blue handset)
o Call Log Backup/Restore "com.android.calllogbackup" (hourglass, blue bg, white person)

These are the non-intuitive ways to import contacts.vcf into the
contacts/dialer apps listed above:

METHOD 1:
Rarely does the contact/dialer simply have an option to "import contacts"
files; where the only contacts/dialer that did was:
o Contacts "com.simplemobiletools.contacts.pro"

Also, the Google default Contacts app "com.google.android.contacts",
had an import contacts.vcf option.

Obviously this is the preferred method, but no other apps had a menu item
to simply "import contacts.vcf" like these two apps did.

METHOD 2: (I used the com.simplemobiletools.filemanager.pro file manager.)
o Long press contacts.vcf in a file manager & then use "open with"
The 3 available options were:
o Import contacts (i.e., "com.google.android.contacts")
o Contacts (i.e., "com.google.android.contacts")
o Contacts (i.e., "com.simplemobiletools.contacts.pro")

METHOD 3:
o Long press contacts.vcf in a file manager & then use "open as"
o Then select "Other file"
The 6 available options are: [Just Once][Always]
o Phone (i.e., "com.google.android.dialer")
o Simpler Dialer (i.e., com.simpler.dialer)
o Import contacts (i.e., "com.google.android.contacts")
o Contacts (i.e., "com.simplemobiletools.contacts.pro")
o Details (i.e., "com.simplemobiletools.contacts.pro")
o Contacts (i.e., "com.google.android.contacts")

METHOD 4:
o Short tap contacts.vcf in a file manager & then "open with"
o Import contacts (i.e., "com.google.android.contacts")
o Contacts (i.e., "com.google.android.contacts")
o Contacts (i.e., "com.simplemobiletools.contacts.pro")

In summary, most of you don't see this problem because:
a. Once you load Google contacts, everything else accesses them
b. I don't blindly load Google contacts from the cloud
c. I load my contacts manually, from a local contacts.vcf file

If I loaded the contacts.vcf into the default Google Contacts app (i.e.,
"com.google.android.contacts"), then everything else easily saw the
contacts (including PulseSMS).

If I didn't load the contacts.vcf into the default Google Contacts app,
then I had to manually load the contacts.vcf (by one of four methods above)
into the desired contacts/dialer app.

In the end, while I couldn't unintall the default Google apps, I
uninstalled everything except these apps, which will be my main apps:
o Contacts (i.e., "com.simplemobiletools.contacts.pro")
o OpenContacts (i.e., "opencontacts.open.com.opencontacts")
o PulseSMS (i.e., "xyz.klinker.messenger")

Note there is no need for a dialer, as far as I can tell, simply because
both "Contacts" and "OpenContacts" contain a dialer, where I'll test out
the two apps to see which is best.

Generally I like Simple Mobile Tools, but what I like about the "Open
Contacts" app is that it contains a call log (which the Simple Mobile Tools
doesn't contain), so Open Contacts better replaces the default Google
"Phone" app.

Unfortunately, you can't have both "com.simplemobiletools.contacts.pro" and
"opencontacts.open.com.opencontacts" be the default, so one or the other
must be the default for the contacts/dialer app.

One nice thing about "com.simplemobiletools.contacts.pro" is it exports to
any file name and any file location, while one nice thing about
"opencontacts.open.com.opencontacts" is that it contains a call log just
like the default Phone application does.

Whew! It's all working quite nicely now. Thanks!
--
Usenet is great to share questions & answers with other helpful adults.
Arlen Holder
2019-12-11 16:24:13 UTC
Permalink
Post by Arlen Holder
In short, once you populate the Google default Android contacts/dialer app
with your contacts (either from a local contacts.vcf file, or from the
cloud) then EVERYTHING ELSE is automatically populated!
But, if you don't use the Google default contacts/dialer, then you have to
figure out how to populate the replacement apps from contacts.vcf, where
it's NOT intuitive how to do that (but it's easy, once you figure it out).
UPDATE:

I _thought_ I resolved all the problems by "importing" the offline local
contacts.vcf file into both the Simple Mobile Tools contacts/dialer and
into the Open Contacts contacts/dialer; but PulseSMS doesn't access them:
o Contacts (i.e., "com.simplemobiletools.contacts.pro")
o OpenContacts (i.e., "opencontacts.open.com.opencontacts")
o PulseSMS (i.e., "xyz.klinker.messenger")

I _thought_ PulseSMS worked because at one point, I had imported the local
offline contacts.vcf file into both the contacts/dialers above and into the
Google Contacts app (com.google.android.contacts); but upon deletion of the
apps (to start fresh) and then a reboot and re-install of the apps from
scratch, PulseSMS won't import the local offline contacts.vcf file.

There's still some "magic" left to decipher, because I've been using
PulseSMS for quite some time (and for weeks on this phone), where it
certainly accesses the Google contacts on the phone.

I should clarify that the reason almost none of you would have this problem
is that you do a few things differently, by default, than I do:
1. You likely allow Google to own your contacts (usually off the cloud)
(But I feel it's rude to put other people's contact information there.)

2. You likely use the Google default contacts app (& dialer).
(But I'm trying to avoid anything Google on the phone, if I can.)

3. You perhaps use "Messages" (com.google.android.apps.messaging).
(But I've found PulseSMS to be the best free ad-free SMS app.)

In summary, I solved half the problem, which is that there are four
different ways (not all of which work in any given app) to populate the
contacts/dialer apps with contacts from an offline local contacts.vcf vcard
file; but the other half of the problem is that the chosen dialer,
PulseSMS, does not seem to respond to any of those four methods:

METHOD 1:
o The app has an option to "import contacts" using a local vcard file.
METHOD 2:
o Longpress on the VCARAD file in a file manager & then use "open with"
METHOD 3:
o Longpress on the VCARAD file in a file manager & then use "open as"
METHOD 4:
o Shorttap on the VCARAD file in a file manager & then use "open with"

The only problem left is that PulseSMS won't populate from any of those 4
options which worked on Google "Contacts" and on the two contact/dialer
apps.

The question now is how to populate PulseSMS from a local offline vcf file?
--
Usenet is great to share questions & answers with other helpful adults.
Arlen Holder
2019-12-12 19:17:14 UTC
Permalink
Post by Arlen Holder
The question now is how to populate PulseSMS from a local offline vcf file?
I'm still trying to figure out HOW to feed PulseSMS a VCARD file.

Just to be complete, I've turned off any syncing to the cloud
where it's not obvious, at first, how to _find_ this app
since this app is a "hidden app" that you have to know to look for.
o Google Contacts Sync (com.google.android.syncadapters.contacts)
Permissions > No permissions granted

This app does _not_ show up in the "app drawer"; so I found it using
o apps_Packages Info (com.oF2pks.applicationsinfo)
Which allows me to long press > hamburger > View in Settings
That trick enables me to press "Permissions" for such "hidden apps".

Of course, I wiped out the Google Account on the phone:
Settings > Accounts > (delete every account)
(I can still get email & apps from 3rd-party Google site scrapers.)

Given I don't want _anything_ stored on the cloud, I also changed:
Settings > Accounts > Automatically sync data = off

To be doubly sure nothing ever syncs to the cloud, I also disabled
these Google apps, which _do_ show up in the app drawer apps:
Settings > Apps & notifications >
o Google > Permissions > No permissions granted
o GMail > Permissions > No permissions granted
o Google Fi > Permissions > No permissions granted
o Google News > Permissions > No permissions granted
o Google Play Movies & TV > Permissions > No permissions granted
o Google Play Music > Permissions > No permissions granted
o Google Play Store > Permissions > No permissions granted
o [Google] Chrome > Permissions > No permissions granted
o [Google] Drive > Permissions > No permissions granted
o [Google] Files > Permissions > No permissions granted
o [Google] Lens > Permissions > No permissions granted
o [Google] Messages > Permissions > No permissions granted
o [Google] YouTube > Permissions > No permissions granted
etc.

I had to leave the following alone (for now):
[Google] Phone > Permissions > (Call logs, Contacts, Microphone, Phone, SMS, Storage)
o [Google] Connectivity Services > Permissions > Location
o [Google] Maps > Permissions > (Location, Microphone, Storage)
o [Google] Photos > Permissions > (Storage)
o Gcam APK port > Permissions > (Camera, Location, Microphone, Storage)

Temporarily, I have these set (as I debug PulseSMS):
o Google Contacts > Permissions > (Contacts, Phone, Storage)
o Pulse > Permissions > (Camera, Contacts, Microphone, Phone, SMS, Storage)

The main goal now is to figure out HOW the PulseSMS app is "supposed" to
obtain its contacts when the device owner doesn't use Google Contacts.
--
Android can be made to not use the cloud; but you have to know how.
Pamela
2019-12-17 14:24:30 UTC
Permalink
Post by Arlen Holder
[...]
I'm still trying to figure out HOW to feed PulseSMS a VCARD file.
Just to be complete, I've turned off any syncing to the cloud where it's
not obvious, at first, how to _find_ this app since this app is a
"hidden app" that you have to know to look for. o Google Contacts Sync
(com.google.android.syncadapters.contacts)
Permissions > No permissions granted
This app does _not_ show up in the "app drawer"; so I found it using o
apps_Packages Info (com.oF2pks.applicationsinfo) Which allows me to long
press > hamburger > View in Settings That trick enables me to press
"Permissions" for such "hidden apps".
Settings > Accounts > (delete every account)
(I can still get email & apps from 3rd-party Google site scrapers.)
Settings > Accounts > Automatically sync data = off
To be doubly sure nothing ever syncs to the cloud, I also disabled these
Settings > Apps & notifications >
o Google > Permissions > No permissions granted o GMail > Permissions >
No permissions granted o Google Fi > Permissions > No permissions
granted o Google News > Permissions > No permissions granted o Google
Play Movies & TV > Permissions > No permissions granted o Google Play
Music > Permissions > No permissions granted o Google Play Store >
Permissions > No permissions granted o [Google] Chrome > Permissions >
No permissions granted o [Google] Drive > Permissions > No permissions
granted o [Google] Files > Permissions > No permissions granted o
[Google] Lens > Permissions > No permissions granted o [Google] Messages
Permissions > No permissions granted o [Google] YouTube > Permissions
No permissions granted etc.
I had to leave the following alone (for now): [Google] Phone >
Permissions > (Call logs, Contacts, Microphone, Phone, SMS, Storage) o
[Google] Connectivity Services > Permissions > Location o [Google] Maps
Permissions > (Location, Microphone, Storage) o [Google] Photos >
Permissions > (Storage) o Gcam APK port > Permissions > (Camera,
Location, Microphone, Storage)
Temporarily, I have these set (as I debug PulseSMS): o Google Contacts >
Permissions > (Contacts, Phone, Storage) o Pulse > Permissions >
(Camera, Contacts, Microphone, Phone, SMS, Storage)
The main goal now is to figure out HOW the PulseSMS app is "supposed" to
obtain its contacts when the device owner doesn't use Google Contacts.
I recently formatted and reset a new Moto G7. Your experiences tell me I
was right to go with Google despite them harvesting personal data.

I don't like losing my personal data but the benefits Google offer is, on
balance, sufficient compensation and I can opt out of one or two things.
YMMV.
Arlen Holder
2019-12-20 04:47:54 UTC
Permalink
Post by Pamela
I recently formatted and reset a new Moto G7. Your experiences tell me I
was right to go with Google despite them harvesting personal data.
Hi Pamela,

That's the wrong conclusion since I _will_ resolve this minor issue.
o I had it all working just fine on the LG Stylo 3 Plus for example.

The problem "may" be that Motorola phones store the contact database in a
"different" location than do most other Android phones for some strange
reason unknown to me.

Most phones store the contact database here:
o "/data/data/com.android.providers.contacts/databases/contacts.db"

But Motorola stores it, typically, here:
o "/data/data/com.motorola.blur.providers.contacts/databases/contacts2.db"

Where developers access that db using the Android API of course:
<https://developer.android.com/reference/android/provider/ContactsContract.html>

And where I "might" be able to access the db using "adb" from a PC:
o adb pull /data/data/com.android.providers.contacts/databases/contacts.db c:\contacts.db

Unfortunately, I'm not rooted so I can't "see" that SQL database.
o If I were rooted, I'd be able to use these PC apps to read the contact db
<https://sourceforge.net/projects/sqliteman/>
<https://sqlitebrowser.org/>
Or even these Android apps:
<https://play.google.com/store/apps/details?id=com.xuecs.sqlitemanager>
<https://play.google.com/store/apps/details?id=dk.andsen.asqlitemanager>
Based on these references on how to read the SQL contacts database:
<https://android.stackexchange.com/questions/41455/where-is-the-data-for-contacts-storage-located>
<https://www.fonecope.com/where-are-contacts-stored-on-android.html>

For those interested, here's a bit on the SQL db structure:
<https://www.dev2qa.com/android-contacts-database-structure/>

BTW, the SMS db is apparently in a different location:
o "/data/data/com.android.providers.telephony/databases/mmssms.db"
According to this reference:
<https://forum.xda-developers.com/showthread.php?t=726051>
Post by Pamela
I don't like losing my personal data but the benefits Google offer is, on
balance, sufficient compensation and I can opt out of one or two things.
YMMV.
Hi Pamela,

I perfectly well understand the tradeoff between convenience & privacy.

Have you ever seen the movies about people living in apartment buildings in
New York where they have something like three or four locks on the door?

It's a pain not to leave the door wide open.
o It's far easier for most people to just leave the door ajar and unlocked.

I fully understand that which is why most people use the Google defaults.
o But those Google defaults are _rude_ to you & your friends & neighbors.

a. They upload YOUR private information to the net (& God knows what apps)
b. They upload YOUR private SSID information to the net (& apps perhaps)
c. They upload pictures of YOU and YOUR KIDS to the net (& apps perhaps)
etc.

IMHO, it's just _rude_ to leave any Android phone at the Google defaults.
o But most people, I agree, are lazy (and rude as a result).

It takes effort to lock the door instead of leaving it ajar.
Arlen Holder
2019-12-20 08:53:34 UTC
Permalink
Post by Arlen Holder
A. My contacts to be used by the contacts, phone, & SMS apps.
B. It's ok if they use a separate database, or the same database.
UPDATE:

I found out, definitively, that Pulse SMS only uses the default Android
contacts database for its contacts (and that Pulse SMS does not have any
other method of accessing the contacts database).

Hence, there's going to be literally zero chance of me figuring out a way
to "import" the vcard file, contacts.vcf, into the Pulse SMS app.

So now the only other possible solution is to figure out why the Moto G7
Android contacts database is working for everything _except_ Pulse SMS.
o "/data/data/com.android.providers.contacts/databases/contacts.db"
o "/data/data/com.motorola.blur.providers.contacts/databases/contacts2.db"

If the Moto G7 were rooted, it would be easier, but I'm working on a way to
use adb to at least copy the Android system files over USB to Windows:
o Freeware to access your Android hosts file from Windows without being root
<https://groups.google.com/d/msg/alt.comp.freeware/Gd0x1ga8Z0Y/kkWENmZtAgAJ>

If adb won't work on the unrooted Moto G7 to copy system files over USB to
Windows, I should still be able to use libmtp to view those Android system
files over USB from Windows or Linux:
o Does freeware exist on Windows that will mount (as a drive letter) Android connected via USB as MTP?
<https://groups.google.com/d/msg/alt.comp.freeware/TaIlIMK2Nuw/OjCcwMDDBAAJ>

Software:
ADB: <https://www.xda-developers.com/install-adb-windows-macos-linux/>
LibMTP: <https://sourceforge.net/projects/libmtp/>

This may take a while without outside help...
Arlen Holder
2020-05-01 01:39:07 UTC
Permalink
Post by Arlen Holder
So now the only other possible solution is to figure out why the Moto G7
Android contacts database is working for everything _except_ Pulse SMS.
o "/data/data/com.android.providers.contacts/databases/contacts.db"
o "/data/data/com.motorola.blur.providers.contacts/databases/contacts2.db"
SOLVED (workaround):
o *Does anyone know how the PHONE ties to CONTACTS ties to SMS on Android 9 Pie?*
<https://groups.google.com/forum/#!topic/comp.mobile.android/EvXtsP9radE>
o <Loading Image...>
o <Loading Image...>

Given I'm improving how best to import & automatically merge contacts
without using the cloud (which should _never_ be used for private data):
o *Does your contacts app have an import/export to/from non-proprietary VCARD format?*
<https://groups.google.com/forum/#!topic/comp.mobile.android/I48Dmi1rR8I>
&
o *Which free contact optimizer duplicate removal contacts merger app do you like best & why?*
<https://groups.google.com/forum/#!topic/comp.mobile.android/YheUv3Cl5aM>
&
o *Do people of reasonable technical ability store their private data on the Internet?*
<https://groups.google.com/forum/#!topic/comp.mobile.android/mBIZ-8jGdmk%5B1-25%5D>
etc.

In that process, I figured out the problem - and a viable workaround!
o This problem was _caused_ by the fact I have a non-standard setup.
(But the workaround works well and is easy to employ.)

After weeks of daily use, I think the problem is that, for privacy reasons,
I keep my contacts out of the default Android sqlite db location, which
works fine... for all apps... except PulseSMS, unfortunately.

To be clear, PulseSMS is the BEST SMS app out there (IMHO), and as such,
PulseSMS works just fine - but PulseSMS doesn't have the capability to
"import" contacts, so PulseSMS "thinks" the contacts db is stored in the
default Android sqlite location (which doesn't exist on my phone).

Even so, almost everything works just fine...

For example, I can easily access PulseSMS from my non-google default
Contacts app and from my non-google default phone Dialer, so I have no
problem when I'm looking at a contact to text or call them.

From the other direction, i.e., from PulseSMS itself, I can access the
non-google default contacts app and the non-google default phone dialer...
so all is working fine...

Except...
o When a _new_ SMS comes in, PulseSMS doesn't show the name of the contact.

That's apparently because PulseSMS looks only in one place for the name
associated with that phone number, which on my phone, is empty (as I don't
store my contacts in the default location).

To be clear, everything works fine - but PulseSMS just doesn't know WHAT
name to associate with that contact on its own.

The workaround is to _tell_ PulseSMS what the name of that contact is.
1. I dive down into the conversation from the "all conversations" top view
2. I press the 3 dots & select "Conversation settings"
3. At the top I select the "Conversation Name" setting
4. I change the "Group Name" from the phone number to whom it really is.]
5. Now the conversation is manually labeled with the name of the contact
6. And all the texts in that conversation are associated to that name

These are the options for any particular "conversation" identification:
o <https://i.postimg.cc/3JVCML0y/pulsesms01.jpg>
And this is the manual-naming process that is the workaround for now:
o <https://i.postimg.cc/SQtc8ZrZ/pulsesms02.jpg>

As always, if you can _improve_ the process, please suggest improvements.
--
I have already sent an email to the developer to ask that they consider
adding the capability to _choose_ the contact database as a setting.
Arlen Holder
2020-05-02 01:04:48 UTC
Permalink
UPDATE:
o Contacts are far more complex than I at first had imagined.

Nonetheless... I'm getting a handle on them day by day, where...
o I found another workaround today, which is even better & easier!

PROBLEM:
o For privacy, I don't store contacts in the Android default locations.
o Hence PulseSMS can only see the phone number of incoming SMS/MMS texts.
o However PulseSMS can manually associate the name with the number.

WORKAROUND:
o Temporarily, I imported my contacts.vcf file into Android contacts.
o In PulseSMS, I clicked on the unknown conversations to select them
o And then tapped "Conversation settings"
This manually resolved conversation that didn't have a name associated.
o (Of course, as long as that name was in the Android sqlite contacts db.)

But then, for a separate test, which just happened to be concurrent,
I happened to run a contact merger program, namely:
o *Contact Merge*, by ORGware Technologies Pvt. Ltd.
<https://play.google.com/store/apps/details?id=com.orgware.contactsmerge>

And then when I went back to PulseSMS, the entire set of SMS/MMS
conversations appeared to be synchronized to the names of the contacts (for
those conversations which had names associated with the phone numbers).

So basically I simply needed to _refresh_ the PulseSMS lookup tables.
a. Temporarily import contacts.vcf
b. Cause a "refresh" of the PulseSMS lookup tables
c. Then delete the imported Android contacts database

This leaves the question of how best to delete all contacts on Android.
(I need to test bulk contact deletion separately.)

This also leaves the question of which "accounts" to delete contacts for,
since I didn't even have the phone set to a Google Account, so these new
contacts databases came from other programs which created contact
"accounts".
(I need to test these various contact "accounts" separately.)

Also note there apparently is no such thing as a "default contacts" app.
o There's a default browser, launcher, assist & voice input app
o And there is a default "phone" app (aka dialer) & SMS app
o But there doesn't seem to be a default contact app
--
Once contacts are deleted, I'm pretty sure PulseSMS will still remember the
name-to-number associations, since they're essentially manually created
(just automatically).
Arlen Holder
2020-05-02 04:46:59 UTC
Permalink
Post by Arlen Holder
So basically I simply needed to _refresh_ the PulseSMS lookup tables.
a. Temporarily import contacts.vcf
b. Cause a "refresh" of the PulseSMS lookup tables
c. Then delete the imported Android contacts database
Good news.

PulseSMS _remembered_ the name of the "Conversation" even after all
contacts were deleted off the device (using methods here):
o What free bulk contact deletion method or tool do you prefer so as to
delete contacts on each Android sqlite account database?
<https://groups.google.com/forum/#!topic/comp.mobile.android/xfmXK8hfOr0>

So this is the simplest workaround to get PulseSMS to resync the
conversations with the contacts that are temporarily imported and then
deleted.
a. Temporarily import contacts.vcf using any desired contact manager
which can import a contacts.vcf file (not all of them can do that).
(You can use "Google Contacts" but I wouldn't use it unless I had to.)
(What I would use is TrueContacts, which is said to be an Android port
and which can choose which database to import the contact into.)
<http://www.psencik.cz/true-contacts>
Or, if your contacts are in CSV format, you can use Contacts Importer.
<https://play.google.com/store/apps/details?id=eu.stargw.contactsimport>
Or 123 Contacts Backup & Transfer, by Alterora OU
<https://play.google.com/store/apps/details?id=gr.alterora.apps.contacts>
b. Then cause a "refresh" of the PulseSMS conversation-to-contacts map.
I need to test what "causes" this refresh which will take a while,
but at least a "merge" using this tool seems to have caused the refresh:
Contacts Merge, by Orgware
<https://play.google.com/store/apps/details?id=com.orgware.contactsmerge>
c. Once PulseSMS is refreshed, then delete the imported contact database,
en masse, which is most easily done from the Android Settings:
Settings > Accounts > Accounts for Owner > (select the account)
Then press "Remove Account" to delete the temporary import.

While that workaround works well, what would be nicer is if there was a
command like OpenContacts has to simply re-synchronize the conversations
with the contacts.
o OpenContacts command: Resync call log with contacts
<Loading Image...>

Since this is a bit confusing, I need to test this further for a few weeks.
Arlen Holder
2020-05-02 22:06:31 UTC
Permalink
It seems others are struggling with contacts not being what we might at
first intuitively think they may be...
o *Why doesn't my local contacts sync with my Google Contacts?*
<https://groups.google.com/forum/#!topic/comp.mobile.android/UmART77J9PU>

Given the issue is none of us may really understand contacts...
... Here's my related response to that thread, taking into account
screenshots I made yesterday but haven't posted here yet as it takes tons
of time to make these screenshots and I'm mostly debugging how contacts
work first.
The three categories of contacts are clearly labeled with a SIM-icon,
a phone-icon and a Google-icon.
Hi Frank Slootweg,

I think maybe contacts are different than intuition would have us think.
<Loading Image...>

Look at this screenshot taken last night which shows six contact databases:
<Loading Image...>

And this one taken from Google contacts, just like what the OP uses:
<Loading Image...>

Like you, I recently found more than 3, although I certainly saw _those_ 3.
o *Does anyone know how the PHONE ties to CONTACTS ties to SMS*
<https://groups.google.com/forum/#!topic/comp.mobile.android/EvXtsP9radE>

In Android 9, I had _six_ categories of contacts (actually 7 if you count
the apps I use that store their own contacts internally to the application,
namely SimpleMobileTools' contact app which imports/exports its own files):
<Loading Image...>

In short, how Android does contacts is quite confusing to me.
<Loading Image...>

Sometimes contact-related apps see only two contact databases:
<Loading Image...>

But _some_ contacts can "resync", which is kind of what the OP needs, such
as this "OpenContacts" app I installed which is open source contacts:
<Loading Image...>

The trick, of course, is to ensure your app sees all six databases:
<https://i.postimg.cc/Df1YWxJf/contact14.jpg>

Since yesterday I've been trying to figure out _how_ Android does contacts,
since anyone who guesses using intuition will certainly be wrong on how
they do it.
<Loading Image...>

If _someone_ can explain _how_ Android does contacts after 5.x, that would
be interesting since one of my apps (True Contacts) is said (by the
developer) to be the true Android contact compiled from src which he says
changed in Android 5.x.

Here are other related threads with _tons_ of screenshot examples:
o *Which free contact optimizer duplicate removal contacts merger app*
<https://groups.google.com/forum/#!topic/comp.mobile.android/YheUv3Cl5aM>

o *What free bulk contact deletion method or tool do you prefer*
<https://groups.google.com/forum/#!topic/comp.mobile.android/xfmXK8hfOr0>

In summary, contacts aren't what we might intuitively think they are.
--
The beauty of helping others on Usenet is we all learn more together.
Arlen Holder
2020-05-27 17:27:37 UTC
Permalink
UPDATE:

Slowly, I've been solving the problem, where this is another solution:
o app: Simple Mobile tools "Simple Dialer" reads the same on-the-phone
privacy-based vcard/excel/csv non-sqlite Simple Contacts database
<https://groups.google.com/forum/#!topic/comp.mobile.android/WE0jbWQt6Mc>

While I'm still a bit confused, what seems to be happening is that the
default sqlite database is what PulseSMS uses for its contacts, where, for
privacy reasons, I have no default sqlite contacts database on my phone.
o Does anyone know how the PHONE ties to CONTACTS tiies to SMS on Android 9 Pie?
<https://groups.google.com/d/msg/comp.mobile.android/EvXtsP9radE/zZ-9tzTqBQAJ>

Luckily, a trick was worked out a while aog, where I momentarily allowed a
default sqlite contacts database to exist, and then I caused PulseSMS to
refresh, which allowed PulseSMS to "remember" the contact names, en masse.
o Best free SMS app for Android
<https://groups.google.com/d/msg/comp.mobile.android/up2NoEHr9M8/atinCKpaEAAJ>

Having solved that SMS issue (my contacts don't change frequently), I then
moved to solving the issue by loading a dialer which also uses contacts
which are _separate_ from the default Android sqlite contacts database.
o Simple Mobile Tools "Simple Dialer"
<https://github.com/SimpleMobileTools/Simple-Dialer>
<https://f-droid.org/en/packages/com.simplemobiletools.dialer/>
<https://play.google.com/store/apps/details?id=com.simplemobiletools.dialer>

A nice solution for that is to use the Simple Mobile Tools "Simple Dialer"
which has a switch to use the same non-sqlite contacts database of its
sister app, the Simple Mobile Tools "Simple Contacts" app.
o Simple Mobile Tools "Simple Dialer"
<https://github.com/SimpleMobileTools/Simple-Dialer>
<https://f-droid.org/en/packages/com.simplemobiletools.dialer/>
<https://play.google.com/store/apps/details?id=com.simplemobiletools.dialer>

These little tricks enable you to maintain your own contacts database
completely OUTSIDE the default Android sqlite contacts database.
o Simple Mobile Tools "Simple Contacts"
<https://github.com/SimpleMobileTools/Simple-Contacts>
<https://f-droid.org/en/packages/com.simplemobiletools.contacts.pro/>
<https://play.google.com/store/apps/details?id=com.simplemobiletools.contacts>

That contacts database can be kept in any file format you like, where Vcard
(*.vcf) and Excel comma-separated-value (*.csv) files work just fine.
o Does your contacts app have an import/export to/from non-proprietary VCARD format?
<https://groups.google.com/d/msg/comp.mobile.android/I48Dmi1rR8I/bAEWV_67BAAJ>

Depending on how you sync your contacts on your private LAN, you can easily
manage the contacts database using a master file, or simply update at will:
o Which free contact optimizer duplicate removal contacts merger app do you like best & why?
<https://groups.google.com/d/msg/comp.mobile.android/YheUv3Cl5aM/C2VMppZ-AQAJ>
...and...
o What free bulk contact deletion method or tool do you prefer so as to delete contacts on each Android sqlite account database?
<https://groups.google.com/d/msg/comp.mobile.android/xfmXK8hfOr0/nFemMpOdBAAJ>

In summary, with a few privacy-based tricks and by loading apps that have
basic privacy-based functionality, it's trivial to maintain your contacts
database completely outside the default Android contacts sqlite database.
o Contacts tie well with the Dialer which ties well with the SMS/MMS app.
--
If all you ever do is follow MARKETING, then your privacy is already gone.
Sn!pe
2020-05-27 21:24:54 UTC
Permalink
Post by Arlen Holder
Slowly, I've been solving the problem
Message-ID: <1or1295.vbknnb1curgtpN%***@gmail.com>

Followup-To: alt.free.newsservers, where you last responded to me.
--
^Ï^


My pet rock Gordon just is.
Alan Baker
2020-05-27 22:36:11 UTC
Permalink
Post by Arlen Holder
o app: Simple Mobile tools "Simple Dialer" reads the same on-the-phone
privacy-based vcard/excel/csv non-sqlite Simple Contacts database
<https://groups.google.com/forum/#!topic/comp.mobile.android/WE0jbWQt6Mc>
Seems like you're still struggling to find an answer to how you keep
your contacts synched across devices, Arlen...
Post by Arlen Holder
While I'm still a bit confused, what seems to be happening is that the
default sqlite database is what PulseSMS uses for its contacts, where, for
privacy reasons, I have no default sqlite contacts database on my phone.
o Does anyone know how the PHONE ties to CONTACTS tiies to SMS on Android 9 Pie?
<https://groups.google.com/d/msg/comp.mobile.android/EvXtsP9radE/zZ-9tzTqBQAJ>
Luckily, a trick was worked out a while aog, where I momentarily allowed a
default sqlite contacts database to exist, and then I caused PulseSMS to
refresh, which allowed PulseSMS to "remember" the contact names, en masse.
o Best free SMS app for Android
<https://groups.google.com/d/msg/comp.mobile.android/up2NoEHr9M8/atinCKpaEAAJ>
Having solved that SMS issue (my contacts don't change frequently), I then
moved to solving the issue by loading a dialer which also uses contacts
which are _separate_ from the default Android sqlite contacts database.
o Simple Mobile Tools "Simple Dialer"
<https://github.com/SimpleMobileTools/Simple-Dialer>
<https://f-droid.org/en/packages/com.simplemobiletools.dialer/>
<https://play.google.com/store/apps/details?id=com.simplemobiletools.dialer>
A nice solution for that is to use the Simple Mobile Tools "Simple Dialer"
which has a switch to use the same non-sqlite contacts database of its
sister app, the Simple Mobile Tools "Simple Contacts" app.
o Simple Mobile Tools "Simple Dialer"
<https://github.com/SimpleMobileTools/Simple-Dialer>
<https://f-droid.org/en/packages/com.simplemobiletools.dialer/>
<https://play.google.com/store/apps/details?id=com.simplemobiletools.dialer>
These little tricks enable you to maintain your own contacts database
completely OUTSIDE the default Android sqlite contacts database.
o Simple Mobile Tools "Simple Contacts"
<https://github.com/SimpleMobileTools/Simple-Contacts>
<https://f-droid.org/en/packages/com.simplemobiletools.contacts.pro/>
<https://play.google.com/store/apps/details?id=com.simplemobiletools.contacts>
That contacts database can be kept in any file format you like, where Vcard
(*.vcf) and Excel comma-separated-value (*.csv) files work just fine.
o Does your contacts app have an import/export to/from non-proprietary VCARD format?
<https://groups.google.com/d/msg/comp.mobile.android/I48Dmi1rR8I/bAEWV_67BAAJ>
Depending on how you sync your contacts on your private LAN, you can easily
o Which free contact optimizer duplicate removal contacts merger app do you like best & why?
<https://groups.google.com/d/msg/comp.mobile.android/YheUv3Cl5aM/C2VMppZ-AQAJ>
...and...
o What free bulk contact deletion method or tool do you prefer so as to delete contacts on each Android sqlite account database?
<https://groups.google.com/d/msg/comp.mobile.android/xfmXK8hfOr0/nFemMpOdBAAJ>
In summary, with a few privacy-based tricks and by loading apps that have
basic privacy-based functionality, it's trivial to maintain your contacts
database completely outside the default Android contacts sqlite database.
o Contacts tie well with the Dialer which ties well with the SMS/MMS app.
Arlen Holder
2020-05-31 11:34:41 UTC
Permalink
Update

I'm testing a potential privacy-based solution that not only easily
synchronizes your contacts on your private LAN, but which, for privacy,
doesn't use the default contacts sqlite database on the Android device.
o Contacts (we solved this in other threads)
o SMS/MMS (we solved this in other threads)
o Dialer (this post is mostly how we can solve this)

Bear in mind it's extremely difficult to get incoming caller ID
o When you don't have anything in the default contacts sqlite database

Luckily, it's not hard to get outgoing search by number or name...
o Without the default contacts sqlite database existing

Also note that these three (3) things only have two (2) defaults:
o System set default "*Phone app*" --> Contacts
o System set default "*SMS app*" --> Pulse
o Note that there is no default "Dialer app" nor "Contacts" app, per se!

Also note that there's really no need for a "dialer", per se, since dialers
are part of both the contacts and SMS apps; but I'm testing them
nonetheless.

It's pretty easy but it's not intuitive, to keep contacts off the net!
o Particularly since most Google apps insist on uploading to the net!

Before you even start, it's a given you won't be using any Google apps.
o And, it's assumed your dialer app is a different app than your contacts app!

The trick, of course, is to find what apps to use to REPLACE Google apps!
o Below are the apps I'm currently using which support privacy models...

I tested these on my $100 Moto G7, on Android Pie (Android 9):
o Contacts <com.simplemobiletools.contacts.pro> mine is version 6.4.4
o SMS/MMS <xyz.klinker.messenger> mine is version 4.14.2655
o Dialer <com.simplemobiletools.dialer> mine is version 5.1.2
(Note: Older versions of the "Contacts" app above have READ_CALL_LOG
functionality not in newer versions; so use the older version if you can.)

For privacy, you would likely want to wipe out the default contacts sqlite
database after you back it up by exporting your contacts to a VCARD (*.vcf)
or Excel (*.csv) file, which you can then easily manually or automatically
maintain, sync, merge, backup, etc. as explained in numerous other threads.

For import/export of vcard *.vcf files to/from the default sqlite database:
o ImportContacts [without putting them on the net (nor using Google)]
<https://f-droid.org/en/packages/am.ed.importcontacts/>
o ExportContacts [without putting them on the net (nor using Google)]
<https://f-droid.org/en/packages/am.ed.exportcontacts/>

For import/export of Excel *.csv files to/from the default sqlite database:
o Contacts Import [if you wish to import CSV files instead of VCARD files]
<https://play.google.com/store/apps/details?id=eu.stargw.contactsimport>
o 123 Contacts Backup & Transfer [to export CSV instead of VCARD files]
<https://play.google.com/store/apps/details?id=gr.alterora.apps.contacts>

Then you wipe out (or disable) any contacts, dialer, or SMS app which uses
only that sqlite database (not easy for SMS apps unfortunately).
o Contacts (import your local contacts.vcf or contacts.csv file)
o SMS/MMS (momentarily sync to your temporary default sqlite contacts.db)
o Dialer (the trick is to set & combine, as shown below)

Again, it's important to note how confusing Android 9 is for such things:
a. There's a default "*Phone app*"
(which can be set to your contacts app or to your dialer app!)
b. There's a default "*SMS app*"
(which isn't as confusing as you likely have a separate SMS/MMS app)
Note again there is no default "Dialer app" nor "Contacts" app, per se!
o There's just a system default "Phone app" & system default "SMS app".

That means you have a choice, where what you choose changes things:
a. You can set the system default "Phone app" to your contacts app, or,
b. You can set the system default "Phone app" to your dialer app.

Given these confusing non-intuitive options,
o You probably want to make a note of your current default apps.

System > Apps & notifications > Advanced > Default apps
o Note there is a default "Phone app"; and a default "SMS app"
o But note there is no default "contacts" or "dialer" app in Android 9.
o You can set the system default "Phone app" to either contacts or dialer.

STEP 1:
Install any desired privacy-aware contacts app, e.g.:
o <https://f-droid.org/en/packages/com.simplemobiletools.contacts.pro/>

STEP 2:
Install any desired privacy-aware dialer app, e.g.:
o <https://f-droid.org/en/packages/com.simplemobiletools.dialer/>
a. When started, it will ask "Allow Dialer to access your contacts"
b. Press the "DENY" button (as "ALLOW" simply access the empty sqlite db)
c. It will say "Could not access your contacts", which is to be expected.
d. But then, inside of the "Dialer", press the "dialpad" icon & then "+"
e. Notice the dialer sucked up _all_ your contacts from your contacts app!
f. Even though your default contacts sqlite database is completely empty.
g. Simply search and tap on any contact to dial out using this dialer.
It's a good idea to reboot after changing system default settings.

You can test that the "dialer" is using the same outgoing calls private
database as the "contacts" app by adding or removing a contact using either
app. Of course, you can eliminate the dialer, since it's part of contacts.
--
Note if you set the system default "Phone app" to "Dialer" versus to
"Contacts", then you get a different incoming call screen, depending on the
app you set it to (yet, without the sqlite db, incoming calls won't show
the contact name - they'll just show the incoming phone number.)

Outgoing calls can use either the "Dialer" or the "Contacts" app, but there
is no search if you use the "Dialer" without the sqlite db, so use the
"Contacts" for outgoing calls (which has a good search feature even without
the sqlite database existing).
Arlen Holder
2020-05-31 12:16:01 UTC
Permalink
To summarize the privacy-oriented takeaways...
o The question really boils down to how incoming calls caller ID works.

Because, if you eliminate the system default contacts sqlite database...
A. Outgoing contacts apps work fine
B. Outgoing dialer apps work fine (and aren't even needed anyway)
C. Incoming/Outgoing SMS/MMS apps work fine
But... incoming calls caller ID is problematic.

Summarizing with a bit more detail on my test results...
A. *Contacts app*
Any good privacy-aware contacts app works just fine without the
system default contacts sqlite database since the contacts app
can import/export a VCARD *.vcf file and then store the contacts
internal to the contacts app (and not in the default sqlite db).
B. *Dialer app*
You don't really ever need a dialer app anymore (AFAICT), simply
because both the contacts app and the SMS/MMS app each already
contain a dialer anyway; but if you want a separate dialer app,
that separate dialer app can read the privacy-aware contact app's
internal contacts (i.e., the dialer doesn't need the default system
contacts sqlite database either).
C. *SMS/MMS/RCS app*
All SMS/MMS apps tested to date seem to _only_ use the default
system contacts sqlite database to automatically name incoming
conversations and to search for outgoing contacts for new conversations.
However you can "trick" the PulseSMS app into "remembering" these
names simply by momentarily loading the default contacts sqlite
database, and then refreshing PulseSMS. After that refresh, all
existing conversations will take on the names in the system default
contacts sqlite database even after you then delete the system
default contacts sqlite database. (Although new conversations will
need to be manually named.) Without the system default sqlite
contacts database, searches for new outgoing conversations won't
work inside the PulseSMS app, but you can start those new SMS
conversations from the contacts app, where a search does work.

In summary, if you eliminate the default contacts sqlite database,
the only thing you lose (AFAIK) that you can't get back with a simple
trick, is incoming caller ID for incoming phone calls only.

I'm searching to solve that lack of incoming-caller-ID phone call hurdle.
o If you have a solution to that caller-id issue, please let me know.
--
It's amazing how Android is tied to the system contacts sqlite database!
Alan Baker
2020-05-31 20:29:06 UTC
Permalink
Post by Arlen Holder
Update
I'm testing a potential privacy-based solution that not only easily
synchronizes your contacts on your private LAN, but which, for privacy,
doesn't use the default contacts sqlite database on the Android device.
o Contacts (we solved this in other threads)
o SMS/MMS (we solved this in other threads)
o Dialer (this post is mostly how we can solve this)
Clarification.

In other threads, Arlen has claimed he already HAD such a solution.
Post by Arlen Holder
Bear in mind it's extremely difficult to get incoming caller ID
o When you don't have anything in the default contacts sqlite database
Luckily, it's not hard to get outgoing search by number or name...
o Without the default contacts sqlite database existing
o System set default "*Phone app*" --> Contacts
o System set default "*SMS app*" --> Pulse
o Note that there is no default "Dialer app" nor "Contacts" app, per se!
Also note that there's really no need for a "dialer", per se, since dialers
are part of both the contacts and SMS apps; but I'm testing them
nonetheless.
It's pretty easy but it's not intuitive, to keep contacts off the net!
o Particularly since most Google apps insist on uploading to the net!
Before you even start, it's a given you won't be using any Google apps.
o And, it's assumed your dialer app is a different app than your contacts app!
The trick, of course, is to find what apps to use to REPLACE Google apps!
o Below are the apps I'm currently using which support privacy models...
o Contacts <com.simplemobiletools.contacts.pro> mine is version 6.4.4
o SMS/MMS <xyz.klinker.messenger> mine is version 4.14.2655
o Dialer <com.simplemobiletools.dialer> mine is version 5.1.2
(Note: Older versions of the "Contacts" app above have READ_CALL_LOG
functionality not in newer versions; so use the older version if you can.)
For privacy, you would likely want to wipe out the default contacts sqlite
database after you back it up by exporting your contacts to a VCARD (*.vcf)
or Excel (*.csv) file, which you can then easily manually or automatically
maintain, sync, merge, backup, etc. as explained in numerous other threads.
o ImportContacts [without putting them on the net (nor using Google)]
<https://f-droid.org/en/packages/am.ed.importcontacts/>
o ExportContacts [without putting them on the net (nor using Google)]
<https://f-droid.org/en/packages/am.ed.exportcontacts/>
o Contacts Import [if you wish to import CSV files instead of VCARD files]
<https://play.google.com/store/apps/details?id=eu.stargw.contactsimport>
o 123 Contacts Backup & Transfer [to export CSV instead of VCARD files]
<https://play.google.com/store/apps/details?id=gr.alterora.apps.contacts>
Then you wipe out (or disable) any contacts, dialer, or SMS app which uses
only that sqlite database (not easy for SMS apps unfortunately).
o Contacts (import your local contacts.vcf or contacts.csv file)
o SMS/MMS (momentarily sync to your temporary default sqlite contacts.db)
o Dialer (the trick is to set & combine, as shown below)
a. There's a default "*Phone app*"
(which can be set to your contacts app or to your dialer app!)
b. There's a default "*SMS app*"
(which isn't as confusing as you likely have a separate SMS/MMS app)
Note again there is no default "Dialer app" nor "Contacts" app, per se!
o There's just a system default "Phone app" & system default "SMS app".
a. You can set the system default "Phone app" to your contacts app, or,
b. You can set the system default "Phone app" to your dialer app.
Given these confusing non-intuitive options,
o You probably want to make a note of your current default apps.
System > Apps & notifications > Advanced > Default apps
o Note there is a default "Phone app"; and a default "SMS app"
o But note there is no default "contacts" or "dialer" app in Android 9.
o You can set the system default "Phone app" to either contacts or dialer.
o <https://f-droid.org/en/packages/com.simplemobiletools.contacts.pro/>
o <https://f-droid.org/en/packages/com.simplemobiletools.dialer/>
a. When started, it will ask "Allow Dialer to access your contacts"
b. Press the "DENY" button (as "ALLOW" simply access the empty sqlite db)
c. It will say "Could not access your contacts", which is to be expected.
d. But then, inside of the "Dialer", press the "dialpad" icon & then "+"
e. Notice the dialer sucked up _all_ your contacts from your contacts app!
f. Even though your default contacts sqlite database is completely empty.
g. Simply search and tap on any contact to dial out using this dialer.
It's a good idea to reboot after changing system default settings.
You can test that the "dialer" is using the same outgoing calls private
database as the "contacts" app by adding or removing a contact using either
app. Of course, you can eliminate the dialer, since it's part of contacts.
Arlen Holder
2020-10-23 18:41:20 UTC
Permalink
[*] I used to just be able to use Contacts for phone and contacts, now
I have Contacts and Dialer and each seems to interact with the
other.
https://f-droid.org/en/packages/com.simplemobiletools.contacts.pro/
https://f-droid.org/en/packages/com.simplemobiletools.dialer/
Regarding Eli the Bearded's comments quoted above in the recent thread
o sms to text app problem, by Carlos E.R.
<https://groups.google.com/forum/#!topic/comp.mobile.android/zcgthOjJxeg>

Like Eli the Bearded, I also use simple mobile tools contacts & dialer:
o <Loading Image...>

What confuses the heck out of me is that they overlap a lot.
o In fact, there's so much overlap, it's confusing which is what

Even more so, they overlap with the SMS app (mine is Pulse SMS).
o All three (contacts, dialer, & sms/mms) can dial out, for example

And all three can apparently look up contacts from the sqlite db.
o And yet, only two are possible to set up as "Default apps" (Android 10)
1. Default Phone app ==> SimpleMobileTools' app named "Contacts"
2. Default SMS app ==> PulseSMS's app named "Pulse"

Notice there is apparently no concept of a "dialer" anymore (Android 10).
o It confuses the hell out of me why we have 3 that overlap so much.

Note: None of my default apps are ever gonna be "Google" based.

See also related topics for keeping contacts out of Google's paws:
o Does anyone know how the PHONE ties to NTACTS tiies to SMS on Android 9
Pie?
<https://groups.google.m/forum/#!topic/comp.mobile.android/EvXtsP9radE>

o app: Simple Mobile tools "Simple Dialer" reads the same on-the-phone
privacy-based vcard/excel/csv non-sqlite Simple ntacts database
<https://groups.google.m/forum/#!topic/comp.mobile.android/WE0jbWQt6Mc>

o Does your ntacts app have an import/export to/from non-proprietary VCARD
format?
<https://groups.google.m/forum/#!topic/comp.mobile.android/I48Dmi1rR8I>

o Best free SMS app for Android
<https://groups.google.m/forum/#!topic/comp.mobile.android/up2NoEHr9M8>

o How does inming caller ID work - and more specifically - can caller ID
source data be controlled?
<https://groups.google.m/forum/#!topic/comp.mobile.android/GMKskP4h0Cs>

o What free bulk ntact deletion method or tool do you prefer so as to
delete contacts on each Android sqlite account database?
<https://groups.google.m/forum/#!topic/comp.mobile.android/xfmXK8hfOr0>

o Which free ntact optimizer duplicate removal contacts merger app do you
like best & why?
<https://groups.google.m/forum/#!topic/comp.mobile.android/YheUv3Cl5aM>

And for why all of that matters to keep Google away from our ntacts:
o Do people of reasonable technical ability store their private data on the
Internet (if so, for what gain?)
<https://groups.google.m/forum/#!topic/comp.mobile.android/mBIZ-8jGdmk>
--
I installed the app "SMS to text" years ago.
Today I get a note from Google play because (I have to translate from
Spanish) it can access to personal information from the call log or the
SMS.
What? The purpose of the app is to save the SMS in a text file, so
obviously it needs access to both the SMSs and the call log (phone
registry).
I've seen similar things happen with other apps. In the name of
protecting users from malicious apps (consider a game that wanted to
access your SMS and call logs), Google is apparently trying to strongly
discourage anything but the Google sanctified products doing that sort
of thing. The thing is, I don't want Google's products accessing my SMS
or call logs (etc) because I trust J-Random-Open-Source app much more
than I trust data-mine-to-an-inch-of-existence Google.
In my current case, my choosen phone app[*] for several versions could
no longer access call logs. The author apparently managed to fix that
by splitting the app in two, to limit the permissions for each half.
[*] I used to just be able to use Contacts for phone and contacts, now
I have Contacts and Dialer and each seems to interact with the
other.
https://f-droid.org/en/packages/com.simplemobiletools.contacts.pro/
https://f-droid.org/en/packages/com.simplemobiletools.dialer/
Ideally, for me, I'd want all permissions to be finely controllable by
me, and I'd give very few to most apps, and almost all to Termux, where
I write programs on my phone.
https://f-droid.org/en/packages/com.termux/
Elijah
------
Termux makes the device usable as a real computer
Arlen Holder
2020-10-29 06:51:42 UTC
Permalink
UPDATE:

See also:
o Syncing Outlook Contacts in Windows to Android
<https://groups.google.com/forum/#!topic/comp.mobile.android/vary6nhv4qo>
Loading...