for a project we need to add some functionality to CyanogenMod's calendar app.
Unfortunately, we did not manage to build the app from the source on GitHub at all. It looks like the app was designed using Eclipse. As we're more familiar with Android-Studio and Gradle, maybe we're just not used to the project files which Eclipse uses for Android applications. Here are the steps which we tried:
- Downloaded chips and some more frameworks from
https://android.googlesource.com/platform/frameworks/ex/ https://android.googlesource.com/platform/frameworks/opt/calendar https://android.googlesource.com/platform/frameworks/opt/timezonepicker https://android.googlesource.com/platform/frameworks/opt/datetimepicker/ https://android.googlesource.com/platform/frameworks/opt/colorpicker/
and changed the paths in Android.mk, mkprojectfile and project.properties to point at the frameworks' location.
- Eclipse explained about missing color resources. So we added the missing properties to colors.xml in res/values.
<color name="white">#ffffff</color> <color name="done_text_color_disabled">#111111</color> <color name="done_text_color">#000000</color> <color name="list_item_font_primary">#000000</color> <color name="list_item_font_secondary">#000000</color>
- Now there are only 1167 errors left. The first are saying
AccountSpecifier cannot be resolved as a type. Cannot cast from Fragment to CalendarColorPickerDialog EventRecurrence cannot be resolved as a type.
For us, it looks like dependencies are still missing. But where do we find out which are really missing and where to get them? In a gradle project, you usually have a standard directory structure and the dependencies all listed in the build.gradle file. That's what we really miss here.
Would be great if anyone has worked on the CyanogenMod calendar app could help and tell us how to compile the source.
In order for Eclipse to recognize all of those dependencies, you need to import the whole of the Android source code to Eclipse. Google has good documentation on doing so here.
After you finish modifying the app, you can build the calendar app specifically by entering the command:
Cheers!