If you’re building almost any kind of Delphi Firemonkey app for IOS or Android with XE5 this is a must see example as it will really help your app have a polished feel. Andrea Magni has a blog post which explains how to create a multithreaded progress dialog. Any time you do a lengthy operation in a mobile app you will want to show a progress dialog like this so that the user has some feed back that the app is not frozen. The example operation he uses is a HTTP GET request which is perfect because a lot of apps will probably be making HTTP requests at some point. The example creates an anonymous thread, handles any exceptions, and uses Synchronize to synchronize the progress updates with the main thread. One thing you need to be careful of is that you don’t create and free the form over and over. You should re-use the same progress form repeatedly because Delphi XE5 has a problem if you create too many forms (at least on IOS) that will cause your app to close. The blog post is in Italian but the link will auto translate using Google Translate.
Head over and read the full post on how to create a multithreaded progress dialog for mobile.
I have found issues with certain code going into these Thread’s; and found more success with Yaroslav’s dialog’s
TfgProgressDialog and TfgActivityDialog