Android and iOS support
On this page
Prysm supports Android and iOS platforms.
However, there are known issues on mobile platforms, described in the KnownIssues section.
In order to build UE Projects with Prysm for Android and iOS platforms, you have to follow the standard UE mobile workflow for the chosen platform and engine version.
Android
Building for Android requires Android SDK, NDK and JDK that are installed using Android Studio and UE scripts.
You can follow the UE provided tutorials for setting up the required software for this platform:
iOS
Building for iOS requires Mac with up to date XCode and iTunes.
For more information on the SDK requirements, please visit the UE4.27 and UE5 release notes.
You can follow the UE provided tutorials for setting up the required software for this platform:
If you are trying to build iOS from Windows and you are hitting RSync issues with SSH keys or missing SSH.exe, you should check the links below:
- https://answers.unrealengine.com/questions/715773/chmodding-remotetoolchainprivatekey-for-iOS-remote.html
- https://answers.unrealengine.com/questions/774988/remote-build-on-mac-fails-with-ssh-not-found-by-rs.html
Ansi Allocator for mobile platforms
On Android and iOS, V8 is statically linked into the game, which means it may allocate memory using its own internal allocators, but deallocate it through FMalloc
. If allocation and deallocation don’t use the same allocator, this can cause heap corruptions. To prevent this, we use the Ansi Allocator.
In Unreal Engine 5.5 or earlier, you need to add GlobalDefinitions.Add("FORCE_ANSI_ALLOCATOR=1");
to your project’s Target.cs
file. Additionally, this requires using a source engine as it can’t be applied to the precompiled binary engine.
Starting with Unreal Engine 5.6, you can enable the Ansi Allocator by setting StaticAllocator = StaticAllocatorType.Ansi;
in your project’s Target.cs
file. This works with both source and binary engines.