You can deploy apps to the Windows, macOS, Android, and iOS platforms from Unreal Engine with ArcGIS location services. No matter what type of application you build, there are guidelines and Terms of Use you need to review before you deploy.
Distributing applications
Applications may be deployed using a variety of installer technologies, such as executable file (.exe), or to the Google Play store, Apple App Store, Microsoft Store, or ArcGIS Marketplace.
To build and deploy an application developed with ArcGIS Maps SDK for Unreal Engine, you should:
-
Have an ArcGIS account.
-
Follow the General guidelines.
-
Attribute Esri in your app.
-
Use a valid access token to access ArcGIS location services.
Attribute Esri in your app
When you use Esri technology, you must include Esri attribution and data attribution. This includes applications that use any ArcGIS API, SDK, service, content, or data. Attribution is required for all applications that contain a map or do not contain a map. These requirements are outlined in detail in the Attribution topic.
General deployment settings
For packaging an application, visit Packaging and Cooking Games in the Unreal Engine documentation.
Deep linking for OAuth
If your OAuth challenge handler is based on deep linking, make sure you set up your Unreal Engine project to enable it. To do so, the manifest should be modified using Unreal Plugin Language (UPL), such as the Android APK AndroidManfiest.xml file or the iOS IPA plist file.
This is an example of the Android manifest:
<androidManifestUpdates>
<loopElements tag="activity">
<setStringFromAttribute result="activityName" tag="$" name="android:name" />
<setBoolIsEqual result="bGameActivity" arg1="$S(activityName)" arg2="com.epicgames.unreal.GameActivity" />
<if condition="bGameActivity">
<true>
<addElements tag="$">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="unreal" android:host="auth" />
</intent-filter>
</addElements>
</true>
</if>
</loopElements>
</androidManifestUpdates>
When you modify the manifest with UPL, be sure to include this file by using the following line of code along with using System.
in the Build.cs
file of your project like the following example:
AdditionalPropertiesForReceipt.Add("AndroidPlugin", Path.Combine(ModuleDirectory, "Android_UPL.xml"));
Platform specific requirements
Mobile
To deploy an app to a mobile device, you can find more information on the Unreal Engine Mobile Game Development page.
Android
For documentation specific to the Android platform, refer to the Android Game Development page.
iOS
For documentation specific to the iOS platform, refer to the iOS Game Development page.
Apple privacy manifest
Starting May 1, 2025, Apple is introducing a privacy policy for including privacy manifest files in new and updated applications targeted for iOS, iPadOS, and tvOS platforms on the App Store. Note that macOS apps are currently excluded from this policy.
Importantly, third-party SDKs used in the app (such as ArcGIS Maps SDK for Unreal Engine) must also provide a privacy manifest. Starting with version 1.5.0, these privacy manifest files are located in the following location:
Plugins/ArcGISMapsSDK/Source/ThirdParty/ArcGISMapsSDK/Mac/
and
Plugins/ArcGISMapsSDK/Source/ThirdParty/ArcGISMapsSDK/IOS/
There are additional required steps you must take to add the privacy manifest to your application, as it will not be picked up automatically.
Launch your Unreal Engine project with Xcode in Xcode 15 or later. Once the project is opened in Xcode, drag and drop the respective Privacy
into the project, as shown below:
Then, take the default options, as shown below:
At this point, you can continue with the typical App Store submission process.
Desktop
Windows
For information about packaging applications, see the Windows content on the Packaging Projects page in the Unreal Engine documentation.
Deploying applications built with ArcGIS Maps SDK for Unreal Engine requires installation of Microsoft Visual C++ 2015-2022 Redistributable.
macOS
For information about packaging applications, see the macOS content on the Packaging Projects page in the Unreal Engine documentation.
Linux
For information about packaging applications, visit Packaging Projects.