From 59cbcc761d06cdb03332d6df0a28feebdc6781bf Mon Sep 17 00:00:00 2001 From: Morten Nielsen Date: Wed, 3 Jul 2024 12:41:49 -0700 Subject: [PATCH] Add MAUI sample and delete Android --- src/NmeaParser.sln | 74 +-- src/SampleApp.Droid/MainActivity.cs | 173 ------- .../Resources/AboutResources.txt | 44 -- .../Resources/layout/activity_main.xml | 55 --- .../Resources/values/Strings.xml | 3 - .../values/ic_launcher_background.xml | 4 - src/SampleApp.Droid/SampleApp.Droid.csproj | 22 - src/SampleApp.Maui/App.xaml | 14 + src/SampleApp.Maui/App.xaml.cs | 12 + src/SampleApp.Maui/AppShell.xaml | 15 + src/SampleApp.Maui/AppShell.xaml.cs | 10 + src/SampleApp.Maui/DeviceHelper.cs | 78 ++++ src/SampleApp.Maui/MainPage.xaml | 41 ++ src/SampleApp.Maui/MainPage.xaml.cs | 81 ++++ src/SampleApp.Maui/MauiProgram.cs | 25 + .../Platforms/Android}/AndroidManifest.xml | 5 +- .../Platforms/Android/MainActivity.cs | 11 + .../Platforms/Android/MainApplication.cs | 16 + .../Android/Resources/values/colors.xml | 6 + .../Platforms/MacCatalyst/AppDelegate.cs | 10 + .../Platforms/MacCatalyst/Entitlements.plist | 14 + .../Platforms/MacCatalyst/Info.plist | 38 ++ .../Platforms/MacCatalyst/Program.cs | 16 + src/SampleApp.Maui/Platforms/Tizen/Main.cs | 17 + .../Platforms/Tizen/tizen-manifest.xml | 15 + src/SampleApp.Maui/Platforms/Windows/App.xaml | 8 + .../Platforms/Windows/App.xaml.cs | 25 + .../Platforms/Windows/Package.appxmanifest | 46 ++ .../Platforms/Windows/app.manifest | 15 + .../Platforms/iOS/AppDelegate.cs | 10 + src/SampleApp.Maui/Platforms/iOS/Info.plist | 39 ++ src/SampleApp.Maui/Platforms/iOS/Program.cs | 16 + .../Properties/launchSettings.json | 8 + .../Resources/AppIcon/appicon.svg | 4 + .../Resources/AppIcon}/icon.png | Bin .../Resources/Fonts/OpenSans-Regular.ttf | Bin 0 -> 107292 bytes .../Resources/Fonts/OpenSans-Semibold.ttf | Bin 0 -> 111164 bytes .../Resources/Raw/AboutAssets.txt | 15 + .../Resources/Splash/splash.svg | 8 + .../Resources/Styles/Colors.xaml | 45 ++ .../Resources/Styles/Styles.xaml | 426 ++++++++++++++++++ src/SampleApp.Maui/SampleApp.Maui.csproj | 68 +++ 42 files changed, 1192 insertions(+), 340 deletions(-) delete mode 100644 src/SampleApp.Droid/MainActivity.cs delete mode 100644 src/SampleApp.Droid/Resources/AboutResources.txt delete mode 100644 src/SampleApp.Droid/Resources/layout/activity_main.xml delete mode 100644 src/SampleApp.Droid/Resources/values/Strings.xml delete mode 100644 src/SampleApp.Droid/Resources/values/ic_launcher_background.xml delete mode 100644 src/SampleApp.Droid/SampleApp.Droid.csproj create mode 100644 src/SampleApp.Maui/App.xaml create mode 100644 src/SampleApp.Maui/App.xaml.cs create mode 100644 src/SampleApp.Maui/AppShell.xaml create mode 100644 src/SampleApp.Maui/AppShell.xaml.cs create mode 100644 src/SampleApp.Maui/DeviceHelper.cs create mode 100644 src/SampleApp.Maui/MainPage.xaml create mode 100644 src/SampleApp.Maui/MainPage.xaml.cs create mode 100644 src/SampleApp.Maui/MauiProgram.cs rename src/{SampleApp.Droid => SampleApp.Maui/Platforms/Android}/AndroidManifest.xml (58%) create mode 100644 src/SampleApp.Maui/Platforms/Android/MainActivity.cs create mode 100644 src/SampleApp.Maui/Platforms/Android/MainApplication.cs create mode 100644 src/SampleApp.Maui/Platforms/Android/Resources/values/colors.xml create mode 100644 src/SampleApp.Maui/Platforms/MacCatalyst/AppDelegate.cs create mode 100644 src/SampleApp.Maui/Platforms/MacCatalyst/Entitlements.plist create mode 100644 src/SampleApp.Maui/Platforms/MacCatalyst/Info.plist create mode 100644 src/SampleApp.Maui/Platforms/MacCatalyst/Program.cs create mode 100644 src/SampleApp.Maui/Platforms/Tizen/Main.cs create mode 100644 src/SampleApp.Maui/Platforms/Tizen/tizen-manifest.xml create mode 100644 src/SampleApp.Maui/Platforms/Windows/App.xaml create mode 100644 src/SampleApp.Maui/Platforms/Windows/App.xaml.cs create mode 100644 src/SampleApp.Maui/Platforms/Windows/Package.appxmanifest create mode 100644 src/SampleApp.Maui/Platforms/Windows/app.manifest create mode 100644 src/SampleApp.Maui/Platforms/iOS/AppDelegate.cs create mode 100644 src/SampleApp.Maui/Platforms/iOS/Info.plist create mode 100644 src/SampleApp.Maui/Platforms/iOS/Program.cs create mode 100644 src/SampleApp.Maui/Properties/launchSettings.json create mode 100644 src/SampleApp.Maui/Resources/AppIcon/appicon.svg rename src/{SampleApp.Droid/Resources/drawable => SampleApp.Maui/Resources/AppIcon}/icon.png (100%) create mode 100644 src/SampleApp.Maui/Resources/Fonts/OpenSans-Regular.ttf create mode 100644 src/SampleApp.Maui/Resources/Fonts/OpenSans-Semibold.ttf create mode 100644 src/SampleApp.Maui/Resources/Raw/AboutAssets.txt create mode 100644 src/SampleApp.Maui/Resources/Splash/splash.svg create mode 100644 src/SampleApp.Maui/Resources/Styles/Colors.xaml create mode 100644 src/SampleApp.Maui/Resources/Styles/Styles.xaml create mode 100644 src/SampleApp.Maui/SampleApp.Maui.csproj diff --git a/src/NmeaParser.sln b/src/NmeaParser.sln index d5e43f65..975e272e 100644 --- a/src/NmeaParser.sln +++ b/src/NmeaParser.sln @@ -1,7 +1,7 @@  Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 16 -VisualStudioVersion = 16.0.0.0 +# Visual Studio Version 17 +VisualStudioVersion = 17.10.34916.146 MinimumVisualStudioVersion = 10.0.40219.1 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "NmeaParser", "NmeaParser", "{1701F3BA-A09C-4706-A612-24FD9340FC18}" EndProject @@ -29,20 +29,15 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NmeaParser.Tests.UWP", "Uni EndProject Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "NmeaParser.Tests", "UnitTests\NmeaParser.Tests\NmeaParser.Tests.shproj", "{979AE182-EB59-4181-9D45-3FD6E4817F11}" EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Android", "Android", "{456E7573-3324-43CB-8BA0-8D9C300EEB50}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SampleApp.Droid", "SampleApp.Droid\SampleApp.Droid.csproj", "{48540D33-4349-42D2-9D49-144A7049565A}" -EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NmeaParser.Tests.Net", "UnitTests\NmeaParser.Tests.NET\NmeaParser.Tests.Net.csproj", "{73EFB2EF-DE40-46C4-9685-745A9815C0D2}" EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SampleApp.NetCore", "SampleApp.WinDesktop\SampleApp.NetCore.csproj", "{6F97C607-42A0-458B-B9E9-CF5AF53CBB1E}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Maui", "Maui", "{09136598-F229-45CD-8AEA-97DC890C3314}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SampleApp.Maui", "SampleApp.Maui\SampleApp.Maui.csproj", "{9C02F330-0392-41F3-BBC1-D6E389FA9CCC}" +EndProject Global - GlobalSection(SharedMSBuildProjectFiles) = preSolution - UnitTests\NmeaParser.Tests\NmeaParser.Tests.projitems*{73efb2ef-de40-46c4-9685-745a9815c0d2}*SharedItemsImports = 5 - UnitTests\NmeaParser.Tests\NmeaParser.Tests.projitems*{92cad93b-6c3b-45a0-a723-be046de50fec}*SharedItemsImports = 4 - UnitTests\NmeaParser.Tests\NmeaParser.Tests.projitems*{979ae182-eb59-4181-9d45-3fd6e4817f11}*SharedItemsImports = 13 - EndGlobalSection GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU Debug|ARM = Debug|ARM @@ -116,30 +111,6 @@ Global {92CAD93B-6C3B-45A0-A723-BE046DE50FEC}.Release|x86.ActiveCfg = Release|x86 {92CAD93B-6C3B-45A0-A723-BE046DE50FEC}.Release|x86.Build.0 = Release|x86 {92CAD93B-6C3B-45A0-A723-BE046DE50FEC}.Release|x86.Deploy.0 = Release|x86 - {48540D33-4349-42D2-9D49-144A7049565A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {48540D33-4349-42D2-9D49-144A7049565A}.Debug|Any CPU.Build.0 = Debug|Any CPU - {48540D33-4349-42D2-9D49-144A7049565A}.Debug|Any CPU.Deploy.0 = Debug|Any CPU - {48540D33-4349-42D2-9D49-144A7049565A}.Debug|ARM.ActiveCfg = Debug|Any CPU - {48540D33-4349-42D2-9D49-144A7049565A}.Debug|ARM.Build.0 = Debug|Any CPU - {48540D33-4349-42D2-9D49-144A7049565A}.Debug|ARM.Deploy.0 = Debug|Any CPU - {48540D33-4349-42D2-9D49-144A7049565A}.Debug|x64.ActiveCfg = Debug|Any CPU - {48540D33-4349-42D2-9D49-144A7049565A}.Debug|x64.Build.0 = Debug|Any CPU - {48540D33-4349-42D2-9D49-144A7049565A}.Debug|x64.Deploy.0 = Debug|Any CPU - {48540D33-4349-42D2-9D49-144A7049565A}.Debug|x86.ActiveCfg = Debug|Any CPU - {48540D33-4349-42D2-9D49-144A7049565A}.Debug|x86.Build.0 = Debug|Any CPU - {48540D33-4349-42D2-9D49-144A7049565A}.Debug|x86.Deploy.0 = Debug|Any CPU - {48540D33-4349-42D2-9D49-144A7049565A}.Release|Any CPU.ActiveCfg = Release|Any CPU - {48540D33-4349-42D2-9D49-144A7049565A}.Release|Any CPU.Build.0 = Release|Any CPU - {48540D33-4349-42D2-9D49-144A7049565A}.Release|Any CPU.Deploy.0 = Release|Any CPU - {48540D33-4349-42D2-9D49-144A7049565A}.Release|ARM.ActiveCfg = Release|Any CPU - {48540D33-4349-42D2-9D49-144A7049565A}.Release|ARM.Build.0 = Release|Any CPU - {48540D33-4349-42D2-9D49-144A7049565A}.Release|ARM.Deploy.0 = Release|Any CPU - {48540D33-4349-42D2-9D49-144A7049565A}.Release|x64.ActiveCfg = Release|Any CPU - {48540D33-4349-42D2-9D49-144A7049565A}.Release|x64.Build.0 = Release|Any CPU - {48540D33-4349-42D2-9D49-144A7049565A}.Release|x64.Deploy.0 = Release|Any CPU - {48540D33-4349-42D2-9D49-144A7049565A}.Release|x86.ActiveCfg = Release|Any CPU - {48540D33-4349-42D2-9D49-144A7049565A}.Release|x86.Build.0 = Release|Any CPU - {48540D33-4349-42D2-9D49-144A7049565A}.Release|x86.Deploy.0 = Release|Any CPU {73EFB2EF-DE40-46C4-9685-745A9815C0D2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {73EFB2EF-DE40-46C4-9685-745A9815C0D2}.Debug|Any CPU.Build.0 = Debug|Any CPU {73EFB2EF-DE40-46C4-9685-745A9815C0D2}.Debug|ARM.ActiveCfg = Debug|Any CPU @@ -172,6 +143,30 @@ Global {6F97C607-42A0-458B-B9E9-CF5AF53CBB1E}.Release|x64.Build.0 = Release|Any CPU {6F97C607-42A0-458B-B9E9-CF5AF53CBB1E}.Release|x86.ActiveCfg = Release|Any CPU {6F97C607-42A0-458B-B9E9-CF5AF53CBB1E}.Release|x86.Build.0 = Release|Any CPU + {9C02F330-0392-41F3-BBC1-D6E389FA9CCC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {9C02F330-0392-41F3-BBC1-D6E389FA9CCC}.Debug|Any CPU.Build.0 = Debug|Any CPU + {9C02F330-0392-41F3-BBC1-D6E389FA9CCC}.Debug|Any CPU.Deploy.0 = Debug|Any CPU + {9C02F330-0392-41F3-BBC1-D6E389FA9CCC}.Debug|ARM.ActiveCfg = Debug|Any CPU + {9C02F330-0392-41F3-BBC1-D6E389FA9CCC}.Debug|ARM.Build.0 = Debug|Any CPU + {9C02F330-0392-41F3-BBC1-D6E389FA9CCC}.Debug|ARM.Deploy.0 = Debug|Any CPU + {9C02F330-0392-41F3-BBC1-D6E389FA9CCC}.Debug|x64.ActiveCfg = Debug|Any CPU + {9C02F330-0392-41F3-BBC1-D6E389FA9CCC}.Debug|x64.Build.0 = Debug|Any CPU + {9C02F330-0392-41F3-BBC1-D6E389FA9CCC}.Debug|x64.Deploy.0 = Debug|Any CPU + {9C02F330-0392-41F3-BBC1-D6E389FA9CCC}.Debug|x86.ActiveCfg = Debug|Any CPU + {9C02F330-0392-41F3-BBC1-D6E389FA9CCC}.Debug|x86.Build.0 = Debug|Any CPU + {9C02F330-0392-41F3-BBC1-D6E389FA9CCC}.Debug|x86.Deploy.0 = Debug|Any CPU + {9C02F330-0392-41F3-BBC1-D6E389FA9CCC}.Release|Any CPU.ActiveCfg = Release|Any CPU + {9C02F330-0392-41F3-BBC1-D6E389FA9CCC}.Release|Any CPU.Build.0 = Release|Any CPU + {9C02F330-0392-41F3-BBC1-D6E389FA9CCC}.Release|Any CPU.Deploy.0 = Release|Any CPU + {9C02F330-0392-41F3-BBC1-D6E389FA9CCC}.Release|ARM.ActiveCfg = Release|Any CPU + {9C02F330-0392-41F3-BBC1-D6E389FA9CCC}.Release|ARM.Build.0 = Release|Any CPU + {9C02F330-0392-41F3-BBC1-D6E389FA9CCC}.Release|ARM.Deploy.0 = Release|Any CPU + {9C02F330-0392-41F3-BBC1-D6E389FA9CCC}.Release|x64.ActiveCfg = Release|Any CPU + {9C02F330-0392-41F3-BBC1-D6E389FA9CCC}.Release|x64.Build.0 = Release|Any CPU + {9C02F330-0392-41F3-BBC1-D6E389FA9CCC}.Release|x64.Deploy.0 = Release|Any CPU + {9C02F330-0392-41F3-BBC1-D6E389FA9CCC}.Release|x86.ActiveCfg = Release|Any CPU + {9C02F330-0392-41F3-BBC1-D6E389FA9CCC}.Release|x86.Build.0 = Release|Any CPU + {9C02F330-0392-41F3-BBC1-D6E389FA9CCC}.Release|x86.Deploy.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -184,12 +179,17 @@ Global {1ADC3666-1DDB-48C4-9811-1E58B6D09A7C} = {1701F3BA-A09C-4706-A612-24FD9340FC18} {92CAD93B-6C3B-45A0-A723-BE046DE50FEC} = {28B8E327-C504-4E08-B2CE-09D1CBB8B904} {979AE182-EB59-4181-9D45-3FD6E4817F11} = {28B8E327-C504-4E08-B2CE-09D1CBB8B904} - {456E7573-3324-43CB-8BA0-8D9C300EEB50} = {A4B9D59A-C8C6-4199-A7F3-F3AF0C748281} - {48540D33-4349-42D2-9D49-144A7049565A} = {456E7573-3324-43CB-8BA0-8D9C300EEB50} {73EFB2EF-DE40-46C4-9685-745A9815C0D2} = {28B8E327-C504-4E08-B2CE-09D1CBB8B904} {6F97C607-42A0-458B-B9E9-CF5AF53CBB1E} = {7ABA337E-6748-484E-A0F4-E1715E1C95F1} + {09136598-F229-45CD-8AEA-97DC890C3314} = {A4B9D59A-C8C6-4199-A7F3-F3AF0C748281} + {9C02F330-0392-41F3-BBC1-D6E389FA9CCC} = {09136598-F229-45CD-8AEA-97DC890C3314} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {03788B53-C0BF-485B-AA19-A9EAB0E9AF7B} EndGlobalSection + GlobalSection(SharedMSBuildProjectFiles) = preSolution + UnitTests\NmeaParser.Tests\NmeaParser.Tests.projitems*{73efb2ef-de40-46c4-9685-745a9815c0d2}*SharedItemsImports = 5 + UnitTests\NmeaParser.Tests\NmeaParser.Tests.projitems*{92cad93b-6c3b-45a0-a723-be046de50fec}*SharedItemsImports = 4 + UnitTests\NmeaParser.Tests\NmeaParser.Tests.projitems*{979ae182-eb59-4181-9d45-3fd6e4817f11}*SharedItemsImports = 13 + EndGlobalSection EndGlobal diff --git a/src/SampleApp.Droid/MainActivity.cs b/src/SampleApp.Droid/MainActivity.cs deleted file mode 100644 index 197ad8ab..00000000 --- a/src/SampleApp.Droid/MainActivity.cs +++ /dev/null @@ -1,173 +0,0 @@ -using Android; -using Android.Bluetooth; -using Android.Content.PM; -using AndroidX.Core.App; - -namespace SampleApp.Droid; - -[Activity(Label = "@string/app_name", MainLauncher = true, Icon = "@drawable/icon")] -public class MainActivity : Activity -{ - private Button startButton; - private Button stopButton; - - protected override void OnCreate(Bundle? savedInstanceState) - { - base.OnCreate(savedInstanceState); - - // Set our view from the "main" layout resource - SetContentView(Resource.Layout.activity_main); - startButton = FindViewById