xamarinxamarin.macmacos-catalinanotarize

Notarize the Xamarin.MAC application


We have an existing MAC application developed using Xamarin.MAC and we are distributing the DMG file for the application to user.

when we open the application in catalina OS, it is showing some security errors .So we found that we need to notarize the application before distributing it to users.We are code signing the application using "application Developer ID".

So before apply the application for notarization ,we tried to add true in the release section of the .cs project of the Xamarin.MAC project. Then application is not running in the Release mode when we make the UseHardenedRuntime key and EnableCodeSigning key to true.

Can any one know why the applicaiton is not running when we set true to both UseHardenedRuntime and EnableCodeSigning key?

Is there any other ways to set UseHardenedRuntime in Xamarin application?

We have followed https://devblogs.microsoft.com/xamarin/macos-hardened-runtime-notary/ for notarize the Xamarin.MAC applicaiton? Is ther any other ways to do notarize the application dmg file?


Solution

  • I faced the same issue and the following solution worked for me. Please check your visual studio version for editing the entitlment.plist. when I was using visual studio 8.0.5 there was no Usehardened property in default entitlment.plist so I added manually but it didn't work for me.

    Then I updated the visual studio version into 8.1.4 then we can see "usehardened" property in entitlement. if there is no entitlment add new entitlement by clicking add file. And add entitlement name to custom entitlement field in project property after code signing field. Then we can make release build.