Most of the all the home-brew apps we have seen till date has focused on bringing customization of which Battery App, Theme Customization, WPH Tweaking tools are good examples. So until Microsoft announces the next Windows Phone feature, which should have a bit of customization, Let us all try out the apps the awesome homebrew community is developing.
Features of RandomRingtone.
Today’s featured Homebrew App is, Random Ringtone Changer which needs WP7 Root Tools. This app randomly changes your Ringtone, which can be, initiated manually or by running a background agent which you need to turn on manually. It runs every 30 minutes.
Now what is important to know about this app is that it only changes the Custom Ringtones and not the system ringtone on Windows Phone. One of the coolest way to get Custom Ringtone is using the Insider App for Windows Phone, officially from Microsoft.
Another thing you need to make sure is that you have more than one Custom Ringtone available to make the right use of it. I had this issue and only understood while discussing it with the Developer.
In case you still have issues, try checking on the following entries in your registry and then post the info to the developer at the thread to help him see if there is an issue that can be resolved.
- Current User\ControlPanel\Sounds\CustomProtectedRingtones
- Current User\ControlPanel\Sounds\CustomRingtones
As of now it has worked nicely with Omnia 7, HD7 and Focus.
Suggestions :
- Allow to configure how often the background agent should run. Many of us will want to change it once every day.
- Notification when a Ringtone is changed.
- Live Tile support to change ringtone from Start Screen.
- Include System ringtone support.
- Option to view ringtones in the app and then choose between which ringtone it should shuffle.
- If possible allow to bring Profile option which can allow, the user to change to a particular ringtone at a certain period of time or on demand.
Download
Download the XAP from here and if you have any questions, post it at the same place. The app is still in early stage but does the basic job, we will have to wait for few more days to see the real potential.


Hi Ashish
Here is what I am trying to do. I want to programatically click on Ok on a dialogbox that shows up as a result of call to saveRingtoneChooser.Show();
Can you suggest something here?
Following is my code but BeginInvoke does not do anything
SaveRingtoneTask saveRingtoneChooser = new SaveRingtoneTask(); saveRingtoneChooser.Completed += new EventHandler(saveRingtoneChooser_Completed);
saveRingtoneChooser.Show();
//Call the events
TaskEventArgs e = new TaskEventArgs(TaskResult.OK);
// you cannot change the UI in this function -> you have to call the UI Thread
Deployment.Current.Dispatcher.BeginInvoke(() => saveRingtoneChooser_Completed(saveRingtoneChooser, e));