Add switches to build Control Gallery using the nuget produced by the build (#8937)
* Build Control Gallery with nugets * - sync pipelines * - add team project check * - fix output dir to match for ui tests * - preserve dual screen
This commit is contained in:
Родитель
112a203f77
Коммит
1532d46f5f
|
@ -0,0 +1,12 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<packageSources>
|
||||
<clear/>
|
||||
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" />
|
||||
<add key="nightly" value="https://aka.ms/xf-ci/index.json" />
|
||||
<add key="nuget" value="../s/Nuget" />
|
||||
</packageSources>
|
||||
<activePackageSource>
|
||||
<add key="All" value="(Aggregate source)" />
|
||||
</activePackageSource>
|
||||
</configuration>
|
|
@ -21,4 +21,4 @@
|
|||
<Target Name="GitVersion" />
|
||||
|
||||
<Import Condition="'$(EnvironmentBuildPropsImported)' != 'True'" Project="Environment.Build.props" />
|
||||
</Project>
|
||||
</Project>
|
||||
|
|
|
@ -3,6 +3,5 @@
|
|||
<PackageReference Include="GitInfo" Version="2.0.20" PrivateAssets="All" />
|
||||
<PackageReference Include="MSBuilder.GenerateAssemblyInfo" Version="0.2.1" PrivateAssets="All" />
|
||||
</ItemGroup>
|
||||
|
||||
<Import Project="Version.targets" />
|
||||
</Project>
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
|
||||
|
||||
|
||||
|
||||
<PropertyGroup Condition="'$(CI)' == ''">
|
||||
<CI>false</CI>
|
||||
<CI Condition="'$(TF_BUILD)' == 'true'">true</CI>
|
||||
|
@ -19,6 +20,18 @@
|
|||
-->
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup Condition="'$(CI)' == 'true'">
|
||||
<_XamarinFormsVersion>$(BUILD_BUILDNUMBER.Split(`+`)[0])</_XamarinFormsVersion>
|
||||
<XamarinFormsVersion Condition="Exists('$(BUILD_SOURCESDIRECTORY)/Nuget/Xamarin.Forms.$(_XamarinFormsVersion).nupkg')" >$(_XamarinFormsVersion)</XamarinFormsVersion>
|
||||
</PropertyGroup>
|
||||
|
||||
<!-- Build from source or nugets-->
|
||||
<PropertyGroup>
|
||||
<XamarinFormsVersion Condition="'$(XamarinFormsVersion)' == ''"></XamarinFormsVersion>
|
||||
<FromSource Condition="'$(XamarinFormsVersion)' != ''">false</FromSource>
|
||||
<FromSource Condition="'$(FromSource)' == ''">true</FromSource>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup>
|
||||
<Use2017 Condition="'$(Use2017)' == '' AND '$(MSBuildRuntimeType)' == 'Mono'">$(FrameworkSDKRoot.Contains('/Versions/5'))</Use2017>
|
||||
<Use2017 Condition="'$(Use2017)' == '' AND '$(MSBuildAssemblyVersion)' < '16.0'">true</Use2017>
|
||||
|
@ -30,4 +43,4 @@
|
|||
<AndroidTargetFrameworks Condition="'$(Use2017)' == 'true'">MonoAndroid90;</AndroidTargetFrameworks>
|
||||
<AndroidTargetFrameworks Condition="'$(Use2017)' == 'false'">MonoAndroid90;MonoAndroid10.0;</AndroidTargetFrameworks>
|
||||
</PropertyGroup>
|
||||
</Project>
|
||||
</Project>
|
||||
|
|
|
@ -0,0 +1,16 @@
|
|||
<Project>
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Xamarin.Forms" Version="$(XamarinFormsVersion)">
|
||||
</PackageReference>
|
||||
<PackageReference Include="Xamarin.Forms.Maps" Version="$(XamarinFormsVersion)">
|
||||
</PackageReference>
|
||||
<PackageReference Include="Xamarin.Forms.Visual.Material" Version="$(XamarinFormsVersion)">
|
||||
</PackageReference>
|
||||
<PackageReference Include="Xamarin.Forms.DualScreen" Version="$(XamarinFormsVersion)">
|
||||
</PackageReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup Condition=" $(TargetFrameworkIdentifier.StartsWith('MonoAndroid')) ">
|
||||
<PackageReference Include="Xamarin.Forms.AppLinks" Version="$(XamarinFormsVersion)">
|
||||
</PackageReference>
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -0,0 +1,4 @@
|
|||
# Ignore everything in this directory
|
||||
*
|
||||
# Except this file
|
||||
!.gitignore
|
|
@ -2,7 +2,7 @@
|
|||
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">iPhoneSimulator</Platform>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProductVersion>8.0.30703</ProductVersion>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<ProjectGuid>{39B3457F-01D8-43D0-8E84-D8C4F73CF48D}</ProjectGuid>
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
<Project>
|
||||
<ItemGroup Condition="'$(TargetFrameworkVersion)' == 'v10.0'">
|
||||
<PackageReference Include="Xamarin.AndroidX.Migration">
|
||||
<Version>1.0.0</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Xamarin.AndroidX.Lifecycle.LiveData" Version="2.1.0" />
|
||||
<PackageReference Include="Xamarin.AndroidX.Browser" Version="1.0.0" />
|
||||
<PackageReference Include="Xamarin.Google.Android.Material" Version="1.0.0" />
|
||||
<PackageReference Include="Xamarin.AndroidX.Legacy.Support.V4" Version="1.0.0" />
|
||||
<PackageReference Include="Xamarin.AndroidX.Palette" Version="1.0.0" />
|
||||
<PackageReference Include="Xamarin.AndroidX.Migration">
|
||||
<Version>1.0.0</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Xamarin.AndroidX.Lifecycle.LiveData" Version="2.1.0" />
|
||||
<PackageReference Include="Xamarin.AndroidX.Browser" Version="1.0.0" />
|
||||
<PackageReference Include="Xamarin.Google.Android.Material" Version="1.0.0" />
|
||||
<PackageReference Include="Xamarin.AndroidX.Legacy.Support.V4" Version="1.0.0" />
|
||||
<PackageReference Include="Xamarin.AndroidX.Palette" Version="1.0.0" />
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
</Project>
|
||||
|
|
|
@ -1,3 +1,6 @@
|
|||
<Project>
|
||||
<Import Project="Android10.Build.targets" Condition="'$(TargetFrameworkVersion)' == 'v10.0'" />
|
||||
</Project>
|
||||
<Import Condition="'$(Use2017)' == 'true'" Project="Nuget2017.Build.targets" />
|
||||
<Import Condition="'$(Use2017)' != 'true'" Project="Nuget2019.Build.targets" />
|
||||
<Import Project="..\Nuget.targets" Condition="'$(FromSource)' == 'false'" />
|
||||
</Project>
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
<Project>
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Xamarin.Build.Download">
|
||||
<Version>0.4.11</Version>
|
||||
</PackageReference>
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -0,0 +1,17 @@
|
|||
<Project>
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Xamarin.Build.Download">
|
||||
<Version>0.7.1</Version>
|
||||
</PackageReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup Condition="'$(TargetFrameworkVersion)' == 'v10.0'">
|
||||
<PackageReference Include="Xamarin.AndroidX.Migration">
|
||||
<Version>1.0.0</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Xamarin.AndroidX.Lifecycle.LiveData" Version="2.1.0" />
|
||||
<PackageReference Include="Xamarin.AndroidX.Browser" Version="1.0.0" />
|
||||
<PackageReference Include="Xamarin.Google.Android.Material" Version="1.0.0" />
|
||||
<PackageReference Include="Xamarin.AndroidX.Legacy.Support.V4" Version="1.0.0" />
|
||||
<PackageReference Include="Xamarin.AndroidX.Palette" Version="1.0.0" />
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -3,11 +3,13 @@ using System.Collections.Generic;
|
|||
using Xamarin.Forms;
|
||||
using Xamarin.Forms.ControlGallery.Android;
|
||||
using Xamarin.Forms.Controls;
|
||||
using Xamarin.Forms.Internals;
|
||||
|
||||
[assembly: Dependency(typeof(PlatformSpecificCoreGalleryFactory))]
|
||||
|
||||
namespace Xamarin.Forms.ControlGallery.Android
|
||||
{
|
||||
[Preserve(AllMembers = true)]
|
||||
public class PlatformSpecificCoreGalleryFactory : IPlatformSpecificCoreGalleryFactory
|
||||
{
|
||||
public string Title => "Android Core Gallery";
|
||||
|
|
|
@ -28,7 +28,6 @@
|
|||
<AndroidEnableMultiDex>true</AndroidEnableMultiDex>
|
||||
<AndroidUseSharedRuntime>False</AndroidUseSharedRuntime>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup>
|
||||
<!-- default locally to using fast renderers but if we're running on CI don't set a value for ANDROID_RENDERERS.
|
||||
This will let the old and new yaml configurations coexist -->
|
||||
|
@ -37,7 +36,6 @@
|
|||
<DefineConstants Condition="'$(ANDROID_RENDERERS)' == 'PREAPPCOMPAT'">$(DefineConstants);FORMS_APPLICATION_ACTIVITY</DefineConstants>
|
||||
<DefineConstants Condition="'$(ANDROID_RENDERERS)' == 'LEGACY'">$(DefineConstants)</DefineConstants>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup Condition="'$(Configuration)' == 'Debug'">
|
||||
<DefineConstants>$(DefineConstants);HAVE_OPENTK</DefineConstants>
|
||||
<AndroidKeyStore>True</AndroidKeyStore>
|
||||
|
@ -194,11 +192,7 @@
|
|||
<AndroidResource Include="Resources\drawable\Icon.png" />
|
||||
<AndroidResource Include="Resources\drawable\cover1.jpg" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Stubs\Xamarin.Forms.Platform.Android\Xamarin.Forms.Platform.Android (Forwarders).csproj">
|
||||
<Project>{6e53feb1-1100-46ae-8013-17bba35cc197}</Project>
|
||||
<Name>Xamarin.Forms.Platform.Android (Forwarders)</Name>
|
||||
</ProjectReference>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Xamarin.Forms.Controls\Xamarin.Forms.Controls.csproj">
|
||||
<Project>{cb9c96ce-125c-4a68-b6a1-c3ff1fbf93e1}</Project>
|
||||
<Name>Xamarin.Forms.Controls</Name>
|
||||
|
@ -207,6 +201,15 @@
|
|||
<Project>{4dcd0420-1168-4b77-86db-6196ee4bd491}</Project>
|
||||
<Name>Xamarin.Forms.CustomAttributes</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup Condition="$(FromSource) == 'true'">
|
||||
<ProguardConfiguration Include="..\.nuspec\proguard.cfg">
|
||||
<Link>proguard.cfg</Link>
|
||||
</ProguardConfiguration>
|
||||
<ProjectReference Include="..\Stubs\Xamarin.Forms.Platform.Android\Xamarin.Forms.Platform.Android (Forwarders).csproj">
|
||||
<Project>{6e53feb1-1100-46ae-8013-17bba35cc197}</Project>
|
||||
<Name>Xamarin.Forms.Platform.Android (Forwarders)</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\Xamarin.Forms.DualScreen\Xamarin.Forms.DualScreen.csproj">
|
||||
<Project>{fb4a866a-5721-4545-9e5d-b7f7d59875a4}</Project>
|
||||
<Name>Xamarin.Forms.DualScreen</Name>
|
||||
|
@ -358,9 +361,6 @@
|
|||
<PackageReference Include="Xam.Plugin.DeviceInfo">
|
||||
<Version>3.0.2</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Xamarin.Build.Download">
|
||||
<Version>0.7.1</Version>
|
||||
</PackageReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Xamarin.Android.Support.Animated.Vector.Drawable" Version="28.0.0.3" />
|
||||
|
@ -394,11 +394,6 @@
|
|||
<AndroidResource Include="Resources\drawable\GifOne.gif" />
|
||||
<AndroidEnvironment Include="Environment.txt" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProguardConfiguration Include="..\.nuspec\proguard.cfg">
|
||||
<Link>proguard.cfg</Link>
|
||||
</ProguardConfiguration>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<AndroidResource Include="Resources\drawable\GifTwo.gif" />
|
||||
</ItemGroup>
|
||||
|
@ -424,11 +419,11 @@
|
|||
</AndroidResource>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Android\Xamarin.Android.CSharp.targets" />
|
||||
<Import Project="$(SolutionDir)\.nuget\NuGet.targets" Condition="Exists('$(SolutionDir)\.nuget\NuGet.targets')" />
|
||||
<Import Project="$(SolutionDir)\.nuget\NuGet.targets" Condition="$(FromSource) == 'true' AND Exists('$(SolutionDir)\.nuget\NuGet.targets')" />
|
||||
<Target Name="BeforeBuild">
|
||||
<CreateItem Include="Properties\MapsKey.cs.blank">
|
||||
<Output TaskParameter="Include" ItemName="MapsKey" />
|
||||
</CreateItem>
|
||||
<Copy SourceFiles="@(MapsKey)" DestinationFiles="Properties\MapsKey.cs" Condition="!Exists('Properties\MapsKey.cs')" />
|
||||
</Target>
|
||||
</Project>
|
||||
</Project>
|
||||
|
|
|
@ -0,0 +1,3 @@
|
|||
<Project>
|
||||
<Import Project="..\Nuget.targets" Condition="$(FromSource) == 'false'" />
|
||||
</Project>
|
|
@ -101,6 +101,14 @@
|
|||
<Project>{cb9c96ce-125c-4a68-b6a1-c3ff1fbf93e1}</Project>
|
||||
<Name>Xamarin.Forms.Controls</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup Condition="$(FromSource) == 'false'">
|
||||
<ProjectReference Include="..\Xamarin.Forms.CustomAttributes\Xamarin.Forms.CustomAttributes.csproj">
|
||||
<Project>{4dcd0420-1168-4b77-86db-6196ee4bd491}</Project>
|
||||
<Name>Xamarin.Forms.CustomAttributes</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup Condition="$(FromSource) == 'true'">
|
||||
<ProjectReference Include="..\Xamarin.Forms.Core\Xamarin.Forms.Core.csproj">
|
||||
<Project>{57b8b73d-c3b5-4c42-869e-7b2f17d354ac}</Project>
|
||||
<Name>Xamarin.Forms.Core</Name>
|
||||
|
|
|
@ -0,0 +1,3 @@
|
|||
<Project>
|
||||
<Import Project="..\Nuget.targets" Condition="$(FromSource) == 'false'" />
|
||||
</Project>
|
|
@ -1,7 +1,9 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Condition="'$(EnvironmentBuildPropsImported)' != 'True'" Project="..\Environment.Build.props" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' And '$(BuildIpa)' == 'True' ">iPhone</Platform>
|
||||
<Platform Condition=" '$(Platform)' == '' ">iPhoneSimulator</Platform>
|
||||
<ProjectGuid>{C7131F14-274F-4B55-ACA9-E81731AD012F}</ProjectGuid>
|
||||
<ProjectTypeGuids>{FEACFBD2-3405-455C-9665-78FE426C6842};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||
|
@ -159,6 +161,14 @@
|
|||
<Project>{cb9c96ce-125c-4a68-b6a1-c3ff1fbf93e1}</Project>
|
||||
<Name>Xamarin.Forms.Controls</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup Condition="$(FromSource) == 'false'">
|
||||
<ProjectReference Include="..\Xamarin.Forms.CustomAttributes\Xamarin.Forms.CustomAttributes.csproj">
|
||||
<Project>{4dcd0420-1168-4b77-86db-6196ee4bd491}</Project>
|
||||
<Name>Xamarin.Forms.CustomAttributes</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup Condition="$(FromSource) == 'true'">
|
||||
<ProjectReference Include="..\Xamarin.Forms.DualScreen\Xamarin.Forms.DualScreen.csproj">
|
||||
<Project>{fb4a866a-5721-4545-9e5d-b7f7d59875a4}</Project>
|
||||
<Name>Xamarin.Forms.DualScreen</Name>
|
||||
|
@ -439,4 +449,4 @@
|
|||
</ItemGroup>
|
||||
<ItemGroup />
|
||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\iOS\Xamarin.iOS.CSharp.targets" />
|
||||
</Project>
|
||||
</Project>
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<Project>
|
||||
<Import Project="..\.nuspec\Xamarin.Forms.props" />
|
||||
<Import Project="..\Directory.Build.props" />
|
||||
<Import Project="..\.nuspec\Xamarin.Forms.props" Condition="$(FromSource) == 'true'" />
|
||||
</Project>
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
<Project>
|
||||
<Import Project="..\.nuspec\Xamarin.Forms.targets" Condition="'$(BuildingInsideVisualStudio)' == 'true' AND Exists('$(__XFBuildTasksLocation)Xamarin.Forms.Build.Tasks.dll')" />
|
||||
<Import Project="..\.nuspec\Xamarin.Forms.targets" Condition="'$(BuildingInsideVisualStudio)' != 'true'" />
|
||||
<Import Project="..\.nuspec\Xamarin.Forms.targets" Condition="$(FromSource) == 'true' AND '$(BuildingInsideVisualStudio)' == 'true' AND Exists('$(__XFBuildTasksLocation)Xamarin.Forms.Build.Tasks.dll')" />
|
||||
<Import Project="..\.nuspec\Xamarin.Forms.targets" Condition="$(FromSource) == 'true' AND '$(BuildingInsideVisualStudio)' != 'true'" />
|
||||
<Import Project="..\Nuget.targets" Condition="'$(FromSource)' == 'false'" />
|
||||
</Project>
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
<Project>
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Xamarin.Forms" Version="$(XamarinFormsVersion)">
|
||||
</PackageReference>
|
||||
<PackageReference Include="Xamarin.Forms.Maps" Version="$(XamarinFormsVersion)">
|
||||
</PackageReference>
|
||||
<PackageReference Include="Xamarin.Forms.Visual.Material" Version="$(XamarinFormsVersion)">
|
||||
</PackageReference>
|
||||
<ProjectReference Include="..\Xamarin.Forms.CustomAttributes\Xamarin.Forms.CustomAttributes.csproj" />
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -0,0 +1,11 @@
|
|||
<Project>
|
||||
<Import Project="..\.nuspec\Xamarin.Forms.targets" Condition="'$(BuildingInsideVisualStudio)' == 'true' AND Exists('$(__XFBuildTasksLocation)Xamarin.Forms.Build.Tasks.dll')" />
|
||||
<Import Project="..\.nuspec\Xamarin.Forms.targets" Condition="'$(BuildingInsideVisualStudio)' != 'true'" />
|
||||
<ItemGroup>
|
||||
<!-- A reference to the entire .NET Framework is automatically included -->
|
||||
<ProjectReference Include="..\Xamarin.Forms.Core\Xamarin.Forms.Core.csproj" />
|
||||
<ProjectReference Include="..\Xamarin.Forms.CustomAttributes\Xamarin.Forms.CustomAttributes.csproj" />
|
||||
<ProjectReference Include="..\Xamarin.Forms.Maps\Xamarin.Forms.Maps.csproj" />
|
||||
<ProjectReference Include="..\Xamarin.Forms.Xaml\Xamarin.Forms.Xaml.csproj" />
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -27,7 +27,7 @@
|
|||
<None Remove="Fonts\fa-regular-400.ttf" />
|
||||
<None Remove="Fonts\PTM55FT.ttf" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ItemGroup Condition="$(FromSource) == 'true'">
|
||||
<!-- A reference to the entire .NET Framework is automatically included -->
|
||||
<ProjectReference Include="..\Xamarin.Forms.Core\Xamarin.Forms.Core.csproj" />
|
||||
<ProjectReference Include="..\Xamarin.Forms.CustomAttributes\Xamarin.Forms.CustomAttributes.csproj" />
|
||||
|
@ -35,6 +35,9 @@
|
|||
<ProjectReference Include="..\Xamarin.Forms.Maps\Xamarin.Forms.Maps.csproj" />
|
||||
<ProjectReference Include="..\Xamarin.Forms.Xaml\Xamarin.Forms.Xaml.csproj" />
|
||||
</ItemGroup>
|
||||
<ItemGroup Condition="$(FromSource) == 'false'">
|
||||
<ProjectReference Include="..\Xamarin.Forms.CustomAttributes\Xamarin.Forms.CustomAttributes.csproj" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="BuildNumber.txt" />
|
||||
<EmbeddedResource Include="GalleryPages\crimson.jpg" />
|
||||
|
@ -91,4 +94,4 @@
|
|||
|
||||
<Import Project="..\Xamarin.Forms.Controls.Issues\Xamarin.Forms.Controls.Issues.Shared\Xamarin.Forms.Controls.Issues.Shared.projitems" Label="Shared" />
|
||||
|
||||
</Project>
|
||||
</Project>
|
|
@ -14,6 +14,12 @@ namespace Xamarin.Forms.DualScreen
|
|||
{
|
||||
public class DualScreenService
|
||||
{
|
||||
[Internals.Preserve(Conditional = true)]
|
||||
public DualScreenService()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public static void Init(Activity activity)
|
||||
{
|
||||
DependencyService.Register<DualScreenServiceImpl>();
|
||||
|
@ -34,6 +40,7 @@ namespace Xamarin.Forms.DualScreen
|
|||
object _hingeAngleLock = new object();
|
||||
TaskCompletionSource<int> _gettingHingeAngle;
|
||||
|
||||
[Internals.Preserve(Conditional = true)]
|
||||
public DualScreenServiceImpl()
|
||||
{
|
||||
_HingeService = this;
|
||||
|
|
|
@ -37,4 +37,4 @@
|
|||
<ItemGroup>
|
||||
<PackageReference Condition="'$(CI)' == 'true'" Include="Xamarin.Build.TypeRedirector" Version="0.1.2-preview" PrivateAssets="all" />
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
</Project>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">iPhoneSimulator</Platform>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProductVersion>8.0.30703</ProductVersion>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<ProjectGuid>{ABA078C4-F9BB-4924-8B2B-10FE0D2F5491}</ProjectGuid>
|
||||
|
@ -71,4 +71,4 @@
|
|||
<ItemGroup>
|
||||
<PackageReference Condition="'$(CI)' == 'true'" Include="Xamarin.Build.TypeRedirector" Version="0.1.2-preview" PrivateAssets="all" />
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
</Project>
|
||||
|
|
|
@ -100,4 +100,4 @@
|
|||
<ItemGroup>
|
||||
<PackageReference Condition="'$(CI)' == 'true'" Include="Xamarin.Build.TypeRedirector" Version="0.1.2-preview" PrivateAssets="all" />
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
</Project>
|
||||
|
|
|
@ -3,8 +3,7 @@
|
|||
<TargetFrameworks>netstandard2.0;netstandard1.4</TargetFrameworks>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.Azure.Mobile.Client">
|
||||
<Version>4.1.1</Version>
|
||||
<PackageReference Include="Microsoft.Azure.Mobile.Client" Version="4.1.1">
|
||||
</PackageReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
|
|
|
@ -7,8 +7,7 @@
|
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Newtonsoft.Json">
|
||||
<Version>11.0.2</Version>
|
||||
<PackageReference Include="Newtonsoft.Json" Version="11.0.2">
|
||||
</PackageReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
|
|
|
@ -62,4 +62,4 @@ namespace Xamarin.Forms.Platform.iOS
|
|||
Control.StartAnimating();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -26,7 +26,7 @@ variables:
|
|||
|
||||
resources:
|
||||
repositories:
|
||||
- repository: xamarin-templates
|
||||
- repository: xamarin-templates
|
||||
type: github
|
||||
name: xamarin/yaml-templates
|
||||
endpoint: xamarin
|
||||
|
@ -59,96 +59,90 @@ schedules:
|
|||
include:
|
||||
- master
|
||||
|
||||
jobs:
|
||||
- template: build/steps/build-windows.yml
|
||||
parameters:
|
||||
name: win
|
||||
displayName: Build Windows Phase
|
||||
vmImage: $(win2019VmImage)
|
||||
provisionatorPath : 'build/provisioning/provisioning.csx'
|
||||
stages:
|
||||
- stage: windows
|
||||
displayName: Build Windows
|
||||
jobs:
|
||||
- template: build/steps/build-windows.yml
|
||||
parameters:
|
||||
name: win
|
||||
displayName: Build Windows Phase
|
||||
vmImage: $(win2019VmImage)
|
||||
provisionatorPath : 'build/provisioning/provisioning.csx'
|
||||
- job: nuget_pack
|
||||
workspace:
|
||||
clean: all
|
||||
dependsOn:
|
||||
- win
|
||||
displayName: Nuget Phase
|
||||
condition: succeeded()
|
||||
pool:
|
||||
name: $(win2019VmImage)
|
||||
variables:
|
||||
FormsIdAppend: ''
|
||||
buildConfiguration: $(DefaultBuildConfiguration)
|
||||
nugetPackageVersion : $[ dependencies.win.outputs['debug.winbuild.xamarinformspackageversion'] ]
|
||||
steps:
|
||||
- template: build/steps/build-nuget.yml
|
||||
|
||||
- template: build/steps/build-android.yml
|
||||
parameters:
|
||||
name: android_legacy
|
||||
displayName: Build Android [Legacy Renderers]
|
||||
vmImage: $(macOSVmImage)
|
||||
targetFolder: Xamarin.Forms.ControlGallery.Android/legacyRenderers/
|
||||
androidProjectArguments: '/t:"Rebuild;SignAndroidPackage" /p:ANDROID_RENDERERS="LEGACY" /bl:$(Build.ArtifactStagingDirectory)/android-legacy.binlog'
|
||||
buildConfiguration: $(AndroidBuildConfiguration)
|
||||
provisionatorPath : 'build/provisioning/provisioning.csx'
|
||||
- stage: android
|
||||
displayName: Build Android
|
||||
${{ if eq(variables['System.TeamProject'], 'devdiv') }}:
|
||||
dependsOn: windows
|
||||
${{ if eq(variables['System.TeamProject'], 'public') }}:
|
||||
dependsOn: []
|
||||
jobs:
|
||||
- template: build/steps/build-android.yml
|
||||
parameters:
|
||||
vmImage: $(macOSVmImage)
|
||||
provisionatorPath : 'build/provisioning/provisioning.csx'
|
||||
|
||||
- template: build/steps/build-android.yml
|
||||
parameters:
|
||||
name: android_preappcompact
|
||||
displayName: Build Android [Pre-AppCompat]
|
||||
vmImage: $(macOSVmImage)
|
||||
targetFolder: Xamarin.Forms.ControlGallery.Android/preAppCompat
|
||||
androidProjectArguments: '/t:"Rebuild;SignAndroidPackage" /p:ANDROID_RENDERERS="PREAPPCOMPAT" /bl:$(Build.ArtifactStagingDirectory)/android-preappcompact.binlog'
|
||||
buildConfiguration: $(AndroidBuildConfiguration)
|
||||
provisionatorPath : 'build/provisioning/provisioning.csx'
|
||||
|
||||
- template: build/steps/build-android.yml
|
||||
parameters:
|
||||
name: android_fast
|
||||
displayName: Build Android [Fast Renderers]
|
||||
vmImage: $(macOSVmImage)
|
||||
targetFolder: Xamarin.Forms.ControlGallery.Android/newRenderers/
|
||||
androidProjectArguments: '/t:"Rebuild;SignAndroidPackage" /p:ANDROID_RENDERERS="FAST" /bl:$(Build.ArtifactStagingDirectory)/android-newrenderers.binlog'
|
||||
buildConfiguration: $(AndroidBuildConfiguration)
|
||||
provisionatorPath : 'build/provisioning/provisioning.csx'
|
||||
|
||||
- job: osx
|
||||
workspace:
|
||||
clean: all
|
||||
displayName: OSX Phase
|
||||
pool:
|
||||
name: $(macOSVmImage)
|
||||
demands:
|
||||
- Agent.OS -equals darwin
|
||||
- sh
|
||||
- msbuild
|
||||
- Xamarin.iOS
|
||||
strategy:
|
||||
matrix:
|
||||
BuildForVS2017:
|
||||
buildForVS2017: 'true'
|
||||
BuildForVS2019:
|
||||
buildForVS2017: 'false'
|
||||
variables:
|
||||
provisionator.osxPath : 'build/provisioning/provisioning.csx'
|
||||
provisionator.signPath : 'build/provisioning/provisioning_sign.csx'
|
||||
buildConfiguration: $(DefaultBuildConfiguration)
|
||||
slnPath: $(SolutionFile)
|
||||
iOSCertSecureFileName: 'Xamarin Forms iOS Certificate.p12'
|
||||
iOSProvisioningSecureFileName: 'Xamarin Forms iOS Provisioning.mobileprovision'
|
||||
buildForVS2017: $(buildForVS2017)
|
||||
steps:
|
||||
- template: build/steps/build-osx.yml
|
||||
|
||||
- job: nuget_pack
|
||||
workspace:
|
||||
clean: all
|
||||
displayName: Nuget Phase
|
||||
dependsOn:
|
||||
- win
|
||||
condition: succeeded()
|
||||
pool:
|
||||
name: $(winVmImage)
|
||||
variables:
|
||||
FormsIdAppend: ''
|
||||
buildConfiguration: $(DefaultBuildConfiguration)
|
||||
nugetPackageVersion : $[ dependencies.win.outputs['debug.winbuild.xamarinformspackageversion'] ]
|
||||
steps:
|
||||
- template: build/steps/build-nuget.yml
|
||||
- stage: build_osx
|
||||
displayName: Build OSX
|
||||
${{ if eq(variables['System.TeamProject'], 'devdiv') }}:
|
||||
dependsOn: windows
|
||||
${{ if eq(variables['System.TeamProject'], 'public') }}:
|
||||
dependsOn: []
|
||||
jobs:
|
||||
- job: osx
|
||||
workspace:
|
||||
clean: all
|
||||
displayName: OSX Phase
|
||||
pool:
|
||||
name: $(macOSVmImage)
|
||||
demands:
|
||||
- Agent.OS -equals darwin
|
||||
- sh
|
||||
- msbuild
|
||||
- Xamarin.iOS
|
||||
strategy:
|
||||
matrix:
|
||||
BuildForVS2017:
|
||||
buildForVS2017: 'true'
|
||||
BuildForVS2019:
|
||||
buildForVS2017: 'false'
|
||||
variables:
|
||||
provisionator.osxPath : 'build/provisioning/provisioning.csx'
|
||||
provisionator.signPath : 'build/provisioning/provisioning_sign.csx'
|
||||
buildConfiguration: $(DefaultBuildConfiguration)
|
||||
iOSCertSecureFileName: 'Xamarin Forms iOS Certificate.p12'
|
||||
iOSProvisioningSecureFileName: 'Xamarin Forms iOS Provisioning.mobileprovision'
|
||||
buildForVS2017: $(buildForVS2017)
|
||||
steps:
|
||||
- template: build/steps/build-osx.yml
|
||||
|
||||
# only sign using the private server
|
||||
- ${{ if eq(variables['System.TeamProject'], 'devdiv') }}:
|
||||
- job: nuget_sign
|
||||
displayName: Sign Phase
|
||||
dependsOn: nuget_pack
|
||||
pool:
|
||||
name: $(signVmImage)
|
||||
steps:
|
||||
- template: build/steps/build-sign.yml
|
||||
condition: and(succeeded(), or(eq(variables['Sign'], 'true'), or(eq(variables['Build.SourceBranch'], 'refs/heads/master'), startsWith(variables['Build.SourceBranch'],'refs/tags/'))))
|
||||
- ${{ if eq(variables['System.TeamProject'], 'devdiv') }}:
|
||||
- stage: nuget_signing
|
||||
dependsOn: windows
|
||||
displayName: Sign Nuget
|
||||
jobs:
|
||||
- job: nuget_sign
|
||||
displayName: Sign Phase
|
||||
pool:
|
||||
name: $(signVmImage)
|
||||
steps:
|
||||
- template: build/steps/build-sign.yml
|
||||
condition: and(succeeded(), or(eq(variables['Sign'], 'true'), or(eq(variables['Build.SourceBranch'], 'refs/heads/master'), startsWith(variables['Build.SourceBranch'],'refs/tags/'))))
|
||||
|
||||
|
||||
|
|
|
@ -68,7 +68,7 @@ string monoPatchVersion = "";
|
|||
string monoMajorVersion = "";
|
||||
string monoVersion = "";
|
||||
|
||||
if(buildForVS2017)
|
||||
if(buildForVS2017 || teamProject == "DevDiv")
|
||||
{
|
||||
// VS2017
|
||||
monoMajorVersion = "5.18.1";
|
||||
|
|
|
@ -3,19 +3,15 @@ parameters:
|
|||
displayName: '' # the human name
|
||||
vmImage: '' # the VM image
|
||||
vmPool: '' # the VM pool
|
||||
targetFolder: '' # the bootstrapper target
|
||||
dependsOn: [] # the dependiencies
|
||||
preBuildSteps: [] # any steps to run before the build
|
||||
postBuildSteps: [] # any additional steps to run after the build
|
||||
slnPath : 'Xamarin.Forms.sln'
|
||||
buildTaskPath : 'Xamarin.Forms.Build.Tasks/Xamarin.Forms.Build.Tasks.csproj'
|
||||
androidPath : 'Xamarin.Forms.ControlGallery.Android'
|
||||
androidProjectPath : 'Xamarin.Forms.ControlGallery.Android/Xamarin.Forms.ControlGallery.Android.csproj'
|
||||
androidProjectArguments : ''
|
||||
buildConfiguration : 'Debug'
|
||||
nugetVersion: $(NUGET_VERSION)
|
||||
monoVersion: $(MONO_VERSION)
|
||||
apkTargetFolder: '$(build.artifactstagingdirectory)/androidApp'
|
||||
provisionatorPath: 'build/provisioning/provisioning.csx'
|
||||
provisionatorExtraArguments: ''
|
||||
|
||||
|
@ -28,6 +24,17 @@ jobs:
|
|||
pool:
|
||||
name: ${{ parameters.vmImage }}
|
||||
dependsOn: ${{ parameters.dependsOn }}
|
||||
strategy:
|
||||
matrix:
|
||||
android_legacy:
|
||||
renderers: 'LEGACY'
|
||||
outputfolder: 'legacyRenderers'
|
||||
android_preAppCompat:
|
||||
renderers: 'PREAPPCOMPAT'
|
||||
outputfolder: 'preAppCompat'
|
||||
android_newRenderers:
|
||||
renderers: 'FAST'
|
||||
outputfolder: 'newRenderers'
|
||||
steps:
|
||||
- checkout: self
|
||||
clean: true
|
||||
|
@ -45,7 +52,7 @@ jobs:
|
|||
inputs:
|
||||
targetType: 'filePath'
|
||||
filePath: 'build.sh'
|
||||
arguments: --target provision
|
||||
arguments: --target provision --TeamProject="$(System.TeamProject)"
|
||||
|
||||
- task: UseDotNet@2
|
||||
displayName: 'Install .net core $(DOTNET_VERSION)'
|
||||
|
@ -62,11 +69,27 @@ jobs:
|
|||
condition: ne(variables['NUGET_VERSION'], '')
|
||||
inputs:
|
||||
versionSpec: $(NUGET_VERSION)
|
||||
|
||||
- task: DownloadBuildArtifacts@0
|
||||
displayName: 'Download build artifact nuget'
|
||||
condition: eq(variables['System.TeamProject'], 'DevDiv')
|
||||
inputs:
|
||||
artifactName: 'nuget'
|
||||
downloadPath: 'Nuget'
|
||||
|
||||
- task: CopyFiles@2
|
||||
displayName: 'Copy Files to: $(System.DefaultWorkingDirectory)'
|
||||
condition: eq(variables['System.TeamProject'], 'DevDiv')
|
||||
inputs:
|
||||
SourceFolder: 'Nuget/nuget/${{ parameters.buildConfiguration }}'
|
||||
TargetFolder: 'Nuget'
|
||||
|
||||
- task: NuGetCommand@2
|
||||
displayName: 'NuGet restore ${{ parameters.slnPath }}'
|
||||
inputs:
|
||||
restoreSolution: ${{ parameters.slnPath }}
|
||||
feedsToUse: config
|
||||
nugetConfigPath: 'DevopsNuget.config'
|
||||
|
||||
- task: MSBuild@1
|
||||
displayName: 'Build ${{ parameters.buildTaskPath }}'
|
||||
|
@ -75,27 +98,27 @@ jobs:
|
|||
configuration: ${{ parameters.buildConfiguration }}
|
||||
|
||||
- task: MSBuild@1
|
||||
displayName: 'Build Android ${{ parameters.name }}'
|
||||
displayName: 'Build Android $(renderers)'
|
||||
inputs:
|
||||
solution: ${{ parameters.androidProjectPath }}
|
||||
configuration: ${{ parameters.buildConfiguration }}
|
||||
msbuildArguments: ${{ parameters.androidProjectArguments }}
|
||||
msbuildArguments: '/t:"Rebuild;SignAndroidPackage" /p:ANDROID_RENDERERS="$(renderers)" /bl:$(Build.ArtifactStagingDirectory)/android-$(renderers).binlog'
|
||||
|
||||
- task: CopyFiles@2
|
||||
displayName: 'Copy ${{ parameters.name }}'
|
||||
displayName: 'Copy $(renderers)'
|
||||
inputs:
|
||||
SourceFolder: ${{ parameters.androidPath }}/bin/${{ parameters.buildConfiguration }}/
|
||||
SourceFolder: Xamarin.Forms.ControlGallery.Android/bin/${{ parameters.buildConfiguration }}/
|
||||
Contents: '**/*.apk'
|
||||
TargetFolder: ${{ parameters.targetFolder }}
|
||||
TargetFolder: 'Xamarin.Forms.ControlGallery.Android/$(outputfolder)/'
|
||||
CleanTargetFolder: true
|
||||
OverWrite: true
|
||||
|
||||
- task: CopyFiles@2
|
||||
displayName: 'Copy Android apk ${{ parameters.name }} for UITest'
|
||||
displayName: 'Copy Android apk $(renderers) for UITest'
|
||||
inputs:
|
||||
Contents: |
|
||||
${{ parameters.targetFolder }}/$(ApkName)
|
||||
TargetFolder: ${{ parameters.apkTargetFolder }}
|
||||
Xamarin.Forms.ControlGallery.Android/$(outputfolder)/$(ApkName)
|
||||
TargetFolder: '$(build.artifactstagingdirectory)/androidApp'
|
||||
CleanTargetFolder: true
|
||||
|
||||
- task: PublishBuildArtifacts@1
|
||||
|
|
|
@ -15,7 +15,7 @@ steps:
|
|||
inputs:
|
||||
targetType: 'filePath'
|
||||
filePath: 'build.sh'
|
||||
arguments: --target provision --buildForVS2017=$(buildForVS2017)
|
||||
arguments: --target provision --TeamProject="$(System.TeamProject)" --buildForVS2017=$(buildForVS2017)
|
||||
|
||||
- task: UseDotNet@2
|
||||
displayName: 'Install .net core $(DOTNET_VERSION)'
|
||||
|
@ -29,16 +29,34 @@ steps:
|
|||
condition: ne(variables['NUGET_VERSION'], '')
|
||||
inputs:
|
||||
versionSpec: $(NUGET_VERSION)
|
||||
|
||||
- task: DownloadBuildArtifacts@0
|
||||
displayName: 'Download build artifact nuget'
|
||||
condition: eq(variables['System.TeamProject'], 'DevDiv')
|
||||
inputs:
|
||||
artifactName: 'nuget'
|
||||
downloadPath: '$(Build.ArtifactsDirectory)'
|
||||
|
||||
- task: CopyFiles@2
|
||||
displayName: 'Copy Files to: $(System.DefaultWorkingDirectory)'
|
||||
condition: eq(variables['System.TeamProject'], 'DevDiv')
|
||||
inputs:
|
||||
SourceFolder: '$(Build.ArtifactsDirectory)/nuget/$(buildConfiguration)'
|
||||
TargetFolder: '$(System.DefaultWorkingDirectory)/Nuget'
|
||||
|
||||
- task: NuGetCommand@2
|
||||
displayName: 'NuGet restore'
|
||||
inputs:
|
||||
restoreSolution: $(slnPath)
|
||||
command: restore
|
||||
restoreSolution: 'Xamarin.Forms.sln'
|
||||
feedsToUse: config
|
||||
nugetConfigPath: 'DevopsNuget.config'
|
||||
|
||||
- task: MSBuild@1
|
||||
displayName: 'Build solution Xamarin.Forms.Build.Tasks/Xamarin.Forms.Build.Tasks.csproj'
|
||||
inputs:
|
||||
solution: Xamarin.Forms.Build.Tasks/Xamarin.Forms.Build.Tasks.csproj
|
||||
msbuildArguments: /bl:$(Build.ArtifactStagingDirectory)/tasks.binlog
|
||||
|
||||
- task: InstallAppleCertificate@2
|
||||
displayName: 'Install an Apple certificate'
|
||||
|
@ -51,13 +69,26 @@ steps:
|
|||
inputs:
|
||||
provProfileSecureFile: 'Xamarin Forms iOS Provisioning.mobileprovision'
|
||||
|
||||
- task: XamariniOS@2
|
||||
displayName: 'Build Xamarin.iOS solution $(slnPath)'
|
||||
- task: MSBuild@1
|
||||
displayName: 'Build Control Gallery IPA'
|
||||
inputs:
|
||||
solutionFile: $(slnPath)
|
||||
solution: 'Xamarin.Forms.ControlGallery.iOS/Xamarin.Forms.ControlGallery.iOS.csproj'
|
||||
configuration: $(buildConfiguration)
|
||||
args: /bl:$(Build.ArtifactStagingDirectory)/ios-2017_$(buildForVS2017).binlog
|
||||
msbuildArguments: /bl:$(Build.ArtifactStagingDirectory)/ios-cg.binlog /p:BuildIpa=true
|
||||
|
||||
- task: MSBuild@1
|
||||
displayName: 'Build iOS Tests'
|
||||
inputs:
|
||||
solution: 'Xamarin.Forms.Core.iOS.UITests/Xamarin.Forms.Core.iOS.UITests.csproj'
|
||||
configuration: $(buildConfiguration)
|
||||
msbuildArguments: /bl:$(Build.ArtifactStagingDirectory)/ios-uitests.binlog
|
||||
|
||||
- task: MSBuild@1
|
||||
displayName: 'Build Android Tests'
|
||||
inputs:
|
||||
solution: 'Xamarin.Forms.Core.Android.UITests/Xamarin.Forms.Core.Android.UITests.csproj'
|
||||
configuration: $(buildConfiguration)
|
||||
msbuildArguments: /bl:$(Build.ArtifactStagingDirectory)/android-uitests.binlog
|
||||
|
||||
- task: CopyFiles@2
|
||||
displayName: 'Copy test-cloud.exe'
|
||||
|
@ -108,4 +139,4 @@ steps:
|
|||
condition: always()
|
||||
inputs:
|
||||
PathtoPublish: '$(build.artifactstagingdirectory)'
|
||||
ArtifactName: OSXArtifacts
|
||||
ArtifactName: OSXArtifacts
|
||||
|
|
|
@ -64,6 +64,8 @@ jobs:
|
|||
displayName: 'NuGet restore ${{ parameters.slnPath }}'
|
||||
inputs:
|
||||
restoreSolution: ${{ parameters.slnPath }}
|
||||
feedsToUse: config
|
||||
nugetConfigPath: 'DevopsNuget.config'
|
||||
|
||||
- script: build.cmd -Target BuildForNuget -ScriptArgs '-configuration="$(BuildConfiguration)"','-Build_ArtifactStagingDirectory="$(Build.ArtifactStagingDirectory)"'
|
||||
name: winbuild
|
||||
|
|
Загрузка…
Ссылка в новой задаче