我正在开发一个同时适用于iOS和安卓的Xamarin.Forms应用程序,在共享项目中,我有一个appsettings.json文件,其中我放置了一些基本设置键/值。
我希望根据构建管道中.YML文件中的配置变量替换那些键的值,例如,调试管道的键{ "url":"“}将是{ "url":"http://google.com”},而发布管道的键将是{ "url":"http://amazon.com“}。
我以前在.NET核心项目中处理过这种情况,但我不知道如何使用Xamarin,我知道Azure Pipeline中有一个File Transform task预定义的任务,但它需要一个.zip包或文件夹路径来找到.json并转换它,但对于移动应用程序,我认为没有像预建文件夹这样糟糕的东西。
我请求你的协助。
发布于 2020-04-10 14:15:14
如何在Xamarin iOS和Android构建任务之前替换json配置值
如果您对不同的配置变量有不同的管道。您可以直接使用任务Replace Tokens来更新appsettings.json文件中url的键值。
您可以查看my previous thread以了解详细信息。
此外,如果您对不同的配置变量使用一个管道,我们需要使用Logging Command和REST API (Definitions - Update)来更新构建任务中的构建定义变量的值。
URL:$config= $Env:configuration写主机"Current config is $config“if ($config -eq”调试“){写主机("##vsotask.setvariable variable=URLhttp://google.com"”)} elseif if ($config -eq "release") {写主机("##vsotask.setvariable variable=URLhttp://amazon.com"“)}
Definitions - Update)使用值更新构建定义变量的值替换令牌以更新appsettings.json文件中url的键值希望这能有所帮助。
https://stackoverflow.com/questions/61121360
复制相似问题