The FORCE_ANSI_STRING compiler directive can ONLY be used on Win32 and Win64 Projects and should ONLY be used if your code does NOT correctly handle the new String type, which is mapped to UnicodeString since Delphi 2009. On mobile platforms, when using the NEXT GEN compiler (Delphi XE4 and later), there is no AnsiString type. This is why you get these compile errors when trying to compile your iOS Project with XE6 after declaring FORCE_ANSI_STRING. To fix these compile errors, remove the FORCE_ANSI_STRING compiler directive declaration from your Project Options.
Your problem with unhandled requests is probably a result of your iOS App running on a mobile device and using a mobile internet connection provider, which is sending HTTP requests to the Server as if the Server was a HTTP Proxy, adding "http://" and the domain name in front of each request, which the Server is NOT expecting, so the requests remain unhandled.
Please, read
this Quick Start topic for more info about fixing that problem.
You will need to update your Server Project to use a newer RTC SDK version, though, because the
FixupRequest.RemovePrefix property was added in RTC SDK 3.12, so you won't find it if you are still using RTC SDK 2.70. Unless you are still using Delphi 6 or older for the Server Project, there should be no problems updating your Server Project to compile with the latest RTC SDK version. You can use the FORCE_ANSI_STRING compiler directive there, if you want to make sure the Server Project will continue using the AnsiString type on Windows platforms instead of the new Unicode String type. Just don't try using FORCE_ANSI_STRING on Projects which you want to compile for mobile platforms, because this can not work.
Best Regards,
Danijel Tkalcec