Version: 2017.4
Single-Pass Stereo Rendering for Android
Android 2D Textures Overrides

Android Player Settings

This page details the Player Settings specific to Android. For a description of the general Player Settings, see documentation on PlayerSettings.

Resolution And Presentation

The Resolution and Presentation section of the Android PlayerSettings window
The Resolution and Presentation section of the Android PlayerSettings window
Свойство: Функция:
Resolution and Presentation
Preserve framebuffer alpha Make Unity render to a surface with transparency so that you can use an overlay view in your app. When checked, the alpha channel of the framebuffer will not be forced to 1 (fully opaque).
Resolution Scaling
Resolution Scaling Mode Set the scaling to be equal to or below the native screen resolution:
FixedDPI allows you to scale the device’s screen resolution below its native resolution and show the Target DPI property. Use this to optimize performance and battery life or target a specific DPI setting.
Disabled ensures that scaling is not applied and the game renders to its native screen resolution.
Target DPI Set the target DPI of the game screen. The game screen is downscaled to match this setting if the device’s native screen DPI is higher than this value. This option only appears when the Resolution Scaling Mode is set to Fixed DPI.
Blit Type The blitting technique that Unity uses when rendering to the screen:
Always makes Unity use the most compatible bit blitting technique for your app.
Never makes Unity use the fastest bit blitting technique for your app.
Auto lets Unity choose which technique to use for your app.
Идентификация
Default Orientation Set the application’s screen orientation.
    Portrait Orient the screen so that the device’s Home button is at the bottom.
    Portrait Upside Down Orient the screen so that the device’s Home button is at the top.
    Landscape Left Orient the screen so that the device’s Home button is on the right-hand side.
    Landscape right Orient the screen so that the device’s Home button is on the left-hand side.
Allowed Orientations for Auto Rotation
(Only visible when Default Orientation is set to Auto Rotation)
Portrait Allow portrait orientation.
Portrait Upside Down Allow portrait upside-down orientation.
Landscape Right Allow landscape right orientation (home button is on the left side).
Landscape Left Allow landscape left orientation (home button is on the right side).
Other
Use 32-bit Display Buffer Specifies if the Display Buffer should be created to hold 32-bit color values (16-bit by default). Use it if you see banding, or need alpha in your post-processed effects, because they create Render Textures in the same format as the Display Buffer.
Disable Depth and Stencil Tick this checkbox to disable the depth and stencil buffers.
Show Loading Indicator The type of loading progress indicator that should be shown. Options are Don’t Show, Large, Inversed Large, Small and Inversed Small.

Icon

The Icon section of the Android PlayerSettings window
The Icon section of the Android PlayerSettings window
Свойство: Функция:
Override for Android Check to override the default icon with a custom one for Android. Drag the various sizes of icon images into the appropriate squares.
Enable Android Banner Enables a custom banner for Android TV builds.

Splash Image

Свойство: Функция:
Virtual Reality Splash Screen Specify the texture that should be used for the Android splash screen on a Virtual Reality application.
Android Splash Screen Specify the texture that should be used for the Android splash screen. The standard size for the splash screen image is 320x480.
Splash Scaling Specify how the splash image is scaled to fit the device’s screen. The options are Center (only scale down), Scale to Fit (letter-boxed) and Scale to Fill (cropped).

See also Unity Splash Screen settings.

Other Settings

Рендеринг

The Rendering section of the Android PlayerSettings window
The Rendering section of the Android PlayerSettings window
Свойство: Функция:
Color Space The Color Space used for your application. See Linear Lighting for more information.
Auto Graphics API Check this to make Unity auto-select a graphics API from the Open Graphics Library (OpenGL). When checked, Unity will try GLES3.1, and fall back to GLES3 or GLES2 if the device does not support GLES3.1. When unchecked, you can manually pick and reorder the graphics APIs. If only GLES3 is in the list, two additional checkboxes; Require ES3.1 and Require ES3.1+AEP appear, allowing you to force the corresponding graphics API.

Important: GLES3/GLES3.1/AEP requirement is added to your Android manifest only if GLES2 is not in the list, and Minimum API Level is set to JellyBean (API level 18) or higher. In this case only, your application won’t show up on unsupported devices in Google Play Store.
Multithreaded Rendering Check this box to move graphics API calls from Unity’s main thread to a separate worker thread. This can help to improve performance in applications that have high CPU usage on the main thread.
Строка состояния Check this box to use Static batching on your build (enabled by default).
Dynamic Batching Check this box to use Dynamic Batching on your build (enabled by default).
GPU Skinning Check this box to enable OpenGL ES 3 GPU skinning. To learn more about GPU skinning, see the Wikipedia page on skeletal animation.

Note that this property only supports VR apps, and only works if the Virtual Reality Supported checkbox is ticked.
Graphics Jobs (Experimental) Check this box to instruct Unity to offload graphics tasks (render loops) to worker threads running on other CPU cores. This is intended to reduce the time spent in camera.render on the main thread. This feature is experimental. it may not deliver a performance improvement for your project, and may cause instabilities.

Graphics Jobs are currently only supported when using Vulkan and the checkbox has no effect when using OpenGL ES.
Protect Graphics Memory Check this box to force the graphics buffer to be displayed only through a hardware-protected path. Works only on devices which support it.

Identification

The Identification section of the Android PlayerSettings window
The Identification section of the Android PlayerSettings window
Свойство: Функция:
Package Name The unique application ID, used to uniquely identify your app on the device and in Google Play Store. (Shared between iOS and Android.)
Version Specifies the build version number of the bundle, which identifies an iteration (released or unreleased) of the bundle. The version is specified in the common format of a string containing numbers separated by dots (eg, 4.3.2). (Shared between iOS and Android.)
Bundle Version Code An internal version number. This number is used only to determine whether one version is more recent than another, with higher numbers indicating more recent versions. This is not the version number shown to users; that number is set by the versionName attribute. The value must be set as an integer, such as “100”. You can define it however you want, as long as each successive version has a higher number.

For example, it could be a build number. Or you could translate a version number in “x.y” format to an integer by encoding the “x” and “y” separately in the lower and upper 16 bits. Or you could simply increase the number by one each time a new version is released.
Minimum API Level Minimum Android version (API level) required to run the application.
Target API Level Target Android version (API level) on which to run the application.

Конфигурация

The Configuration section of the Android PlayerSettings window
The Configuration section of the Android PlayerSettings window
Свойство: Функция:
Scripting Backend Select your scripting backend. There are two options: IL2CPP or Mono2x. The default is Mono2x.
        IL2CPP Choose this to set ILC2PP as your scripting backend. See Unity documentation on IL2CPP for more information.
        Mono2x Choose this to set Mono2x as your scripting backend. This is the default option. See Mono’s documentation for more information.
API Compatibility Level Specifies active .NET API profile. See below.

.Net 2.0:NET 2.0 libraries. Maximum .NET compatibility, biggest file sizes

.Net 2.0 Subset: Subset of full .NET compatibility, smaller file sizes
Mute Other Audio Sources) Stops or allows audio from other applications to play in the background while your Unity application is running. Enable this and your Unity application stops audio from background applications, disable this and audio from background applications continue to play alongside your Unity application.
Disable HW Statistics By default, Unity Android applications send anonymous HW statistics to Unity. This provides you with aggregated information to help you make decisions as a developer. Find these statistics at http://stats.unity3d.com/. Check this option to stop Unity sending these statistics.
Device Filter Allows the application to run on specified CPUs.
Install Location Specifies application install location on the device (for detailed information, refer to Android Developer documentation on install locations.
        Automatic Let the operating system decide. User will be able to move the app back and forth.
        Prefer External Install the application to external storage (SD card) if possible. The operating system does not guarantee it; if not possible, the app will be installed to internal memory.
        Force Internal Force the application to be installed to internal memory. The user will be unable to move the app to external storage.
Internet Access When set to Require, this adds the networking (INTERNET) permission to the Android manifest, even if you are not using any networking APIs. This is enabled by default for development builds.
Write Access When set to External(SDCard) , enables write access to the external storage such as the SD card and add a corresponding permission to the Android manifest. Enabled by default for development builds.
Sustained Performance Mode Set a predictable and consistent level of device performance over longer periods of time, without thermal throttling. Overall, performance might be lower when this setting is enabled. Based on the Android Sustained Performance API.
Android TV Compatibility Check this box to mark the application as Android TV compatible.
Android Game Android TV - Check this box to mark the output package (APK) will as a game rather than a regular application.
Android Gamepad Support Level Android TV - This option allows you to define the level of support your application offers for a gamepad. The options are Works with D-Pad, Supports Gamepad and Requires Gamepad.
Scripting Define Symbols Пользовательские флаги компиляции (обратитесь к странице [платформо-зависимая компиляция] для более подробной информации).

Optimization

The Optimization section of the Android PlayerSettings window
The Optimization section of the Android PlayerSettings window
Property: Function:
Prebake Collision Meshes Check this box to add collision data to meshes at build time.
Keep Loaded Shaders Alive Check this box to prevent shaders from being unloaded.
Preloaded Assets An array of assets to be loaded when the application starts up.
Stripping Level Options to strip out scripting features to reduce the output package (APK) size (This setting is shared between iOS and Android platforms, and is available with the Mono scripting backend only.)
Disabled No reduction is done.
Strip Assemblies Level 1 size reduction.
Strip ByteCode (iOS only) Level 2 size reduction (includes reductions from Level 1).
Use micro mscorlib Level 3 size reduction (includes reductions from Levels 1 and 2).
Strip Engine Code Enable code stripping. (This setting is only available with the IL2CPP scripting backend.)
Enable Internal profiler Check this box if you want to get the profiler data from your device in the Android SDK’s adblogcat output while testing your projects (only available in development builds).
Vertex Compression Select which vertex channels should be compressed. Compression can save memory and bandwidth but precision will be lower.
Optimize Mesh Data Remove any data from meshes that is not required by the material applied to them (tangents, normals, colors, UV).
Logging Enable different logging types (see the StackTraceLogType page for details).

API Compatibility Level

You can choose your Mono API compatibility level for all targets. Sometimes a 3rd party .NET DLL uses the APIs that are not included into the .NET compatibility level you would like to use. In order to investigate such cases, get a reflection tool like ILSpy on Windows, and check the dependencies of the DLLs.

Publishing Settings

Свойство: Функция:
Keystore
Use Existing Keystore / Create New Keystore Use this to choose whether to create a new Keystore or use an existing one. You can use the Browse Keystore button to select a Keystore from the filesystem.
Keystore password Create a password for the Keystore.
Confirm password Enter the same password you did in Keystore password (only enabled if the Create New Keystore option is selected).
Key
Alias Key alias.
Password Password for key alias.
Split Application Binary Enable this option to split your output package into main (APK) and expansion (OBB) packages. This is required to publish applications larger than 100 MBytes to Goolge Play Store.

Note that for security reasons, Unity does not save the Keystore password or the Key password. The unsigned debug keystore is located by default at ~/.android/debug.keystore on MacOS and %USERPROFILE%\.android\debug.keystore on Windows.

XR settings

Свойство: Функция:
XR Settings
Virtual Reality Supported Enable this if you’re making a virtual reality application, then add the required VR SDKs to the list.
ARCore Supported Enable use of the ARCore.
XR Support Installers
Vuforia Augmented Reality Download and set up Vuforia Augmented Reality Support for Unity. For advice on making a Vuforia application with Unity, see Vuforia. To use Vuforia Augmented Reality Support for Unity, you must have a Vuforia software license and agree to the terms of that license.

Детали

Идентификатор бандлов

The Bundle Identifier string is the unique name of your application when published to Google Play Store and installed on the device. The basic structure of the identifier is com.CompanyName.GameName, and can be chosen arbitrarily. In Unity this field is shared with the iOS Player Settings for convenience.

Stripping Level

Most games don’t use all the functionality of the DLLs included by default. With this option, you can strip out unused parts to reduce the size of the output package (APK).


  • 2018–05–18 Page published with limited editorial review

  • Updated features in 5.5

  • Sustained Performance Mode added in 2017.3

  • Updated settings in 2017.4

Single-Pass Stereo Rendering for Android
Android 2D Textures Overrides