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.
FMXExpress.com has over 700 tips and tricks for building cross platform apps on Android, IOS, OSX, Windows, and Linux with a single codebase and single UI using the FireMonkey framework found in Delphi and C++Builder.
FMXExpress covers top cross platform secrets for FireMonkey in C++Builder and Delphi XE5, XE6, XE7, XE8, Seattle, Berlin, Tokyo, Rio, and Sydney.