在下面的命令中,如何使用--split-debug-info=/<project-name>/<directory>
flutter build apk --obfuscate --split-debug-info=/<project-name>/<directory>
当我声明项目名称和目录路径时,构建后的路径中不包含任何内容。
--split-debug-info标志指定Flutter可以输出调试文件的目录。此命令生成符号映射。
因此,目录已定义,但结果的符号映射在哪里?
在下面的命令中,如何使用--split-debug-info=/<project-name>/<directory>
flutter build apk --obfuscate --split-debug-info=/<project-name>/<directory>
当我声明项目名称和目录路径时,构建后的路径中不包含任何内容。
--split-debug-info标志指定Flutter可以输出调试文件的目录。此命令生成符号映射。
因此,目录已定义,但结果的符号映射在哪里?
一个合理的值应该是:
--split-debug-info=build/app/outputs/symbols
这样将其放置在与实际结果文件出现的逻辑位置相近的地方。
首先,确保你正在使用一个版本号大于等于1.16.2的Flutter框架版本,你可以通过运行以下命令进行检查:
flutter --version
如果不是这种情况,您可以通过运行以下命令升级Flutter框架:
flutter upgrade
然后,为了在运行flutter build
命令时生成符号映射文件,您可以使用以下命令:
flutter build --debug --extra-gen-snapshot-options="--symbol-map"
flutter build apk --obfuscate --split-debug-info=some_parent_directory/some_child_directory
注意,some_parent_directory和some_child_directory是任意的名称,您可以将其替换为任何您想要的名称。--split-debug-info=some_parent_directory/some_child_directory
部分的等号(=)符号右侧的开头没有斜杠(/)符号。理想的目录应该是:build/app/outputs/symbols
所以:
--split-debug-info=build/app/outputs/symbols
可以使用项目的相对路径或确切位置替换/<目录>。
示例:
./ProjectFolderName/output
它将在您的项目目录中创建ProjectFolderName文件夹
或者
/Users/apple/Desktop/items/example
这将是文件夹的特定路径
flutter build appbundle --target-platform android-arm,android-arm64,android-x64
flutter build apk -t lib/flavors/company_a/prod.dart --obfuscate --split-debug-info=obfuscate/symbols --flavor=company_a_prod
那种方式对我不起作用:
flutter build apk -t lib/flavors/company_a/prod.dart --flavor=company_a_prod release --obfuscate --split-debug-info=obfuscate/symbols