Error compiling MAUI project - missing MonoAOTCompiler.Task - maui

I'm creating a MAUI application targeting iOS and Android. I have been using Visual Studio 2022 for Mac version 17.3. That version doesn't really support archiving the app, so I installed version 17.4 preview 2.1. When I try to compile my app I get the following error:
Unable to find Microsoft.NET.Runtime.MonoAOTCompiler.Task
I found a post that indicated I should run the command:
dotnet add package Microsoft.NET.Runtime.MonoAOTCompiler.Task --version 7.0.0-rc.2.22472.3
When I run that command in terminal I get the error:
error: Value cannot be null. (Parameter 'version')
Everything I have found indicated that the problem should have been fixed in Preview 2.1 of Visual Studio 2022 for Mac, but it is still occurring.
Can anyone help me resolve this? I need to publish my app to the stores and can't get it to compile in release mode or create the archive because of that.

You need to add the package to your project.
First, you should right click your project name and choose the Manage Nuget packages button.
Second, you can search the package Microsoft.NET.Runtime.MonoAOTCompiler.Task and install it.
Then you successfully add the package to your project.

Related

.NET Maui - You are using a preview version of .NET - Where is this coming from and what version am I using?

I am running VS 17.3 Preview 6 on windows11. I have a .net maui app. when i load the app into vs, I get a message saying that I am using a preview version of .net. I don't think I've installed a preview of .net6 on this machine since it is pretty much brand new. i am using
.net 6.0 - ios for ios.
.net 6.0 - android for android.
.net 6.0 - windows 10.0.10941.0 for windows, but don't plan to build for windows.
Basically, why am i getting a message about using a preview version of .net? Is this some artifact message because I am using VS17.3 preview x? any idea how to make this go away since it is annoying? Is this due to .net 7 preview being installed with vs17.3?
To find out what version of MAUI you are using
Open solution or project in Visual Studio (Currently you should use Visual Studio Preview)
Right click on Project
Select Manage NuGet Packages...
Go to the register Installed
Check the versions of the packages Microsoft.Maui.Dependencies and Microsoft.Maui.Extensions
To find out what version of dotnet SDK you are using
Open PowerShell or cmd
Change directory to the path of your project
Execute dotnet --version

How to fix a packaged WinUI3 app build, what makes trouble with ProcessorArchitecture?

Today i'm trying to build a .NET 6 WinUI3 App in AzureDevOps. My csproj contains:
<TargetFramework>net6.0-windows10.0.22000.0</TargetFramework>
<TargetPlatformMinVersion>10.0.17763.0</TargetPlatformMinVersion>
<RootNamespace>MyApp</RootNamespace>
<ApplicationManifest>app.manifest</ApplicationManifest>
<Platforms>x86;x64;arm64</Platforms>
<RuntimeIdentifiers>win10-x86;win10-x64;win10-arm64</RuntimeIdentifiers>
<PublishProfile>Properties\PublishProfiles\win10-$(Platform).pubxml</PublishProfile>
<UseWinUI>true</UseWinUI>
<EnableMsixTooling>true</EnableMsixTooling>
<ApplicationIcon>Assets\2764a994e49c43a2932b6d7f465e99eb.ico</ApplicationIcon>
<PlatformTarget>x64</PlatformTarget>
As "Build Platform" i have defined in Pipelines variable "x64". As error i become:
[error]C:\Users\VssAdministrator.nuget\packages\microsoft.windowsappsdk\1.1.2\buildTransitive\Microsoft.Build.Msix.Packaging.targets(1016,5): Error : Packaged .NET applications with an app host exe cannot be ProcessorArchitecture neutral. Please specify a RuntimeIdentifier or a Platform other than AnyCPU.
I'm wondering why this happens and how to fix it?
I figured this out! In Visual Studio, right click on your solution and click properties. For me, a few of the projects didn't have a Platform selected. I changed them all to x64 and the build succeeded. Hope this helps.

correct way to install latest VS Code + .Net SDK + Omnisharp ext, and avoid error: "Attempted to update project that is not loaded"

I have a clean install of Ubuntu 20.04 LTS. I want to install Visual Studio Code, .NET SDK 5.0, and what seems to be the best suggested C# extension, this, the OmniSharp one.
I first tried to install with the Ubuntu Software app. In Visual Studio Code I installed the suggested OmniSharp extension. When trying to build a project, I got the mentioned error.
I tried installing using the terminal with this tutorial which seems good and straighforward - same error, when at the console app example stage after running dotnet new console.
This SO question has three proper suggestions, though I would like to use the latest SDK, and I do not have Mono installed, also I want to use Visual Studio Code, as far as I know, that is a newer approach than Mono.
The omnisharp.path": "latest solution does not work.
i faced the same problem and in the end i find the solution here
https://medium.com/#stnlyli/visual-studio-code-failed-to-load-c-extension-on-ubuntu-5cc56dd1cdb7
prefix:
file->preferences->settings-> search for "Omnisharp: Use Global Mono" and make it never

error CS0234: The type or namespace name `iOS' does not exist in the namespace `UnityEditor'. Are you missing an assembly reference?

I have installed the latest versions of Unity (2017.3.1), Daydream SDKs (GVR SDK for Unity v1.130.0) and followed the steps here: https://developers.google.com/vr/develop/unity/get-started#configure_build_settings_and_player_settings
However when I press Play I get the following error, ideas on what is the reason & how to fix it?
Assets/GoogleVR/Editor/GvrBuildProcessor.cs(20,19): error CS0234: The type or namespace name 'iOS' does not exist in the namespace 'UnityEditor'. Are you missing an assembly reference?
Edit: Issue fixed after a few hours of submission on GitHub with the release of GVR SDK for Unity v1.130.1
If you're facing with this problem there are 2 steps to solve it:
Make sure that "iOS Build Support" is checked in Unity Hub -> Installs as Adam mentioned (if U're developing for iOS platform then this option most definitely is already checked).
Place your script in Assets -> Editor folder. UnityEditor.iOS.Xcode namespace cannot be used in your main project. It works only in special Assembly-CSharp-Editor project intended to modify native Xcode project. (That's the option that worked for me after searching a ton of forums).
The Official Solution:
https://forum.unity.com/threads/unityeditor-ios-xcode-ios-namespace-doesnt-exist.365381/
Step by step I did:
Figure 1 shows the Unity Download Assistent installation file that should be run.
Figure 2 shows the "iOS Build Support" option that should be checked for installation.
I went ahead and changed the "Current Platform" to "iOS" in Unity Hub, This is a quick fix and it works now.
Change "Current Platform" to iOS Image:
If you have installed IOS build through unity hub while the project is open, try restarting Unity Hub and Unity Editor. This solved my issue.
I met this issue When useing unity-arkit-plugin to develop something, i did nothing but import this plugin it throw this error .
And after i installed UnitySetup-IOS-Support-for-Editor-2017.3.0f3.pkg ,the issue fixed.
This usually happens when iOS Build Support is not installed in Unity Hub

Invalid or corrupt jarfile android.jar issue

I am trying to build and run an android project using the phonegap framework.
I have configured the IDE and followed the steps described in an official tutorial (see link above).
The problem is that I never had a chance to build the project since it contains errors. The major one is (see screenshots):
Archive for required library: 'C:/Program Files/Android/android-sdk/platforms/android-8/android.jar' in project 'xxx' cannot be read or is not a valid ZIP file
Also, I have tried to manually run the aforementioned android.jar but got the same error:
The problem keeps reproducing through several SDK versions: r14, r15.
BTW, I experience no troubles building a project using other android versions, e.g., 2.3.
Would someone help me out? Thanks!
Use the Android package manager to remove and then re-download the Android 2.2 SDK as something is corrupt with that package.