I am building an app that is heavily relies on APN. Upon the very first start of my app, iOS asks if this app is allowed to use APN (as a result of registerForRemoteNo
From iOS 13 and above you need to do the whole changing-date-reset thing, as pointed out by Eran.
From iOS 12 and below, uninstalling the app is enough. This also works on simulator, you wont get token though since simulator does not support push notifications.