I want to use the device's SD Card for storing my application files, images, cache files etc on the device and use them in my application. I know that I can save them on the internal memory by using Context.getFilesDir() / Context.openFileOutput methods but I do not want my application to use internal memory for saving this data.

So is there any way I can create/save all my application specific files in a directory on the SD Card, but still be able to let the system know that these files have to be deleted when the application is uninstalled?

Or what are the recommendations in this case.

EDIT: I want to support 2.1 also. 

Thank you.