Enable Native Call Recording [OOS] [ROOT/NON-ROOT] [APP/MAGISK MODULE/ADB/TASKER]

MaxBald74

Member
Dec 14, 2018
13
0
0
If you aren't rooted, then I'm afraid there's no method that will be permanent. Call recording option will disappear for you from time to time. The only thing that I can think of is to find a third party call recording app from the Play Store and use it. Or switch to HydrogenOS, as mentioned in the above mentioned post. :)
Thank you Shadowstep.
Unfortunatly Android Pie makes it impossible to record calls with third party apps.
I tried several third party call recording apps and read a lot about other people that used these apps before realease of Android 9 and all have the same problem: you can hear your voice but not the person on the other side.
System app was the only possibility till OnePlus opted for blocking native call recording on its global phones.
But I wonder, I chose Android instead of iOS because it's a more open system, if Google and OnePlus are so concerned about the privacy laws of different countries, why they don't put a nice disclaimer where the user accepts to use the call recording option under its own responsibility?

---------- Post added at 12:07 PM ---------- Previous post was at 11:59 AM ----------

It's working really good in Germany :cowboy:
Call recording is working without any modification.
I read some people had issues with language and Android Marketplace.
 

shadowstep

Forum Moderator
Staff member
Jun 6, 2014
4,292
8,105
263
30
Ambala
Thank you Shadowstep.
Unfortunatly Android Pie makes it impossible to record calls with third party apps.
I tried several third party call recording apps and read a lot about other people that used these apps before realease of Android 9 and all have the same problem: you can hear your voice but not the person on the other side.
System app was the only possibility till OnePlus opted for blocking native call recording on its global phones.
But I wonder, I chose Android instead of iOS because it's a more open system, if Google and OnePlus are so concerned about the privacy laws of different countries, why they don't put a nice disclaimer where the user accepts to use the call recording option under its own responsibility?
Oh, yes! I faintly remember I read an article somewhere that there have been changes done to AOSP Pie branch that affects third party call recording functionality. My bad, slipped out of your mind. So the only available options are for you to either root or go with H2OS.
 

liam69

Senior Member
Dec 10, 2013
86
12
0
Merry Christmas & happy New Year
I wanted to ask call recording works on stock Android pie without root with ADB command via a computer
 

Zackptg5

Recognized Developer
Sep 18, 2014
4,062
6,623
263
zackptg5.com
Oh, yes! I faintly remember I read an article somewhere that there have been changes done to AOSP Pie branch that affects third party call recording functionality. My bad, slipped out of your mind. So the only available options are for you to either root or go with H2OS.
Realized I made a typo in the flashable zip. Updated zip with fix. However I'm now on oos pie stable and the zip doesn't work for me so I'll need to investigate it further
 
  • Like
Reactions: dandemonic

shadowstep

Forum Moderator
Staff member
Jun 6, 2014
4,292
8,105
263
30
Ambala
Merry Christmas & happy New Year
I wanted to ask call recording works on stock Android pie without root with ADB command via a computer
Season's greetings to you too! :)

Yes, that no-root method still works, but call recording will get disabled after sometime. So you'll have to run the ADB command again everytime that happens.

Realized I made a typo in the flashable zip. Updated zip with fix. However I'm now on oos pie stable and the zip doesn't work for me so I'll need to investigate it further
I had reverted the flashable zip in the OP to an older version of yours since the last one broke the SIM settings menu for everyone (due to disabling of an activity that made call recording stick).

Also, the Magisk module now modifies the culprit APK when it's installed and places the modified APK in the module's folder for mounting during phone boot. At the moment, this is the only method that's making call recording stick without breaking SIM settings or anything else. :)
 

Zackptg5

Recognized Developer
Sep 18, 2014
4,062
6,623
263
zackptg5.com
Season's greetings to you too! :)

Yes, that no-root method still works, but call recording will get disabled after sometime. So you'll have to run the ADB command again everytime that happens.



I had reverted the flashable zip in the OP to an older version of yours since the last one broke the SIM settings menu for everyone (due to disabling of an activity that made call recording stick).

Also, the Magisk module now modifies the culprit APK when it's installed and places the modified APK in the module's folder for mounting during phone boot. At the moment, this is the only method that's making call recording stick without breaking SIM settings or anything else. :)
Interesting, I'll look into that. The service script is only needed on the first boot after patching the apk too.
You can also get rid of the extra sleep and repeated statements in the service script by this:
Code:
(
while [ $(getprop sys.boot_completed) -ne 1 ] || [ "$(getprop init.svc.bootanim | tr '[:upper:]' '[:lower:]')" != "stopped" ]; do
  sleep 1
done
settings put global op_voice_recording_supported_by_mcc 1
pm enable com.android.phone/com.android.phone.oneplus.OPSimSubSettingsActivity
rm -f $0
)
Edit: So found why that sed patch works and a cleaner way to do it: Just set v1 to 0x1. Normally this (the value to set mcc) would only be set to 1 if over seas. Unfortunately, I can't get the apk to recompile so current sed patch method is fine :)

Edit 2: Updated flashable zip with apk stuff, works great now :)
http://zackptg5.com/android.php#callrec
 

Attachments

Last edited:
  • Like
Reactions: shadowstep

shadowstep

Forum Moderator
Staff member
Jun 6, 2014
4,292
8,105
263
30
Ambala
Interesting, I'll look into that. The service script is only needed on the first boot after patching the apk too.
You can also get rid of the extra sleep and repeated statements in the service script by this:
Code:
(
while [ $(getprop sys.boot_completed) -ne 1 ] || [ "$(getprop init.svc.bootanim | tr '[:upper:]' '[:lower:]')" != "stopped" ]; do
  sleep 1
done
settings put global op_voice_recording_supported_by_mcc 1
pm enable com.android.phone/com.android.phone.oneplus.OPSimSubSettingsActivity
rm -f $0
)
Edit: So found why that sed patch works and a cleaner way to do it: Just set v1 to 0x1. Normally this (the value to set mcc) would only be set to 1 if over seas. Unfortunately, I can't get the apk to recompile so current sed patch method is fine :)

Edit 2: Updated flashable zip with apk stuff, works great now :)
http://zackptg5.com/android.php#callrec
Thanks for having a look at the module as well as updating the flashable zip. I'll add it to the OP right away! Also, just wanted to add that your posts are always detailed and I always learn something just by reading them. :)
 

Zackptg5

Recognized Developer
Sep 18, 2014
4,062
6,623
263
zackptg5.com
Interesting, I'll look into that. The service script is only needed on the first boot after patching the apk too.
You can also get rid of the extra sleep and repeated statements in the service script by this:


Thanks for having a look at the module as well as updating the flashable zip. I'll add it to the OP right away! Also, just wanted to add that your posts are always detailed and I always learn something just by reading them. :)

Just realized I forgot something with the code here. You need an ampersand after the closing parentheses. Sorry about that :/
 

shadowstep

Forum Moderator
Staff member
Jun 6, 2014
4,292
8,105
263
30
Ambala
Hi!

i am fully beginner. How to install this file? The system is completely factory.
zackptg5.com/android.php#callrec
You will have to unlock your phone and flash this via a custom recovery (TWRP). Root is not necessary, but an unlocked phone with a custom recovery is.
 

drjat

Senior Member
Dec 12, 2007
591
142
73
Warrington
Does this Magisk module require Oneplus sound recorder? I am asking because I have the sound recorder debloated and have both Google Dialer and Oneplus Dialer - but nothing got recorded. I was using Google Dialer as default phone app but also had Oneplus Dialer with call recording option enabled and Magisk Module installed
 

shadowstep

Forum Moderator
Staff member
Jun 6, 2014
4,292
8,105
263
30
Ambala
Does this Magisk module require Oneplus sound recorder? I am asking because I have the sound recorder debloated and have both Google Dialer and Oneplus Dialer - but nothing got recorded. I was using Google Dialer as default phone app but also had Oneplus Dialer with call recording option enabled and Magisk Module installed
I don't think that there's a dependence of the call recording functionality on the stock sound recorder (I can be wrong though). I think your issue is Google Dialer being the default phone app. The stock OnePlus dialer app has to be the default app for the calls to get recorded, I'm guessing.
 
  • Like
Reactions: drjat
Our Apps
Get our official app!
The best way to access XDA on your phone
Nav Gestures
Add swipe gestures to any Android
One Handed Mode
Eases uses one hand with your phone