For some situations, the default configurations in the proguard.cfg file will suffice. However, many situations are hard for ProGuard to analyze correctly and it might remove code that it thinks is not used, but your application actually needs. Some examples include:
a class that is referenced only in the AndroidManifest.xml file
Posted from Diigo. The rest of my favorite links are here.