Create an IPA from Windows MAUI iOS + Extensions
Hi, we have a MAUI project with iOS extensions. We can run them on emulators and create the IPA either in Visual Studio or Visual Code on a Mac. Due to dotfuscator issues, we need to create the IPA, but now from Windows!
We can create the IPA using the following command, but WITHOUT EXTENSIONS:
dotnet publish E:\Repos...Client.iOS.csproj -f net8.0-ios -c Release -p:BuildIpa=true -p:RuntimeIdentifier=ios-arm64 -p:ServerAddress=170.16.72.71 -p:ServerUser=myuser -p:ServerPassword=pass -p:TcpPort=58181 -p:_DotNetRootRemoteDirectory=/Users/myuser/Library/Caches/Xamarin/XMA/SDKs/dotnet/ -p:DebugType=None -p:IncludeExtensionsInPack=true -p:EnableMsixTooling=true
That is, the command works, uses the Mac, works with and without obfuscation, and ultimately creates the IPA.
If we add the extensions with and without obfuscation, we get an error:
C:\Program Files\dotnet\packs\Microsoft.iOS.Sdk.net8.0_18.0\18.0.8319\tools\msbuild\iOS\Xamarin.Shared.targets(2827,3): error :
dsymutil salió con el código 1:
error: cannot parse the debug map for '/Users/myuser/Library/Caches/Xamarin/mtbs/builds/...
Client.iOS/5b3099101c15e7cd43fb5c6a440bdc7e0b1d735225d1945d66b4ce99e9206cf2/bin/Release/net8.0-ios/ios-ar
m64/...Client.iOS.app/PlugIns/...Client.iOS.ExtFirmar.appex/...
Client.iOS.ExtFirmar': No such file or directory
Checking the IPA we can create on the Mac, we see that a PlugIns folder is created, and the extensions are inside it. This leads us to believe that the Windows command isn't adding the extensions to the PlugIns folder, but it does search for them later, hence the error.
We've tried several options provided by the AI, but without success. We wanted to know if this can be done or if you have any suggestions for testing.
This was the link we used to successfully use extensions: https://vladislavantonyuk.github.io/articles/Extend-.NET-MAUI-application-with-iOS-Extensions/
I emphasize that it works for us on Mac, but on Windows it gives us the error mentioned above and that it only works for us if we remove the iOS extension projects; it doesn't work for us with extensions!