diff --git a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Android/KnownPackages.cs b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Android/KnownPackages.cs index 007ff8d4172..cd88431b83d 100644 --- a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Android/KnownPackages.cs +++ b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Android/KnownPackages.cs @@ -593,6 +593,10 @@ public static class KnownPackages Id = "Mono.AotProfiler.Android", Version = "7.0.0-preview1", }; + public static Package Microsoft_Intune_Maui_Essentials_android = new Package { + Id = "Microsoft.Intune.Maui.Essentials.android", + Version = "9.5.2-beta2", + }; } } diff --git a/tests/MSBuildDeviceIntegration/Tests/InstallAndRunTests.cs b/tests/MSBuildDeviceIntegration/Tests/InstallAndRunTests.cs index 8504f47d421..5d1840107e1 100644 --- a/tests/MSBuildDeviceIntegration/Tests/InstallAndRunTests.cs +++ b/tests/MSBuildDeviceIntegration/Tests/InstallAndRunTests.cs @@ -1017,6 +1017,32 @@ public void CheckResouceIsOverridden ([Values (true, false)] bool useAapt2) } } + [Test] + public void MicrosoftIntune ([Values (false, true)] bool isRelease) + { + if (!Builder.UseDotNet) + Assert.Ignore ("Test is only valid in .NET 7+"); + proj = new XamarinAndroidApplicationProject { + IsRelease = isRelease, + PackageReferences = { + KnownPackages.AndroidXAppCompat, + KnownPackages.Microsoft_Intune_Maui_Essentials_android, + }, + }; + proj.MainActivity = proj.DefaultMainActivity.Replace ("public class MainActivity : Activity", "public class MainActivity : AndroidX.AppCompat.App.AppCompatActivity"); + var abis = new string [] { "armeabi-v7a", "arm64-v8a", "x86", "x86_64" }; + proj.SetAndroidSupportedAbis (abis); + builder = CreateApkBuilder (); + builder.BuildLogFile = "install.log"; + Assert.IsTrue (builder.Install (proj), "Install should have succeeded."); + + RunProjectAndAssert (proj, builder); + + var timeoutInSeconds = 120; + var didStart = WaitForActivityToStart (proj.PackageName, "MainActivity", + Path.Combine (Root, builder.ProjectDirectory, "startup-logcat.log"), timeoutInSeconds); + Assert.IsTrue (didStart, "Activity should have started."); + } DotNetCLI CreateDotNetBuilder (string relativeProjectDir = null) {