Skip to content

Commit d2025b0

Browse files
[tests] bump to Xamarin.Forms 4.7 for dotnet MSBuild tests
Context: dotnet/maui-samples@571e1c0 Xamarin.Forms 4.7.x is required to solve a crash on startup in .NET 5+. We should bump to Xamarin.Forms 4.7 in our MSBuild tests. This requires some additional AndroidX packages to be bumped. I updated a couple tests that will now pass under a `dotnet` context.
1 parent 633a98e commit d2025b0

File tree

6 files changed

+37
-15
lines changed

6 files changed

+37
-15
lines changed

src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/BuildTest.cs

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1908,14 +1908,14 @@ public void CheckLintConfigMerging ()
19081908
}
19091909

19101910
[Test]
1911+
[Category ("dotnet")]
19111912
/// <summary>
19121913
/// Reference https://bugzilla.xamarin.com/show_bug.cgi?id=29568
19131914
/// </summary>
19141915
public void BuildLibraryWhichUsesResources ([Values (false, true)] bool isRelease)
19151916
{
1916-
var proj = new XamarinAndroidLibraryProject () { IsRelease = isRelease };
1917-
proj.PackageReferences.Add (KnownPackages.AndroidSupportV4_27_0_2_1);
1918-
proj.PackageReferences.Add (KnownPackages.SupportV7AppCompat_27_0_2_1);
1917+
var proj = new XamarinAndroidLibraryProject { IsRelease = isRelease };
1918+
proj.PackageReferences.Add (KnownPackages.AndroidXAppCompat);
19191919
proj.AndroidResources.Add (new AndroidItem.AndroidResource ("Resources\\values\\Styles.xml") {
19201920
TextContent = () => @"<?xml version=""1.0"" encoding=""UTF-8"" ?>
19211921
<resources>
@@ -4123,6 +4123,7 @@ public void AbiDelimiters ([Values ("armeabi-v7a%3bx86", "armeabi-v7a,x86")] str
41234123
}
41244124

41254125
[Test]
4126+
[Category ("dotnet")]
41264127
public void WorkManager ()
41274128
{
41284129
var proj = new XamarinFormsAndroidApplicationProject ();
@@ -4140,7 +4141,8 @@ public MyWorker (Context c, WorkerParameters p) : base (c, p) { }
41404141
}
41414142
"
41424143
});
4143-
proj.PackageReferences.Add (KnownPackages.Android_Arch_Work_Runtime);
4144+
proj.PackageReferences.Add (
4145+
Builder.UseDotNet ? KnownPackages.AndroidXWorkRuntime : KnownPackages.Android_Arch_Work_Runtime);
41444146
using (var b = CreateApkBuilder (Path.Combine ("temp", TestName))) {
41454147
Assert.IsTrue (b.Build (proj), "Build should have succeeded.");
41464148
}

src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/IncrementalBuildTest.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1132,6 +1132,7 @@ public void AndroidAssetMissing ()
11321132
}
11331133

11341134
[Test]
1135+
[Category ("dotnet")]
11351136
[NonParallelizable]
11361137
public void AndroidXMigrationBug ()
11371138
{

src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Android/KnownPackages.cs

Lines changed: 23 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -222,9 +222,14 @@ public static void AddDotNetCompatPackages (this IShortFormProject project)
222222
},
223223
}
224224
};
225-
public static Package XamarinForms_4_5_0_617 = new Package {
225+
public static Package XamarinForms_4_7_0_1142 = new Package {
226226
Id = "Xamarin.Forms",
227-
Version = "4.5.0.617",
227+
Version = "4.7.0.1142",
228+
TargetFramework = "MonoAndroid10.0",
229+
};
230+
public static Package XamarinFormsMaps_4_7_0_1142 = new Package {
231+
Id = "Xamarin.Forms.Maps",
232+
Version = "4.7.0.1142",
228233
TargetFramework = "MonoAndroid10.0",
229234
};
230235
/* additional packages for XForms 4.5 on NET5 */
@@ -301,12 +306,12 @@ public static void AddDotNetCompatPackages (this IShortFormProject project)
301306
};
302307
public static Package AndroidXAppCompat = new Package {
303308
Id = "Xamarin.AndroidX.AppCompat",
304-
Version = "1.1.0",
309+
Version = "1.1.0.1",
305310
TargetFramework = "MonoAndroid10",
306311
};
307312
public static Package AndroidXBrowser = new Package {
308313
Id = "Xamarin.AndroidX.Browser",
309-
Version = "1.0.0",
314+
Version = "1.2.0.1",
310315
TargetFramework = "MonoAndroid90",
311316
References = {
312317
new BuildItem.Reference ("Xamarin.AndroidX.Browser") {
@@ -316,7 +321,7 @@ public static void AddDotNetCompatPackages (this IShortFormProject project)
316321
};
317322
public static Package AndroidXMediaRouter = new Package {
318323
Id = "Xamarin.AndroidX.MediaRouter",
319-
Version = "1.1.0",
324+
Version = "1.1.0.1",
320325
TargetFramework = "MonoAndroid90",
321326
References = {
322327
new BuildItem.Reference ("Xamarin.AndroidX.MediaRouter") {
@@ -326,7 +331,7 @@ public static void AddDotNetCompatPackages (this IShortFormProject project)
326331
};
327332
public static Package AndroidXLegacySupportV4 = new Package {
328333
Id = "Xamarin.AndroidX.Legacy.Support.V4",
329-
Version = "1.0.0",
334+
Version = "1.0.0.1",
330335
TargetFramework = "MonoAndroid90",
331336
References = {
332337
new BuildItem.Reference ("Xamarin.AndroidX.Legacy.Support.V4") {
@@ -336,7 +341,7 @@ public static void AddDotNetCompatPackages (this IShortFormProject project)
336341
};
337342
public static Package AndroidXLifecycleLiveData = new Package {
338343
Id = "Xamarin.AndroidX.Lifecycle.LiveData",
339-
Version = "2.1.0",
344+
Version = "2.2.0.1",
340345
TargetFramework = "MonoAndroid90",
341346
References = {
342347
new BuildItem.Reference ("Xamarin.AndroidX.Lifecycle.LiveData") {
@@ -354,9 +359,19 @@ public static void AddDotNetCompatPackages (this IShortFormProject project)
354359
},
355360
}
356361
};
362+
public static Package AndroidXWorkRuntime = new Package {
363+
Id = "Xamarin.AndroidX.Work.Runtime",
364+
Version = "2.3.4.3",
365+
TargetFramework = "MonoAndroid90",
366+
References = {
367+
new BuildItem.Reference("Xamarin.AndroidX.Work.Runtime") {
368+
MetadataValues = "HintPath=..\\packages\\Xamarin.AndroidX.Work.Runtime.2.3.4.3\\lib\\MonoAndroid90\\Xamarin.AndroidX.Work.Runtime.dll"
369+
}
370+
}
371+
};
357372
public static Package XamarinGoogleAndroidMaterial = new Package {
358373
Id = "Xamarin.Google.Android.Material",
359-
Version = "1.0.0",
374+
Version = "1.0.0.1",
360375
TargetFramework = "MonoAndroid90",
361376
References = {
362377
new BuildItem.Reference ("Xamarin.Google.Android.Material") {

src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Android/XamarinFormsAndroidApplicationProject.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ public XamarinFormsAndroidApplicationProject (string debugConfigurationName = "D
4141
: base (debugConfigurationName, releaseConfigurationName)
4242
{
4343
if (Builder.UseDotNet) {
44-
PackageReferences.Add (KnownPackages.XamarinForms_4_5_0_617);
44+
PackageReferences.Add (KnownPackages.XamarinForms_4_7_0_1142);
4545
this.AddDotNetCompatPackages ();
4646
} else {
4747
PackageReferences.Add (KnownPackages.XamarinForms_4_0_0_425677);

src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Android/XamarinFormsMapsApplicationProject.cs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,11 @@ static XamarinFormsMapsApplicationProject ()
1515

1616
public XamarinFormsMapsApplicationProject ()
1717
{
18-
PackageReferences.Add (KnownPackages.XamarinFormsMaps_4_0_0_425677);
18+
if (Builder.UseDotNet) {
19+
PackageReferences.Add (KnownPackages.XamarinFormsMaps_4_7_0_1142);
20+
} else {
21+
PackageReferences.Add (KnownPackages.XamarinFormsMaps_4_0_0_425677);
22+
}
1923
MainActivity = MainActivity.Replace ("//${AFTER_FORMS_INIT}", "Xamarin.FormsMaps.Init (this, savedInstanceState);");
2024
//NOTE: API_KEY metadata just has to *exist*
2125
AndroidManifest = AndroidManifest.Replace ("</application>", "<meta-data android:name=\"com.google.android.maps.v2.API_KEY\" android:value=\"\" /></application>");

src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Android/XamarinFormsXASdkProject.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ static XamarinFormsXASdkProject ()
4343
public XamarinFormsXASdkProject (string outputType = "Exe")
4444
: base (outputType)
4545
{
46-
PackageReferences.Add (KnownPackages.XamarinForms_4_5_0_617);
46+
PackageReferences.Add (KnownPackages.XamarinForms_4_7_0_1142);
4747
this.AddDotNetCompatPackages ();
4848

4949
// Workaround for AndroidX, see: https://github.com/xamarin/AndroidSupportComponents/pull/239

0 commit comments

Comments
 (0)