SMAppService.statusForLegacyPlist() stops working in macOS Sonoma 14.5 beta

SMAppService.statusForLegacyPlist() stops working in macOS Sonoma 14.5 beta. It always returns .notFound even if the service is installed, runs and the main app is able to connect it through XPC. It used to work fine before. The service LaunchDaemons plist contains the following keys:

<?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>AssociatedBundleIdentifiers</key>
	<string>xxxx</string>
	<key>KeepAlive</key>
	<true/>
	<key>Label</key>
	<string>xxxx.helper</string>
	<key>MachServices</key>
	<dict>
		<key>xxxx.helper.xpc</key>
		<true/>
		<key>xxxx.helper.xpcgate</key>
		<true/>
	</dict>
	<key>ProgramArguments</key>
	<array>
		<string>/Library/Application Support/yyyy/xxxx/zzzz/xxxx.helper</string>
	</array>
</dict>
</plist>

Is this a bug in the beta version of Mac OS or a deliberate change that requires some kind of response from our side?

Thanks in advance, Aleksandr Skobelev

Post not yet marked as solved Up vote post of ilowry Down vote post of ilowry
294 views

Replies

Same issue here.

We use theSMAppService.statusForLegacyPlist(at: url) API to determine if the user enabled our helper tool in the "Allow in the Background" list.

But it always returns "SMAppService.Status.notRegistered" on macOS 14.5 Beta3 even when the helper tool was successfully connected via XPC.

PS: the helper tool is registered with the SMJobBless API, and the issue only happens on macOS 14.5 Beta3.

  • The issue has been fixed in macOS Sonoma 14.5 build 23F5074a

Add a Comment