Reason:
There have been a lot of mods out that enable call recording for your phone, but none that I have found enable all of the "voice_call_recording*" features.
Screen Shots:

Start recording, Stop recording, While recording
Flashing:
1. Make a backup of "/system/app/SecPhone.apk" (or do a full backup its up to you)
2. Boot into TWRP and Flash. (I have only tested on TWRP, but I don't see why it wouldn't work with CWM)
3. Reboot
Github Repo
Call Recording Repo
Download:
Mod_CallRecording_v1.5_1-25-2013.zip - 5.87 MB
Technical:
I have enabled the following Phone Features:
* voice_call_recording
* voice_call_recording_menu
* voice_call_recording_second_call_ongoing
* feature_ctc (contact name used for file name)
Modding process:
1. Grab "/system/app/SecPhone.apk" (my rom is deodexed)
2. Now open up the apk with 7zip or something comparable and grab the file classes.dex and store it in a folder to work with.
3. decompile with baksmali
4. Find and open the file PhoneFeatures.smali
5. Find the string "invoke-static {}, Lcom/android/phone/PhoneFeature;->makeFeatureForUsa()V"
6. Then make the following edits:
7. Save the file
8. Reassemble the dex with smali
9. Drop it back in the zip, and your good to go!
Note: I Used baksmali-1.4.1.jar and smali-1.4.1.jar to disassemble and reassemble classes.dex
There have been a lot of mods out that enable call recording for your phone, but none that I have found enable all of the "voice_call_recording*" features.
Screen Shots:

Start recording, Stop recording, While recording
Flashing:
1. Make a backup of "/system/app/SecPhone.apk" (or do a full backup its up to you)
2. Boot into TWRP and Flash. (I have only tested on TWRP, but I don't see why it wouldn't work with CWM)
3. Reboot
Github Repo
Call Recording Repo
Download:
Mod_CallRecording_v1.5_1-25-2013.zip - 5.87 MB
Technical:
I have enabled the following Phone Features:
* voice_call_recording
* voice_call_recording_menu
* voice_call_recording_second_call_ongoing
* feature_ctc (contact name used for file name)
Modding process:
1. Grab "/system/app/SecPhone.apk" (my rom is deodexed)
2. Now open up the apk with 7zip or something comparable and grab the file classes.dex and store it in a folder to work with.
3. decompile with baksmali
4. Find and open the file PhoneFeatures.smali
5. Find the string "invoke-static {}, Lcom/android/phone/PhoneFeature;->makeFeatureForUsa()V"
6. Then make the following edits:
Code:
invoke-static {}, Lcom/android/phone/PhoneFeature;->makeFeatureForUsa()V
sget-object v0, Lcom/android/phone/PhoneFeature;->mFeatureList:Ljava/util/HashMap;
const-string v2, "voice_call_recording"
const/4 v4, 0x1
invoke-static {v4}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
move-result-object v3
invoke-virtual {v0, v2, v3}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
sget-object v0, Lcom/android/phone/PhoneFeature;->mFeatureList:Ljava/util/HashMap;
const-string v2, "voice_call_recording_menu"
const/4 v4, 0x1
invoke-static {v4}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
move-result-object v3
invoke-virtual {v0, v2, v3}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
sget-object v0, Lcom/android/phone/PhoneFeature;->mFeatureList:Ljava/util/HashMap;
const-string v2, "voice_call_recording_second_call_ongoing"
invoke-static {v4}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
move-result-object v3
invoke-virtual {v0, v2, v3}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
sget-object v0, Lcom/android/phone/PhoneFeature;->mFeatureList:Ljava/util/HashMap;
const-string v2, "feature_ctc"
invoke-static {v4}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
move-result-object v3
invoke-virtual {v0, v2, v3}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
8. Reassemble the dex with smali
9. Drop it back in the zip, and your good to go!
Note: I Used baksmali-1.4.1.jar and smali-1.4.1.jar to disassemble and reassemble classes.dex
Last edited: