Update:
Upon further testing, when testing with the release build, after I uninstall, and reinstall the app, the device token gets invalidated. If I don't reinstall, it still says token is still valid until I get notification from other service. When testing with the debug/dev APNs, the token is always showing valid regardless if you reinstall.
Can someone from Apple confirm if you uninstall app, the token won't be invalidated until you receive push notification from other app? My understanding from the technical note is if I have at least one other push-enabled app on my device, we'll get the notice of the deletion (device unregistered) ? It doesn't say if it needs to wait until it gets notification from other app.
Apple Technical note:
If you remove your app from your device or computer and then send a push notification to it, you would expect to have the device token rejected, and the invalidated device token should appear on the feedback service. However, if this was the last push-enabled app on the device or computer, it will not show up in the feedback service. This is because deleting the last app tears down the persistent connection to the push service before the notice of the deletion can be sent.
You can work around this by leaving at least one push-enabled app on the device or computer in order to keep the persistent connection up. To keep the persistent connection to the production environment up, just install any free push-enabled app from the App Store and you should then be able to delete your app and see it appear in the feedback service.
Recall that each push environment has its own persistent connection. So to keep the persistent connection to the sandbox environment up, install another development push-enabled app
https://developer.apple.com/library/content/technotes/tn2265/_index.html#//apple_ref/doc/uid/DTS40010376-CH1-TNTAG34