I just started my dance with the “Android” a couple weeks ago on the HTC Evo 3D and it has been a learning experience from typing on the on-screen keyboard to rooting. As is the purpose of this blog I try to post my learning experiences for later reference.
Ever since I got the phone I noticed that whenever I mounted the mircoSD to a computer, the ringtones would go back to the default/stock tones. Basically what was happening is, when the memory is mounted to the computer it is not accessible to the phone therefore no tones and it reverts to the settings it came with. This can be a bit annoying so I set out to do something about it. In this quest I discovered that the internal memory (/system to be exact) is mounted as read only therefore writing to that partition (read: placing files there) is not possible. So I couldn’t simply copy files onto it even though the phone was rooted.
I want this post to be as clear as possible so the the next person needing to do this wont have to go hunting around the web for bits and pieces like I had to. In order to do that though, and remain on topic, I will have to do a second post about how to get the adb stuff working. It took me a couple weeks, on and off, to get it but the crazy part is that I had it working from day 1 and didn’t even know. So I will put that together in another post as I said before.
I have pre-edited mp3s that I use as ringtones stored in my music folder on the mircoSD and what we will need to do is copy those to the internal memory where the other factory installed ringtones are (on my phone it’s /system/media/audio/ringtones).
- Fully rooted Android phone (I am using a HTC EVO 3D, should work for others)
- A PC with the ADB fully configured and working
- USB drivers for your phone
- Obviously, the phone and data cable
Disclaimer: Anyone who attempts the following does so that their own risk!!!
Let’s dive into it….
- Put your phone into “Debug Mode” and connect it to the computer via the data cable
- Open the command prompt and change to the directory in which adb is installed and issue this command “adb reboot recovery”
- The phone should reboot in a few seconds and enter recovery mode. Go to “mounts and storage” then mount ‘system’ and ‘sdcard’ (Volume keys normally move between options and the Power button selects your choice)
- Now the system partition is read only by default so we will have to remount it as read/write. This can be done with this command “adb remount”.
- Login to the shell of the device with this command “adb shell”
- Then finally the joy….. “cp /sdcard/Music/ringtone.mp3 /system/media/audio/ringtones/.”
- Unmount the partitions you mounted in step 3 then use the last option to exit this menu (Go Back). Then reboot the device with the first option on the resulting list.
After the phone boots normally, you are free to disconnect, disable USB debugging and start assigning the tones as normal.