-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Developing a Maui Blazor MacCatalyst app for Apple macOS store is a terrible experience #12293
Description
Description
There are many things that could be better.
Developing a MacCatalyst app:
-
Building a Release version on Visual Studio for Mac always builds for the first framework in TargetFrameworks, not the selected framework
-
Visual Studio for Mac can not run any MAUI project in Release mode:
-
it doesn't work with XCode 14.2 and iOS 16.2
-
Microsoft.AspNetCore.Components.Web.HeadOutletthrows exception in the trimmed version -
adding signing to csproj results in
error MSB6006: "codesign" exited with code 3.
<EnableCodeSigning>True</EnableCodeSigning>
<CodesignKey>3rd Party Mac Developer Application: Jinjinov (**********)</CodesignKey>
<EnablePackageSigning>true</EnablePackageSigning>
<PackageSigningKey>3rd Party Mac Developer Installer: Jinjinov (**********)</PackageSigningKey>
- can't open developer tools for Blazor:
Publishing a MacCatalyst app on Apple macOS store:
-
rejected when trying to upload with Transporter:
The product archive package's signature is invalid. Ensure that it is signed with your "3rd Party Mac Developer Installer" certificate.A commented section incsprojthat the developer could un-comment would be helpful here. -
rejected when trying to upload with Transporter:
The product archive is invalid. The Info.plist must contain a LSApplicationCategoryType key, whose value is the UTI for a valid category. For more details, see "Submitting your Mac apps to the App Store".Some indication in Visual Studio would be helpful here. I had to add:
<key>LSApplicationCategoryType</key>
<string>public.app-category.productivity</string>
-
rejected when trying to upload with Transporter:
Invalid bundle. The bundle supports arm64 but not Intel-based Mac computers. Your build must include the x86_64 architecture to support Intel-based Mac computers.A commented section incsprojthat the developer could un-comment would be helpful here:<RuntimeIdentifiers>maccatalyst-x64;maccatalyst-arm64</RuntimeIdentifiers> -
rejected when trying to upload with Transporter:
Invalid Bundle. The key UIDeviceFamily in the app's Info.plist file contains one or more unsupported values '1'. (ID: e98a0fc1-d792-4b2d-854c-51a5d1649c82)I had to change
<key>UIDeviceFamily</key>
<array>
<integer>1</integer>
<integer>2</integer>
</array>
to
<key>UIDeviceFamily</key>
<array>
<integer>2</integer>
</array>
- rejected when trying to upload with Transporter:
App sandbox not enabled. The following executables must include the "com.apple.security.app-sandbox" entitlement with a Boolean value of true in the entitlements property listAdding aPlatforms/MacCatalyst/Entitlements.plistfile and<CodesignEntitlement>Platforms/MacCatalyst/Entitlements.plist</CodesignEntitlement>insidecsprojwould be helpful here. I had to add:
<?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>
<key>com.apple.security.app-sandbox</key>
<true/>
</dict>
</plist>
-
rejected because project name is used instead of application title: Can't set the app name in MacCatalyst project for macOS #12287
-
I had to add
<key>ITSAppUsesNonExemptEncryption</key><false/>toInfo.plist. Some indication in Visual Studio would be helpful here. -
Maui Blazor template lacks entitlements necessary to submit to Apple macOS store
Steps to Reproduce
- Create a new Maui Blazor project
- Try to publish a Maui Blazor MacCatalyst app on Apple macOS store
Link to public reproduction project repository
https://github.com/Jinjinov/Ididit
Version with bug
7.0 (current)
Last version that worked well
Unknown/Other
Affected platforms
macOS
Affected platform versions
macOS Ventura 13.1
Did you find any workaround?
No response
Relevant log output
No response