• After 15+ years, we've made a big change: Android Forums is now Early Bird Club. Learn more here.

Root [Tutorial] Modding / Changing Default Picture For Contacts and Calls

Hello Everyone!
I have a little tutorial for you! I have figured out how to mod or change the stock picture / graphic for the contacts in your phone that do not have a photo added by you or Facebook. I have also found out how to do the same thing but with incoming and outgoing calls that you do not have personal photos for.

Things you will need:
1. Samsung Prevail (Duh)
2. USB Transfer Cable
3. The USB drivers for your phone installed
4. adb.exe (Which comes in One-Click root download)
5. Some time on your hands

**If something goes wrong while doing this tutorial, I am not liable! So do this at your own risk! Even though the chances are very very small of something actually going wrong, I just have to say it**
So let’s begin!

The first thing you need to do is have your phone rooted! If you are not rooted yet, forget about this tutorial for now.

The second thing you need to do is have adb extracted on your C:\ drive.
Next you will need the original files that you are going to modify with your picture of choice.

Using adb within your command prompt (in windows) run this command: (this will copy and transfer the needed files to your computer, in my case it copied them right to my C:\ drive)
Code:
adb pull /system/app/Contacts.apk
adb pull /system/app/Phone.apk

**Make sure that you type this exactly like this with the Caps where I have them.**

***Once you locate the Contacts.apk and Phone.apk files I could advise making a copy of them and putting them on a flash drive or something so that is something goes wrong or you just simply want to restore back to the default images you have the original files safe***

Now in order for windows to look within these files it needs to be .zip format not .apk

This is a real simple thing to do, and you don’t even need to download a program to convert it, you just simply rename the file extension to .zip from there the file will allow you to open it and see its contents.
In the Contacts .apk you will need the following files from this location “res\drawable-mdpi-finger\”
1. ic_contact_list_picture.png
2. ic_contact_picture.png
3. ic_contact_picuture_2.png
4. ic_contact_picture_3.png

Once you find those files, locate the new picture/graphic that you are going to be using and make sure it is in .png format not .jpg (Also make sure that the image isn’t huge. The stock size is 48x48 pixels. You can simply resize it like I did. I used Photoshop CS5 to do that but you can use other programs to do this.) You need to make sure the new image is .png in photoshop you can open and edit the image and then you can "save as" and select to save it in the .png format.

Once you have the new image ready to go all you need to do is rename it to the original file and then replace the original files with the new one.
Once you have replaced the files you can now change the file extension back to .apk

Now you need to do the same process to the Phone.apk file.
The file you are looking in after you change the file extension to .zip is located here:
“res\drawable-mdpi\” and look for the file “picture_unknown.png”

This image will be the one that will show up when someone is calling you or when you are calling them if you don’t have a personal picture of them in your phone.

The size of this image is larger so resize your image to 96x96 pixels which is the stock image size. If you want you can make it smaller but I would not make it bigger. But note that if you make it smaller there will be a 96x96 grey box surrounding your image if you do not take up the whole 96x96 pixels.
Once you are done doing this and renaming the file as the original and replace it with the new .png file change the file extension back to .apk
Place both the new modified Contacts.apk and Phone.apk files in the same place that they were transferred to on your computer. (In my case is was simply C:\)

Now simply run these commands:
Code:
adb push Contacts.apk /system/app
adb push Phone.apk /system/app

This will replace the original files on your phone with the ones you just modified.

Now if you get an error that says something about the destination being a “Read-Only system” run this command before trying to adb push the new files:

Code:
adb shell
su
mount
mount -rw -o remount /dev/block/stl12 /system

After running that command the files should transfer fine. You do have to close out of the command prompt and reopen it so that you are no longer in the adb shell. Then just simply run adb push commands once more, this is what I had to do with my phone.

After the transfer is complete, reboot your phone and you will be good to go!
The only thing is that you will have to go into the menu and put the contacts icon back on your home screen if you had one on it, for some reason it gets taken off when you transfer the new files, but that is simple because all you need to do is put the shortcut back on the home screen.

Check out the screenshots of what my phone looks like now! Superuser!

Enjoy!

A special thanks to Lordvincent 90 for helping me out with this!
 

Attachments

  • super_user.jpg
    super_user.jpg
    13.4 KB · Views: 281
  • Contact_Super_user_edit.jpg
    Contact_Super_user_edit.jpg
    65.1 KB · Views: 290
What difference does this do compared to going into a contact Choosing Edit contact then clicking the plus on the image and putting an image right off of my phone???
 
What difference does this do compared to going into a contact Choosing Edit contact then clicking the plus on the image and putting an image right off of my phone???

Just like Lordvincent 90 said. It changes the default picture from the original image which I like because I like customized items to differ from all the rest. :) Tonight I am going to be working on changing app icons and shortcut icons. I am going to change the face on the text message icon along with the notification bar icon for texts. And then the "market" icon I am going to have a superuser android instead of the original android. :)
 
Hello Everyone!
I have a little tutorial for you! I have figured out how to mod or change the stock picture / graphic for the contacts in your phone that do not have a photo added by you or Facebook. I have also found out how to do the same thing but with incoming and outgoing calls that you do not have personal photos for.

Things you will need:
1. Samsung Prevail (Duh)
2. USB Transfer Cable
3. The USB drivers for your phone installed
4. adb.exe (Which comes in One-Click root download)
5. Some time on your hands

**If something goes wrong while doing this tutorial, I am not liable! So do this at your own risk! Even though the chances are very very small of something actually going wrong, I just have to say it**
So let
 
Ok so Im having trouble with the adb recognizing my device. I went to one click root and downloaded the file. I already have the USB drivers installed otherwise my phone wouldn't be recognized by my computer.
Now the real problem is that when I go to the command prompt on c drive I type in adb devices, but my phone is not recognized. Can anyone tell me if I skipped anything?

i had the same issue.
press windows key and type 'device manager'
click on it
look for the 'unknown device' tab,
right-click the unknown device,
select properties,
select the driver tab,
select update driver,
and select the automatic option,
it should note recognize the device. :)
 
i had the same issue.
press windows key and type 'device manager'
click on it
look for the 'unknown device' tab,
right-click the unknown device,
select properties,
select the driver tab,
select update driver,
and select the automatic option,
it should note recognize the device. :)

I was able to update drivers however my phone is still not recognized. I have windows XP. Would that be the issue?
 
Try moving the phone to a different usb port...? (Sry, i use win7)

Ok I figured out that since I'm using windows XP I have to right click the folder that contains the adb file then run the command. I was able to locate the phone apk file and change it to a zip. However, it will not change back into apk when I rename the file again. How do I get it back to apk without a converter?.....my brain is fried tonight.
 
Through a lot of trial and error almost everything is working correctly except i am unable to push the contacts apk and phone apk back into the device. When i type the code in for either one i get a message saying adb not found. Can you post a screenshot of when it is done correctly? I believe that i am just typing the message wrong.

If it says adb not found, then you need to change directories to the folder with adb in it, if you put adb.exe in the c:\ drive, like the OP suggested to do, then you need to type
Code:
cd c:\
If it is in another folder, you need to cd (change directories) to the folder with adb inside it.

also, if the .apk files are not in the same folder as adb, it will not work with the listed commands
 
42575408-476c-2ca6.jpg
If it says adb not found, then you need to change directories to the folder with adb in it, if you put adb.exe in the c:\ drive, like the OP suggested to do, then you need to type
Code:
cd c:\
If it is in another folder, you need to cd (change directories) to the folder with adb inside it.

also, if the .apk files are not in the same folder as adb, it will not work with the listed commands

Sry for the late reply, but my new job is killing me.

I have the adb.exe. located on c:\ . Also in the command prompt I typed cd c:\ and when I try to push the files I get a message that says bad substitution. I know this is a simple process for you but I seem to be running in circles. Can you give a step by step explanation of what to do after I change from read-only?
 
Code:
adb shell

su

mount -rw -o remount /dev/block/stl12 /system
Now press ctrl+d then enter to exit the shell you created
Then do
Code:
adb push Contacts.apk /system/app

adb push Phone.apk /system/app

I suspect your problem was that you were trying to use adb push while still in adb shell. :)
 
Code:
adb shell

su

mount -rw -o remount /dev/block/stl12 /system
Now press ctrl+d then enter to exit the shell you created
Then do
Code:
adb push Contacts.apk /system/app

adb push Phone.apk /system/app

I suspect your problem was that you were trying to use adb push while still in adb shell. :)

Of coarse I did. I may spend hours reading posts and using Google,but still a noob.
So I just enter those commands in a new shell?
 
no, not in any shell. from c:\ type
Code:
adb push Contacts.apk /system/app 
adb push Phone.apk /system/app
its not a shell command, its a regular adb command.

if you are in adb shell, ctrl+d will exit the shell back to the c drive so you can issue adb commands
 
no, not in any shell. from c:\ type
Code:
adb push Contacts.apk /system/app 
adb push Phone.apk /system/app
its not a shell command, its a regular adb command.

if you are in adb shell, ctrl+d will exit the shell back to the c drive so you can issue adb commands

I finally got it! I don't know how you guys can answer the sane questions millions of time over and over, but thanks for having so much patience. :D:D:D
42575484-714c-73ae.jpg
 
Hello Everyone!
I have a little tutorial for you! I have figured out how to mod or change the stock picture / graphic for the contacts in your phone that do not have a photo added by you or Facebook. I have also found out how to do the same thing but with incoming and outgoing calls that you do not have personal photos for.

Things you will need:
1. Samsung Prevail (Duh)
2. USB Transfer Cable
3. The USB drivers for your phone installed
4. adb.exe (Which comes in One-Click root download)
5. Some time on your hands

**If something goes wrong while doing this tutorial, I am not liable! So do this at your own risk! Even though the chances are very very small of something actually going wrong, I just have to say it**
So let
 
The concept is universal... The commands for mounting the system partition are specific to this phone.
 
I found a simpler way to change default pictures on contacts.
Thanks to cnet!! On your browser go to google accounts.
Sign in with your accont. Browse on the left colum for products, and you
 
However............ Not all people sync their contacts via Google account. For example, I do not sync to Google, I sync with my local MS-Outlook..... But if I put a pic in Outlook or if I change it on the phone ( with quickPick) they get also synced !
 
For those of you that receive the error message 'adb' is not recognized as an internal or external command, operable program or batch file', an easy resolution is to edit the 'Environment Variables' in your 'System Properties' (Windows OS's). This will allow you to run the 'adb' executable from any directory in which you are located at the command prompt.

1) Open Windows Explorer by holding the 'Windows key' and pressing E
2) Right-click 'Computer' (or 'My Computer' pre-Windows 7)
3) Choose 'Properties' (This will bring up your system information page in Windows 7/Vista, from there, click 'Advanced system settings')
4) Click the 'Advanced' tab
5) Click the 'Environment Variables' button
6) In the 'System Variables' pane, highlight 'Path' NOT 'CLASSPATH', 'PATHTEXT', OR 'PSModulePath'.
7) Click 'Edit'
8) Go to the end of the text present (DO NOT DELETE THE VALUES PRESENT AS THIS WILL CAUSE MORE TROUBLE FOR YOU) and insert a semicolon ( ; ) followed by the location of the adb.exe command (for me, this was C:\Program Files (x86)\Android\android-sdk\platform-tools)
9) Click 'OK'
10) Click 'OK'

You should now be able to run the 'adb.exe' command from any directory at the command prompt. If you performed this procedure with the command prompt window open, type 'exit' or close the window and reopen it.
 
Back
Top Bottom