Overview
This article explains how to configure Apple Push Notification certificates and set up your iOS app so Apptrove can detect uninstalled apps using push notifications. Follow these steps to generate the necessary certificates, configure your Apple Developer settings and Xcode project, and complete the integration with the Apptrove dashboard.
How Apptrove Uses Silent Push to Track iOS Uninstalls
Tracking when a user uninstalls an iOS app is tricky because Apple does not provide a direct uninstall event or API that tells developers “the app was uninstalled.” To work around this, Apptrove uses a technique called silent push uninstall tracking.
Here’s how it works:
Push Token Registration
When an app using Apptrove is installed and granted push notification permission, the app registers with Apple Push Notification Service (APNs) and obtains a device push token. This token uniquely identifies the app installation for push messaging.Sending Silent Push Notifications
Apptrove sends what are known as silent push notifications periodically to devices. These messages are invisible to the user — they carry no alert, sound, or badge, and are intended solely to check whether the device token is still valid.APNs Delivery Feedback
Apple’s APNs will attempt to deliver that silent push. If the app has been uninstalled, APNs will return an error indicating the device token is “unregistered” or no longer valid, because Apple deactivates tokens when the app tied to them has been removed from the device.Inferring Uninstall Events
Apptrove’s backend systems interpret these invalid or failed delivery responses as a strong signal that the user has uninstalled the app. This becomes an uninstall “event” in analytics and attribution reporting.Attribution and Analytics
Once an uninstall is flagged, Apptrove can attribute that uninstall to the original install source, advertising campaign, or user segment, helping product and growth teams understand retention and churn.
Important Note:
User must enable Push Notifications in Settings > [Your App] > Notifications so silent push can generate a valid token for uninstall tracking.
iOS uninstall events don’t show up instantly; they typically take 9 + days to appear in dashboards due to Apple Push Notification service reporting delays.
Prerequisites
iOS 10.0 or higher
Xcode 12.0 or later
Apple Developer Account
Apptrove Cordova SDK version 1.6.78+ installed
For detailed implementation steps and code snippets, see the official Apptrove iOS uninstall tracking documentation:
https://developers.apptrove.com/docs/cordova-sdk/advance-features/uninstall-tracking-apn/#step-13-send-token-to-trackier-sdk (help.apptrove.com)
1. Request Certificate in Keychain Access
Open Keychain Access on your macOS.
Go to Keychain Access > Certificate Assistant > Request a Certificate From a Certificate Authority
Enter your email and name, and save to disk.
2. Go to Apple Developer Portal – Identifiers
Visit the Apple Developer portal and sign in.
Navigate to Certificates, Identifiers & Profiles > Identifiers.
Select your app’s App ID.
3. Configure Push Notifications
Within your App ID settings, enable Push Notifications.
Confirm and proceed to create the push certificate.
4. Upload Certificate and Download .cer
Follow the on-screen process to upload the CSR file you created in Keychain.
Apple will generate a push certificate and download the .cer file.
5. Go to Keychain and Export as .p12
Double-click the downloaded .cer to add it to Keychain.
Find the certificate under My Certificates.
Right-click and choose Export.
Save as a .p12 file with a secure password.
6. Upload .p12 to Apptrove Panel
Log in to your Apptrove dashboard.
Navigate to the iOS Push Certificate section.
Upload your .p12 file.
Enter the Bundle ID and password you set during export.
7. Configure in Xcode
Open your iOS project in Xcode.
Select your app target → Signing & Capabilities.
Add the Push Notifications and Background Modes capability and check Remote Notifications.
8. Install Dependencies
Install the required Apptrove iOS SDK dependencies into your project using the dependency manager of your choice (CocoaPods, Swift Package Manager, etc.).
9. Add User Permission in Info.plist
Add the necessary push notification permission keys in the Info.plist file so that the app can request and receive push notifications.
10. Configure App.entitlements
Ensure that your app’s entitlements file includes the appropriate aps-environment setting for the environment you are targeting (development or production).
11. Configure AppDelegate.swift
Update your AppDelegate.swift file to register for remote notifications and request user permission for push notifications.
12. Send Token to Trackier SDK
Implement the necessary delegate methods to capture the device push token and forward it to the Apptrove SDK for uninstall tracking.
13. Check Logs
After completing the setup:
• Run your app on a physical iOS device, Simulator does not support APNs.
• Confirm that the device token is generated and sent.
• Review logs for successful registration and communication.
Points to remember:
Make sure your APNs certificate matches the correct environment (development or production).
Ensure you requested user permission for notifications; silent notifications are critical for uninstall tracking.
Confirm Xcode’s push capabilities and entitlements are properly configured.
We are delighted to have assembled a world-class team of experienced professionals who are ready to take care of your queries and answer any questions you may have.
Feel free to reach out to us at any time by emailing us at support@apptrove.com or by using the in-platform chat feature. We'd love to hear from you!









