我们的Azure管道中有以下代码:
- task: DotNetCoreCLI@2
displayName: 'dotnet build'
inputs:
command: 'publish'
projects: 'APPNAME/APPNAME.Android.csproj'
publishWebProjects: false
arguments: '--configuration ${{ variables.buildConfiguration }} -o $(build.binariesdirectory) -f net7.0-android'
modifyOutputPath: true
zipAfterPublish: false
我们有3个环境,在项目的App.xaml.cs中,我们有以下内容:
#if DEBUG || DEV
public const string Environment = "dev";
#elif QA
public const string Environment = "qa";
#else
public const string Environment = "live";
#endif
然后,代码根据所使用的环境选择不同的配置文件,所有这些都在本地运行良好。
当我们在开发版本的管道中发布时,会生成一个APK文件,但无法上传到Play商店,因为“APK被标记为可调试”。我猜这是因为参数中的I haven 't got -c Release,但这样做会导致代码选择实时环境的配置文件。
我尝试做的是构建应用程序的Dev/QA版本,但在发布模式下构建,因此可调试标记为false,但使用项目中的Dev配置文件。
1条答案
按热度按时间vmdwslir1#
首先,你可以定义任何你想要的配置。2这些配置完全是任意的。
接下来,对于每一个配置,你可以定义一组编译器符号来使用。2同样,这些符号是完全任意的。3如果你想把DEV符号添加到发布配置中,那就去吧。4如果你想创建一个名为WOMBAT的符号,没有什么能阻止你。
最后,您可以启用/禁用每个配置的调试。没有什么可以阻止您在发布配置中启用调试