
As the user keeps on using your app, the heap memory also keeps on increasing and if there are memory leaks in your app then the unused memory from the heap cannot be freed up by the GC. So the heap memory of your app will constantly increase until it reaches a point of death where no more memory can be allocated to your app thereby leading to the dreaded OutOfMemoryError and ultimately crashing your app.
Every object has got its own lifetime after which it needs to say goodbye and leave the memory. But if some other object(s) is holding onto this object (directly or indirectly), then the garbage collector will not be able to collect it. And this, precisely my friend, is a memory leak.