A Microsoft open-source framework for building native device applications spanning mobile, tablet, and desktop.
Hello @Jai Holloway ,
Thanks for your question.
The fix you found (setting Build Action to BundleResource) was the Xamarin
way. In .NET MAUI, that option no longer exists in the IDE. Instead,
Entitlements.plist should be configured through the .csproj file. Without
this configuration, the archive process may not complete code signing
and fails looking for ResourceRules.plist.
I recommend the following steps:
Step 1 — Make sure Entitlements.plist exists at:
YourApp/Platforms/iOS/Entitlements.plist
If missing, create it:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
</dict>
</plist>
Step 2 — Open your .csproj file and add:
<PropertyGroup Condition="$([MSBuild]::GetTargetPlatformIdentifier('$(TargetFramework)')) == 'ios'">
<CodesignEntitlements>Platforms/iOS/Entitlements.plist</CodesignEntitlements>
<CodesignKey>iPhone Distribution</CodesignKey>
<CodesignProvision>YOUR_PROVISIONING_PROFILE_NAME</CodesignProvision>
</PropertyGroup>
Step 3 — Clean and restore:
dotnet workload update
dotnet restore
Step 4 — Try archiving again and let me know if it works.
I hope this addresses your question. If this response was helpful, please consider following the guidance to provide feedback.