Garbage collection

The common problems I have found for android is memory exception. Being a mobile application developer we have to be more conscious about memory usage for running apps. Is the Garbage collection based on Activity life cycle?

I don't think Garbage collection is tied with Activity life cycle in particular. The collector itself(or its optimizing engine) is expected to determine the best time to perform a collection. It is based on the allocation being made; eventually GC will run.
For example, before getting an OutOfMemoryError, collection is guaranteed to have been performed once.

Instead of focusing on the times when the collection is done, try to keep Memory leaks in check and avoid creating objects where ever possible.