Knowing that your app is still installed is valuable information. Standard analytics packages like Google Analytics and Mixpanel can easily provide feedback regarding app engagement like launches, features tapped, and time spent in an app session.
This behavior can then be tied to specific users or installations so that you can be reasonably sure that an app is still installed on a user’s handset.
One way to enhance this information is to track push notification delivery. For example, on attempted Apple Push notification (APN) delivery Apple provides feedback if a APN token is no longer valid. The token is initially generated when a user consents to the push notification service.
As stated in the documentation the failed delivery and timestamp can be then compared to app launch data to determine with relative certainty that an app has been uninstalled.
Conveniently most wrappers around APN delivery also have call back methods that expose error messages when invalid tokens are used (such as the example how here using JavaPNS).
The job then goes back to the server side where a simple comparison between launch data and token invalidation will let you know which users have decided to terminate your app.
Back tracing through a took like Mixpanel People can then even help to establish usage patterns that correspond to users that are likely to churn. Using machine learning to predict users likely to churn though is the subject of another post