I love this UI pattern on iOS. I think it is extremely “natural”: most recent items are usually on top of the list so it’s natural to scroll further to the top to access to the most recent items. It totally fits iOS platform philosophy. When it comes to Android, lots of developers and companies have a tendency to reproduce this pattern on the Android version of their application. I consider it a huge mistake and here is my point of view
Pull-to-refresh is less intuitive for Android users has to blame the segmented behavior appearing on different OS/manufacturers devices, not the action itself.
Scrolling to top before able to trigger for new contents totally make sense when you are on a timeline-based representation of information. The frustrations on Android which doesn’t have a quick way to scroll back to the top adds on to making the Pull-to-refresh mechanism less shiny on Android.
So before implementing this to your apps, be careful not to abuse it. Think about the scenario - The content you need to display to users should be a linear form of information, likely a “timeline”, your user will be done with old info at the bottom, and new ones will be coming from the top.
If that’s your case, Pull-to-refresh would likely be a natural and straightforward choice for you.