Mac App Store app triggers "cannot verify free of malware" alert when opening as default app

My app Mocawave is a music player distributed through the Mac App Store. It declares specific audio document types (public.mp3, com.microsoft.waveform-audio, public.mpeg-4-audio, public.aac-audio) in its CFBundleDocumentTypes with a Viewer role.

When a user sets Mocawave as the default app for audio files and double-clicks an MP3 downloaded from the internet (which has the com.apple.quarantine extended attribute), macOS displays the alert:

"Apple could not verify [filename] is free of malware that may harm your Mac or compromise your privacy."

This does not happen when:

  • Opening the same file via NSOpenPanel from within the app
  • Opening the same file with Apple's Music.app or QuickTime Player

The app is:

  • Distributed through the Mac App Store
  • Sandboxed (com.apple.security.app-sandbox)
  • Uses com.apple.security.files.user-selected.read-write entitlement

The file being opened is a regular audio file (MP3), not an executable. Since the app is sandboxed and distributed through the App Store, I expected it to have sufficient trust to open quarantined data files without triggering Gatekeeper warnings — similar to how Music.app and QuickTime handle them.

Questions:

  1. Is there a specific entitlement or Info.plist configuration that allows a sandboxed Mac App Store app to open quarantined audio files without this alert?
  2. Is this expected behavior for third-party App Store apps, or could this indicate a misconfiguration on my end?

Environment: macOS 15 (Sequoia), app built with Swift/SwiftUI, targeting macOS 13+.

This is a well-known problem. It actually doesn't (directly) involve your app at all.

The operating system will do this with any document when you've configured the document to be opened with an app that doesn't explicitly declare support for it.

Since you have declared support for this file type, the most likely explanation is that you haven't declared that support correctly.

Document types are specifically for the NSDocument architecture. I don't know anything about your app so I don't know if that usage is appropriate or not. But it sounds like you just need to add some imported type identifiers for those types.

Mac App Store app triggers "cannot verify free of malware" alert when opening as default app
 
 
Q