UM1L3——Build Settings 打包安卓应用程序相关设置

Build Settings(打包安卓应用程序相关设置)

image
新版本特有参数:
image

  • Texture Compression:纹理压缩 设置发布后的纹理压缩格式

    image

    • Use Player Settings: 使用在播放器设置中设置的纹理压缩格式
    • ETC:使用ETC格式(推荐)
    • ETC2:使用ETC2格式
    • ASTC:使用ASTC格式
    • DXT:使用DXT格式
    • PVRTC:使用PVRTC格式

    以前讲过相关内容,详见:U3L2-5——参数设置—平台设置

    了解格式详细信息:Recommended, default, and supported texture formats, by platform - Unity 手册

    注意:对于安卓ETC2是常用的压缩格式,支持透明通道。
    但是对于老设备不支持ETC2,可以使用ETC。
    我们可以统一设置为ETC2,在下方的ETC2 fallback中设置,
    如果不支持ETC2,使用哪种压缩方式

  • ETC2 fallback:ETC2回退
    当Unity用于不支持ETC2的安卓设备时的RGBA纹理格式

    image

    • 32-bit:32位 以全分辨率存储RGBA纹理(推荐)

      使用32位存储每个像素,质量最高,内存占用最多

    • 16-bit:16位 以全分辨率存储RGBA纹理

      使用16位存储每个像素,质量较低,
      纹理可能会丢失有价值的颜色信息,内存占用相对较少

    • 32-bit, half resolution:32位,半分辨率

      以半分辨率存储RGBA纹理,使用32位存储每个像素,
      由于是半分辨率,纹理会变得模糊,内存占用较小

    注意:如果使用的不是ETC2压缩,大多数压缩格式,
    使用32-bit备用,取决于GPU支持什么

  • Export Project: 导出项目

    勾选后,不会发布成apk,
    而是会将Unity项目导出为可以导入Android Studio的Gradle项目

    Gradle是一个基于JVM(Java虚拟机)的构建工具

  • Symlink Sources: 符号链接源

    如果你想导出后进行二次开发,建议勾选此选项

    当勾选Export Project时,才能勾选此选项。
    决定是否在Unity和导出的Gradle项目之间共享Java和Kotlin源文件
    启用后,对于测试和迭代Java和Kotlin代码很有用,
    如果你重新导出Unity项目,你在导出的项目对之前的Java和Kotlin源文件的任何更改都会保留

  • Build App Bundle(Google Play):构建应用捆绑包

    是否将应用程序作为Android应用捆绑包(AAB)
    启用,发布出去是一个AAB(可以配合安卓进行二次开发)
    禁用,发布出去是一个APK(直接就是一个可安装的应用程序)

  • Create symbols.zip:创建 符号压缩文件

    用于在安卓上开发出现问题时调试,而不是最终发布时使用

    image

    符号文件可以帮助我们调试应用程序
    Unity会生成一个包含本机Unity库的符号文件的包
    它包含一个表,将活动内存地址转换为我们可以使用的信息,
    比如方法名,我们可以利用符号包来检测调试应用程序的信息

    • Disabled:不生成
    • Public:Unity生成一个公共符号为程序打包
      公共符号文件包含将函数地址解析为人类可读字符串的信息,
      包小于调试符号的包
    • Debugging:Unity生成一个调试符号为程序打包
      包含完整的调试信息和符号表,
      可以用来解析堆栈、将本机调试器附加到应用程序调试代码
  • Run Device:运行的设备

    image

    笔者这里连接了自己的手机,因此会有第三个选项

    指定在哪个附加设备上测试生成
    如果你连接了新设备或在列表中没有看到连接的设备
    点击刷新Refresh

  • Build to Device:构建到设备

    需要勾选下边的选项才可用使用

    image

    不创建完整的构建,
    而是将发生修改的单个文件直接部署到设备上
    相对来说更加快速,方便调试

  • Development Build:开发模式构建

    是否包含脚本调试符号和性能分析器到你的项目中,
    如果你想要调试应用程序,请选择该选项

  • Autoconnect Profiler:自动连接分析器

    是否自动将分析器连接到生成的应用程序

  • Deep Profiling:深度剖析

    是否启用深度剖析在分析器中,
    可以让分析器能够检测应用程序中每个函数调用,
    从而返回更加详细的分析数据

    注意:该选项会降低脚本的执行速度

  • Script Debugging:是否允许调试应用程序的脚本文件

    勾选后,可以在脚本里打断点查看运行

    image

    • Wait For Managed Debugger 是否等待托管调试器
      程序在运行脚本代码之前是否等待调试器连接
  • Compression Method:压缩方法

    Unity在构建时压缩项目中数据的方式

    image

    • Default:默认使用ZIP

      压缩效果略好于LZ4和LZ4HC,但是数据解压速度较慢

    • LZ4:使用LZ4,这是一种快速压缩格式

      相对ZIP可以显著提高Unity应用程序的加载时间

    • LZ4HC:LZ4的高压缩版本,构建速度较慢,

      但是对于发布版本会产生更好的结果,
      相对ZIP可以显著提高应用程序加载时间

  • Max Texture Size:最大的纹理大小

    用于本地开发时导入纹理的最大尺寸
    减小最大纹理大小可以加快资源导入和平台切换

  • Texture Compression:纹理压缩

    选择下面两个选项,可以加快资源导入和平台切换

    • No Override:使用默认设置
    • Force Fast Compressor:强制快速压缩
    • Force Uncompressed:强制解压缩