I'm developing an Android service. When the service is stopped, `onDestroy` is called as expected. However, when I uninstall the app while the service is running, `onDestroy` is not called, leaving the app no chance to clean-up itself.

Is this normal? How can I perform shutdown/cleanup logic for the service when the app is uninstalled?