Jorge is right, but there is one other problem - even when the properties are stored on the device in local storage, the amount of time to complete the data fetch is sometimes greater than the amount of time it takes to render the pushwoosh client block on the screen. So you end up with a race condition that causes the pushwoosh client block to render incorrectly sometimes. The way to get around this is to surround the block in an "if" and defer rendering until the data is fetched:
This was causing more problems than seemed reasonable. Happy to say this fixed everything, and we do not appear to have any issues with devices receiving notifications in the few milliseconds it takes to retrieve this data. Performance also increases if you do it this way since you can now asynchronously load those properties from local storage and do not need to block rendering of anything visible in the app while you wait.
Hope this helps someone!