Accessibility App Connectors allow access to phone call information
Android 9 (pie) app that keeps track of call details without access to call logs:
Call Recorder - Cube ACR
Call Recorder - Cube ACR provides:
(a) The date and time of the call.
(b) The duration of the call.
(c) The size of the recording in bytes.
(d) The phone number or the name of the person (if in contacts).
(e) Incoming or Outgoing call.
It uses Accessibility App Connectors to get access to this data.
This answer will only work for developers of Android apps, yet works quite well in this case. It doesn't provide access to the actual call logs but it does provide access to the same information. Accessibility App Connectors allow the underlying program to "see' the data that is on the display screen and be notified of events such as placing or receiving a phone call.
The following Google Play app is an example of an app that uses this method. It records the Contact name or the phone number of all phone calls and it does this on Android 9 (Pie) without rooting the phone.
Call Recorder - Cube ACR
The above app has an app connector that lets it access the current phone number and display either the contact name or the phone number if the number is not in the phone contacts. The recorded call quality in speaker phone mode seems pretty good. This app does not require rooting the phone.
Because of the above Google Play policy change it may be the case that every phone call recorder app on Google play always has poor quality unless in speaker phone mode. The quality of many of them even in speaker phone mode seems degraded for the other caller. I tested about a dozen of the most popular apps for recording quality. This one may be the best of the twelve. I still have to run some more tests to make sure.
There is a big difference when tested on someone's voicemail message and when tested with an actual person on the other end. Quite often (even in speaker phone mode) the person on the other end is at only half the volume.