According to Apple's documentation, isRegisteredForRemoteNotifications returns NO if registration failed, failed, or was rejected by the user. YES will be returned if the application registered for remote notifications and received a device token. Therefore, in response to your question NO, it will not always return NO , it will also return YES if your application has registered for remote notifications and it received its device token.
Check out the Apple documentation for a better description.
Return value
YES , if the application is registered for remote notifications and received its device token or NO , if registration was not completed, failed or was rejected by the user.
Discussion
This method only reflects the successful completion of the remote registration process, which begins when you call the registerForRemoteNotifications method. This method does not reflect whether remote notifications are really available due to connection issues. The value returned by this method takes into account user preferences for receiving remote notifications.
source share