Let me preface this with the fact that, you just can’t do this unless your iphone is jailbroken. For the non-curious, stop reading here.
This one came about as I was recently forced at work to switch from using the Unix email system to the hosted Exchange solution, in order for our calendars to be centrally accessible by everyone. Details aside, after adding my exchange to my iPhone (since I am trying to keep my blackberry off BES), I realized that the color schemes absolutely suck. From somewhere, it decided that purple was the best color, and I couldn’t change it. After aimlessly searching through the Calendar.app on the iPhone for a color changing option, I came to the realization that there was no way to do it. Luckily, my iphone was jailbroken, and there are plenty of ways to do this with a little background work. I found this amazing article: http://chriscarey.com/wordpress/2009/02/10/how-to-modify-iphone-calendar-colors-with-sqlite3/
To summarize it, in case the article disappears:
Start by ssh-ing into your phone
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
$ cd /var/mobile/Library/Calendar $ sqlite3 Calendar.sqlitedb sqlite> select title,color_r,color_g,color_b from Calendar; — List calendars and current colors Default|-1|-1|-1 Michael Ansel|181|0|13 School-Important|47|141|0 School-Studying|15|77|140 School-Class|229|98|0 sqlite> update Calendar set color_r=181, color_g=0, color_b=13 where title = ‘School-Important’; — Red sqlite> update Calendar set color_r=229, color_g=98, color_b=0 where title = ‘School-Studying’; — Orange sqlite> update Calendar set color_r=103, color_g=10, color_b=108 where title = ‘School-Class’; — Purple sqlite> update Calendar set color_r=15, color_g=77, color_b=140 where title = ‘Michael Ansel’; — Blue sqlite> select title,color_r,color_g,color_b from Calendar; — List calendars and current colors Default|-1|-1|-1 Michael Ansel|15|77|140 School-Important|181|0|13 School-Studying|229|98|0 School-Class|103|10|108 sqlite> .quit $ exit |
One tip that I can give, if you don’t have sqlite3 on your iphone (which you wouldn’t by default), is to scp the file to your computer, apply the changes, and scp it back to the iPhone.
Here are the RGB Values for the Standard Colors:
Red = (181,0,13)
Orange = (229,98,0)
Green = (47,141,0)
Blue = (15,77,140)
Purple = (103,10,108)
So, with the line:
1 2 3 |
update Calendar set color_r=181, color_g=0, color_b=13 where title = ‘Calendar’; |
I was able to make my default calendar (the Exchange one) RED — which portrayes the “important” notion and it’s easily visible.
Hope this helps everyone who is trying to accomplish this. Don’t forget to close and re-start your Calendar.app. If you don’t have a jailbroken iPhone, you can change your non-exchange calendars by syncing them to the iCal app, and changing the color back, and syncing them.
Post Navigation