android 在发布模式下构建应用程序,但使用DEV配置

n3h0vuf2  于 2023-03-06  发布在  Android
关注(0)|答案(1)|浏览(109)

我们的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配置文件。

vmdwslir

vmdwslir1#

首先,你可以定义任何你想要的配置。2这些配置完全是任意的。

接下来,对于每一个配置,你可以定义一组编译器符号来使用。2同样,这些符号是完全任意的。3如果你想把DEV符号添加到发布配置中,那就去吧。4如果你想创建一个名为WOMBAT的符号,没有什么能阻止你。

最后,您可以启用/禁用每个配置的调试。没有什么可以阻止您在发布配置中启用调试

相关问题