Do not block the main thread!
Long requests to external systems such as storage, databases, hardware, and networks have always been difficult to handle from a user experience point of view. For the programmers, it is simple to run the long request and, when finished (after seconds, minutes, or hours), inform the user that their data is there. However, we should care about user experience even more in the mobile world.
Getting ready
If your app runs a long-running request and the UI is frozen, the user might think that something is going wrong and start to tap here and there to try to unblock the app. After some seconds, either the operating system itself will close the app, or the user will push the Home button to close your app and then, usually, uninstall it. Yes, user experience is one of the most important things on mobile. Consider that, like a desktop, the user experience should be of primary importance, but what I want to emphasize is that while on desktop you may have patient users...