unity зачем нужен split application binary

Support for APK expansion files (OBB)

APK expansion files are used as a solution for the 100MB app size limit in the Google Play Store. If your app is larger than 100MB (which is quite likely for a big game), you have to split your output package into the main part (APK) and the expansion file (OBB). Refer to the Android Developer documentation on expansion files for more information.

Unity automatically splits the output package into APK and OBB. This is not the only way to split the app package (other options include third-party plug-ins and AssetBundles), but it is the only automatic splitting mechanism officially supported by Unity.

Note: Unity only creates the main expansion file. If you want to manually create the patch expansion file, you must include a file named with your build-id; otherwise, the patch expansion file won’t load. The file can be empty, but you must place it in the Assets directory inside the patch expansion file. This file’s name must match the unity.build-id metadata, which Unity automatically adds to the manifest when you build the APK. Alternatively, you can copy this file from the main expansion file into the patch expansion file.

Building the app with expansion files

unity зачем нужен split application binaryThe Publishing Settings panel of the Player settings, with the Split Application Binary checkbox highlighted

Both parts of the output package (APK and OBB) are copied to the output directory you specify when building the app. For example, if the APK has the name mygame.apk, the OBB is in the same directory under the name mygame.main.obb.

If you select Build and Run, the APK and OBB files are installed on your device by Unity. If you select Build The process of compiling your project into a format that is ready to run on a specific platform or platforms. More info
See in Glossary and want to install the app manually using the ADB An Android Debug Bridge (ADB). You can use an ADB to deploy an Android package (APK) manually after building. More info
See in Glossary utility, you must first install the APK and then copy the OBB into the correct location on your device. The OBB file name must correspond the format required by Google. Refer to the expansion files section of the Android Developer documentation for more information.

How data is split between the APK and OBB

When the Split Application Binary option is enabled, the app is split the following way:

If your APK is still too large for publishing in the Google Play Store (more than 100MB), try reducing the size of your first Scene, making it as small as possible.

Downloading the OBB expansion file

The Unity Asset Store offers a plug-in that allows you to access an adapted version of the Google Play market_downloader library for Unity, which you can use to download the OBB from Google Play Store, or an external source, and move it into the correct directory.

Hosting OBB files on the Google Play Store

OBB expansion files should be published to the Google Play Store along with your APK. Any OBB files published with your APK will be automatically downloaded when a user installs your app from the Google Play Store.

You should include code in your app that downloads missing OBB files in the case of a Google Play Store error, or if a user removes the OBB files from their device. For more information about downloading OBB files, refer to the APK Expansion file section of the Android Developer documentation.

Hosting OBB files without using the Google Play Store

You can also host OBB files yourself if you do not want to use the Google Play Store. However, hosting OBB files without using the Google Play Store is only recommended for advanced users.

Источник

Building apps for Android

There are two locations to configure settings that affect how your app is built:

The output package includes an APK, and an APK expansion file (OBB) if the Split Application Binary option is selected in the Player settings. For more information on OBB files, see OBB Support.

To optimize for download and installation size, enable the Split APKs by target architecture option in the Player settings. The Split APKs by target architecture option produces one set of APKs and OBBs for each device architecture selected in the Target Architecture list in the Player settings. You can upload this set of APKs (and OBBs, if enabled) to the Google Play, or other, store instead of a FAT APK in which all of the selected architectures are included into a single APK. For more information on this feature, see Multiple APK support on the Android Developer website.

Configuring Build Settings

To configure and build apps for Android, access the Build Settings window (File > Build Settings). In Platform, select Android.

To set Android as your default build platform, click the Switch Platform button.

After you specify your build settings, click the Build button to create your build. To build the app, click Build And Run to create and run your build on the platform you have specified.

Texture compression

Unity uses the Ericsson Texture Compression (ETC) format for textures that don’t have individual texture format overrides. When building an APK to target specific hardware, use the Texture Compression option to override this default behavior. Texture Compression is a global setting for the Project. If a texture has a specific override on it, that texture is not affected by the Texture Compression setting. For additional information, see Textures.

For additional information on textures and texture compression, see the Mobile and WebGL specific formats and Notes on Android sections on the Texture compression formats for platform-specific overrides page.

Note: Texture Compression is a global setting. Individual textures override the global setting.

ETC2 fallback

For Android devices that don’t support ETC2 (which don’t support GL ES3), you can override the default ETC2 texture decompression by choosing from 32-bit, 16-bit, or 32-bit with half the resolution formats.

This option allows you to choose between the uncompressed image quality and the amount of memory the uncompressed texture occupies. 32-bit RGBA texture is the highest quality format, and takes twice the required disk space as the 16-bit format, but a texture in 16-bit might lose some valuable color information. 32-bit half-resolution reduces the memory requirement further, but the texture is likely to become blurry.

Build system

Unity supports two Android build systems: Gradle and Internal.

The steps involved with building for Android are:

Preparing and building the Unity Assets.

Processing the plug-ins.

Splitting the resources into the parts that go to the APK and the OBB, if Split Application Binary is selected.

Building the Android resources using the AAPT utility (internal build only.)

Generating the Android manifest.

Merging the library manifests into the Android manifest (internal build only.)

Compiling the Java code into the Dalvik Executable format (DEX) (internal build only.)

Building the IL2CPP library, if IL2CPP Scripting Backend is selected.

Building and optimizing the APK and OBB packages.

Gradle build system

The Gradle build system uses Gradle to build an APK or export a Project in Gradle format, which can then be imported to Android Studio. When you select this build system, Unity goes through the same steps as the Internal build system excluding resource compilation with AAPT, merging manifests, and running DEX. Unity then generates the build.gradle file (along with the other required configuration files) and invokes the Gradle executable, passing it the task name and the working directory. Finally, the APK is built by Gradle.

Internal build system

The Internal build system creates an APK using the Android SDK utilities to build and optimize the APK and OBB packages. For more information about OBB files, see OBB Support.

Exporting the Project

If you need more control over the build pipeline, or to make changes that Unity does not normally allow (for example, fine tuning the manifest files that are automatically generated by Unity), you can export your Project and import it into Android Studio. Exporting a Project is only available when you have selected Gradle as your Build System.

To export the Project:

When the export finishes, open Android Studio and import your project. For more information on importing projects to Android Studio, see the Migrate to Android Studio section of the Android Developer documentation.

Build or Build and Run

The Build Settings window offers two options: Build and Build and Run. Using either option saves the output packages (APK and OBB, if enabled) to the path that you select. You can publish these packages to the Google Play Store, or install them on your device manually with the help of Android Debug Bridge (ADB). For further information about installing apps manually, see the Run your app section of the Android Developer documentation. For information on ADB commands, see the Android Debug Bridge section of the Android Developer documentation.

Selecting Build and Run saves the output packages to the file path you specify, while also installing your app on the Android device connected to your computer.

If the Split Application Binary option is enabled, the OBB file is pushed to the correct location on your device. If Development Build is checked, Unity also sets up a Profiler tunnel and enables CheckJNI. After that, the app is launched. The Split Application Binary setting is located in the Publishing Settings section of the Player settings.

Tip: Specify the output path for the packages and then use the Ctrl+B (Windows) or Cmd+B (macOS) keyboard shortcut to Build and Run using the saved output path.

2018–11–19 Page amended

Updated functionality in 5.5

Updated the Build Settings Configuration options

Источник

Building apps for Android

There are two locations to configure settings that affect how your app is built:

The output package includes an APK, and an APK expansion file (OBB) if the Split Application Binary option is selected in the Player settings. For more information on OBB files, see OBB Support.

To optimize for download and installation size, enable the Split APKs by target architecture option in the Player settings. The Split APKs by target architecture option produces one set of APKs and OBBs for each device architecture selected in the Target Architecture list in the Player settings. You can upload this set of APKs (and OBBs, if enabled) to the Google Play, or other, store instead of a FAT APK in which all of the selected architectures are included into a single APK. For more information on this feature, see Multiple APK support on the Android Developer website.

Configuring Build Settings

To configure and build apps for Android, access the Build Settings window, select File > Build Setting. In Platforms, select Android.

To set Android as your default build platform, click the Switch Platform button.

When you have specified your build settings, click the Build The process of compiling your Project into a format that is ready to run on a specific platform or platforms. More info
See in Glossary button to create your build. To build the app, click Build And Run to create and run your build on the platform you have specified. In Platform, select Android.

Texture compression

For additional information on textures and texture compression, see Android 2D Textures Overrides.

For additional information on the texture compression formats, see Texture compression formats for platform-specific overrides. In particular, see the Notes on Android at the end of the topic.

Note: Texture Compression is a global setting. Individual textures override the global setting.

ETC2 fallback

For Android devices that don’t support ETC2 (which don’t support GL ES3), you can override the default ETC2 texture decompression by choosing from 32-bit, 16-bit, or 32-bit with half the resolution formats.

This option allows you to choose between the uncompressed image quality and the amount of memory the uncompressed texture occupies. 32-bit RGBA texture is the highest quality format, and takes twice the required disk space as the 16-bit format, but a texture in 16-bit might lose some valuable color information. 32-bit half-resolution reduces the memory requirement further, but the texture is likely to become blurry.

Build system

Unity supports two Android build systems: Gradle An Android build system that automates several build processes. This automation means that many common build errors are less likely to occur. More info
See in Glossary and Internal.

The steps involved with building for Android are:

Splitting the resources into the parts that go to the APK and the OBB, if Split Application Binary is selected.

Building the Android resources using the AAPT utility (internal build only.)

Generating the Android manifest.

Merging the library manifests into the Android manifest (internal build only.)

Compiling the Java code into the Dalvik Executable format (DEX) (internal build only.)

Building the IL2CPP A Unity-developed scripting back-end which you can use as an alternative to Mono when building Projects for some platforms. More info
See in Glossary library, if IL2CPP Scripting Backend is selected.

Building and optimizing the APK and OBB packages.

Gradle build system

The Gradle build system uses Gradle to build an APK or export a Project in Gradle format, which can then be imported to Android Studio. When you select this build system, Unity goes through the same steps as the Internal build system excluding resource compilation with AAPT, merging manifests, and running DEX. Unity then generates the build.gradle file (along with the other required configuration files) and invokes the Gradle executable, passing it the task name and the working directory. Finally, the APK is built by Gradle.

Internal build system

The Internal build system creates an APK using the Android SDK utilities to build and optimize the APK and OBB packages. For more information about OBB files, see OBB Support.

Exporting the Project

If you need more control over the build pipeline, or to make changes that Unity does not normally allow (for example, fine tuning the manifest files that are automatically generated by Unity), you can export your Project and import it into Android Studio. Exporting a Project is only available when you have selected Gradle as your Build System.

To export the Project:

When the export finishes, open Android Studio and import your project. For more information on importing projects to Android Studio, see the Migrate to Android Studio section of the Android Developer documentation.

Build or Build and Run

The Build Settings window offers two options: Build and Build and Run. Using either option saves the output packages (APK and OBB, if enabled) to the path that you select. You can publish these packages to the Google Play Store, or install them on your device manually with the help of Android Debug Bridge (ADB). For further information about installing apps manually, see the Run your app section of the Android Developer documentation. For information on ADB An Android Debug Bridge (ADB). You can use an ADB to deploy an Android package (APK) manually after building. More info
See in Glossary commands, see the Android Debug Bridge section of the Android Developer documentation.

Selecting Build and Run saves the output packages to the file path you specify, while also installing your app on the Android device connected to your computer.

If the Split Application Binary option is enabled, the OBB file is pushed to the correct location on your device. If Development Build A development build includes debug symbols and enables the Profiler. More info
See in Glossary is checked, Unity also sets up a Profiler tunnel and enables CheckJNI. After that, the app is launched. The Split Application Binary setting is located in the Publishing Settings section of the Player settings.

Tip: Specify the output path for the packages and then use the Ctrl+B (Windows) or Cmd+B (macOS) keyboard shortcut to Build and Run using the saved output path.

2018–11–19 Page amended

Updated functionality in 5.5

Updated the Build Settings Configuration options

Источник

Building apps for Android

There are two locations to configure settings that affect how your app is built:

The output package includes an APK, and an APK expansion file (OBB) if the Split Application Binary option is selected in the Player settings. For more information on OBB files, see OBB Support.

To optimize for download and installation size, enable the Split APKs by target architecture option in the Player settings. The Split APKs by target architecture option produces one set of APKs and OBBs for each device architecture selected in the Target Architecture list in the Player settings. You can upload this set of APKs (and OBBs, if enabled) to the Google Play, or other, store instead of a FAT APK in which all of the selected architectures are included into a single APK. For more information on this feature, see Multiple APK support on the Android Developer website.

Configuring Build Settings

To configure and build apps for Android, access the Build Settings window (File > Build Settings). In Platform, select Android.

To set Android as your default build platform, click the Switch Platform button.

After you specify your build settings, click the Build The process of compiling your project into a format that is ready to run on a specific platform or platforms. More info
See in Glossary button to create your build. To build the app, click Build And Run to create and run your build on the platform you have specified.

Texture compression

For additional information on textures and texture compression, see the Mobile and WebGL specific formats and Notes on Android sections on the Texture compression formats for platform-specific overrides page.

Note: Texture Compression is a global setting. Individual textures override the global setting.

ETC2 fallback

For Android devices that don’t support ETC2 (which don’t support GL ES3), you can override the default ETC2 texture decompression by choosing from 32-bit, 16-bit, or 32-bit with half the resolution formats.

This option allows you to choose between the uncompressed image quality and the amount of memory the uncompressed texture occupies. 32-bit RGBA texture is the highest quality format, and takes twice the required disk space as the 16-bit format, but a texture in 16-bit might lose some valuable color information. 32-bit half-resolution reduces the memory requirement further, but the texture is likely to become blurry.

Build system

Unity supports two Android build systems: Gradle An Android build system that automates several build processes. This automation means that many common build errors are less likely to occur. More info
See in Glossary and Internal.

The steps involved with building for Android are:

Preparing and building the Unity Assets.

Splitting the resources into the parts that go to the APK and the OBB, if Split Application Binary is selected.

Building the Android resources using the AAPT utility (internal build only.)

Generating the Android manifest.

Merging the library manifests into the Android manifest (internal build only.)

Compiling the Java code into the Dalvik Executable format (DEX) (internal build only.)

Building the IL2CPP A Unity-developed scripting back-end which you can use as an alternative to Mono when building projects for some platforms. More info
See in Glossary library, if IL2CPP Scripting Backend is selected.

Building and optimizing the APK and OBB packages.

Gradle build system

The Gradle build system uses Gradle to build an APK or export a Project in Gradle format, which can then be imported to Android Studio. When you select this build system, Unity goes through the same steps as the Internal build system excluding resource compilation with AAPT, merging manifests, and running DEX. Unity then generates the build.gradle file (along with the other required configuration files) and invokes the Gradle executable, passing it the task name and the working directory. Finally, the APK is built by Gradle.

Internal build system

The Internal build system creates an APK using the Android SDK utilities to build and optimize the APK and OBB packages. For more information about OBB files, see OBB Support.

Exporting the Project

If you need more control over the build pipeline, or to make changes that Unity does not normally allow (for example, fine tuning the manifest files that are automatically generated by Unity), you can export your Project and import it into Android Studio. Exporting a Project is only available when you have selected Gradle as your Build System.

To export the Project:

When the export finishes, open Android Studio and import your project. For more information on importing projects to Android Studio, see the Migrate to Android Studio section of the Android Developer documentation.

Build or Build and Run

The Build Settings window offers two options: Build and Build and Run. Using either option saves the output packages (APK and OBB, if enabled) to the path that you select. You can publish these packages to the Google Play Store, or install them on your device manually with the help of Android Debug Bridge (ADB). For further information about installing apps manually, see the Run your app section of the Android Developer documentation. For information on ADB An Android Debug Bridge (ADB). You can use an ADB to deploy an Android package (APK) manually after building. More info
See in Glossary commands, see the Android Debug Bridge section of the Android Developer documentation.

Selecting Build and Run saves the output packages to the file path you specify, while also installing your app on the Android device connected to your computer.

If the Split Application Binary option is enabled, the OBB file is pushed to the correct location on your device. If Development Build A development build includes debug symbols and enables the Profiler. More info
See in Glossary is checked, Unity also sets up a Profiler tunnel and enables CheckJNI. After that, the app is launched. The Split Application Binary setting is located in the Publishing Settings section of the Player settings.

Tip: Specify the output path for the packages and then use the Ctrl+B (Windows) or Cmd+B (macOS) keyboard shortcut to Build and Run using the saved output path.

2018–11–19 Page amended

Updated functionality in 5.5

Updated the Build Settings Configuration options

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *