How to Sync Google Calendar to Android
From PDA to Android
Just recently, I gave in to the mystical forces of modern technology and shelved my antiquated Palm T/X PDA in favor of a smartphone. I depended on my PDA daily for calendar events, so transferring the data from that to my shiny new Samsung Galaxy S4 was my first priority.
In a perfect world, the basic steps involved would be:
1. Create a Google calendar online.
2. Import my iCal or csv file into my Google calendar.
3. Setup my Google account on my Android device.
4. Sync my device with Google calendar.
Well, that sounds easy enough but if it were actually that easy, then I wouldn't have written this Hub and you wouldn't be here reading it.
For the interest of space, I'm going to assume that you know how to setup Google Calendar, import and export calendars, and sync them to your device. If there is enough demand, I can cover those topics in other Hubs.
Note: If converting from a Palm, they use a proprietary file called .dba for exporting and backing up the Palm calendar. Visit http://www.palm2csv.com/ to convert the .dba file to an iCal file.
The Problem
What happens frequently is that after importing a calendar into Google Calendar, only events from the last 12 months are displayed. Similarly, after syncing, the device will only show the past 12 months. On forums, some members have said that they only get the last 30 days. A 12 month calendar is less than ideal for me and a 30 day calendar isn't very useful to anybody so let's discuss what can be done to display your entire calendar on Google Calendar and on your device.
The problem may actually consist of two different problems.
1) Google Calendar may not show your entire calendar after importing your personal calendar.
2) Google Calendar shows your entire calendar, but only 12 months or less will sync to your Android device.
Each has a simple fix and I'll cover each them.
Fixing Google Calendar
If only the past 12 months or less of your calendar are displayed after you've imported your iCal or .csv file into Google Calendar, export the Google Calendar to a folder on your PC. Make sure you rename it or put it in a separate folder so that you don't get it confused with the original file that you imported. Copying the file elsewhere is also a good idea so that you have a backup.
Now that that's done, re-import the new file back into your Google Calendar. That's all there is to it! Chances are high that your Google Calendar will now show your entire calendar going back several years. My calendar goes back to 2005 and it all shows on Google Calendar.
At this point, open a calendar app on your device and sync it. If you're lucky, your entire calendar will be synced to your device. If so, awesome, you're good to go! You can now stop reading and get back to something fun and/or productive.
Please let me know.
Did the information in this article solve the problem you were having?
Syncing to Your Android Device
Well, you're still reading so it's safe for me to assume that your device is only displaying the past 12 months or maybe even just the last 30 days. Don't despair, the solution is easy, quick and reliable. The solution is also next to impossible to find anywhere else on the Internet.
Here's what you need to do. Export your Google Calendar again into a folder on your PC. To reiterate: Always make backups when doing things like this; copy the file you just exported to a separate folder so you have a spare just in case.
Google Calendar exports the file as a .zip file so you'll need to extract the files. To do this just right click on the file that you exported and select 'Extract All'. What you'll have after extracting is just one file which is called an iCal file. Right click on this file and select 'Open with' and then select Notepad or any other text editor that you prefer. What you will see is something like this:
BEGIN:VCALENDAR
PRODID:-//Google Inc//Google Calendar 70.9054//EN
VERSION:2.0
CALSCALE:GREGORIAN
METHOD:PUBLISH
X-WR-CALNAME:your email address
X-WR-TIMEZONE:America/Phoenix
BEGIN:VTIMEZONE
TZID:America/Phoenix
X-LIC-LOCATION:America/Phoenix
BEGIN:STANDARD
TZOFFSETFROM:-0700
TZOFFSETTO:-0700
TZNAME:MST
DTSTART:19700101T000000
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
DTSTART;VALUE=DATE:20050620
DTEND;VALUE=DATE:20050620
DTSTAMP:20050620T040151Z
UID:35279-1377867291-2464@palm2csv.com
CLASS:PUBLIC
CREATED:20050620T120000Z
DESCRIPTION:
LAST-MODIFIED:20130713T161646Z
LOCATION:
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:Call Sally
TRANSP:OPAQUE
X-MICROSOFT-CDO-ALLDAYEVENT:TRUE
X-MICROSOFT-MSNCALENDAR-ALLDAYEVENT:TRUE
BEGIN:VALARM
ACTION:AUDIO
Making Sense of the Text File
This represents just one event so your text file will be very long and the events are in no particular order. Let' say that the oldest event in your old calendar is June 20th, 2005. Your next mission is to find that event in this file. Dates are shown like this: June 20th, 2005 for example, is shown as 20050620. Unless you have an inordinate amount of time to kill, you should use Notepads 'Find' feature to find that event. In this example you'll search for 20050620. Now that you've found it, read down a few lines until you see a line that says 'Summary'. On that line is a description of that event. In this case, it's 'Summary: Call Sally'.
To force Google Calendar and your device to sync as far back as that event, you need to change that description. As an example let's change it to 'Call Sally Thomas.' By the way, don't use the quotation marks, I'm just using them to separate that information from the rest of the text in the article.
Now save the file that you just edited and import it back into Google Calendar. When the import is complete you'll see a dialog box showing the number of events that were imported. Make sure that your entire calendar displays in Google Calendar. Now open the calendar app on your device and sync it.
This process will import and sync your entire calendar. And...without any duplicates! You do not need to clear your calendar before doing this.
What if that didn't work?
In the event that this still doesn't work, you can try clearing the calendar storage, calendar cache, and calendar data from your device. First, turn your device to Airplane Mode. This prevents the calendars from re-syncing before you're ready. In Android 4.2.2, this is done under "Settings", "More", and "Application Manager". Scroll over to "ALL" and go down to each of your calendar apps and clear the cache and data. Do this also for calendar storage. Once you've done that, open a calendar app and sync.
My Favorite Calendar Apps
A calendar app that does not seem to have this problem is CalenGoo; it appears to use its own database and will sync your entire calendar as long as it displays in Google Calendar. My two favorite calendar apps are aCalendar+ and the aforementioned CalenGoo. If I only used CalenGoo, I wouldn't have come to write this Hub but because I use both, I really wanted to have both of them display my entire calendar. And now they do.
Other Solutions
Other solutions that I found on the Internet don't seem to be predictable. They'll work for one person and then not work for three other people. What I've described here seems to work most of the time.
I hope it works for you and I welcome comments from readers whether it worked for you or not. If you found another solution that was effective or a modification to this one that worked better, I'd love to hear about that too.
Disclaimer: Please backup your data before doing this. I'm not responsible for lost or altered data. If you're not comfortable with performing this process, please have a techie friend or relative help you.