chenxiaolong / BCR

A Basic Call Recorder for rooted Android devices
GNU General Public License v3.0
1.67k stars 109 forks source link

Cannot record calls from private numbers #455

Closed Kruegerrr closed 7 months ago

Kruegerrr commented 10 months ago

Private numbers are commonly used by government agencies and financial institutions in the UK and allow callers to conceal their real phone numbers. It is particularly important to record these unidentified calls for analysis and evidence purposes. However, BCR reports 'recording failed' for calls from private numbers.

chenxiaolong commented 10 months ago

Can you enable debug mode by long pressing BCR's version number and then upload the log file it creates (in the output directory) the next time you get a call from a private number?

AOSP (and ROMs that don't diverge too far from it, like the Google Pixel stock OS) don't treat private calls any differently, other than not being able to show the phone number. If the recording process fails only for these numbers, I strongly suspect the ROM you're running is blocking these calls from being recorded. The logs should help to confirm this.

Kruegerrr commented 10 months ago

Will do. I wonder what should the filename of recording for private call look like?

chenxiaolong commented 10 months ago

The filename for the recording should looks something like: 20231114_154538.67-0500_in.<ext> (the phone number portion will be missing).

Niebelings commented 8 months ago

I'm having the same problem App version: 1.56 Magick version 26.4 Build number: lineage_dre-userdebug 13 TQ3A.230901.001 2dcac9c1e0

Please let me know if there is a solution. I'm thinking it doesn't like it because it can't get a phone number for the file name.

chenxiaolong commented 8 months ago

Please see my first comment above for getting the debug logs. If a log file doesn't get created, please grab a logcat instead (either with adb logcat or an app like https://f-droid.org/en/packages/com.f0x1d.logfox/).

mad-tunes commented 7 months ago

I think this might be the same? I can open a new issue if not. After receiving a call from a withheld number (the calls I'd most like to record), BCR shows me a notification like this: Screenshot_20240301-125016_60

This is on my Pixel 8 using the latest stock ROM. I have my own folder and M4A/AAC format set. Calls from numbers which aren't withheld record just fine.

I've tried clearing BCRs data/cache, uninstalling/reinstalling BCR through Magisk and find the same afterwards.

I enabled debug logging and then got another call from a withheld number, which I hope might show what's up? 20240301_154940.889+0000_in.log.txt

Thanks a lot

Niebelings commented 7 months ago

I think this might be the same? I can open a new issue if not. After receiving a call from a withheld number (the calls I'd most like to record), BCR shows me a notification like this

I am getting the same thing. Attached is my log file that I have.

If there is anything else that the team need please let me know!

20240301_164544.376-0600__Anonymous.log.txt

App version: 1.60 Magick version 27.0

chenxiaolong commented 7 months ago

Thanks for the logs! They were very helpful since I couldn't reproduce this on my device.

BCR grabs the phone number from two sources: the native call detection API and also the call log. On my device, Android reports the phone number as +anonymous (native API) and + (call log), but on your devices, it's reported as null (native API) and an empty string (call log). I wonder if this is carrier-dependent.

Anyway, this should be fixed by #505, which will be included in BCR 1.61.