I use shared UserDefaults in my Swift FileProvider extension app suite. I share data between the containing app and the extension via User Defaults initialized with init(suiteName:).
Everything was working fine before macOS 15 (Sequoia).
I know that Sequoia changed the way the app group should be configured. My app group is know set to "$(TeamIdentifierPrefix)com.my-company.my-app".
But the containing (UI) app and the Extension read and write from and to different plist locations although the same app-group is specified for both targets in XCode.
The containing app reads and writes to "~/Library/Preferences/$(TeamIdentifierPrefix)com.my-company.my-app.plist"
The Extension reads and writes to "~/Library/Containers/com.my-company.my-app.provider/Data/Library/Preferences$(TeamIdentifierPrefix)com.my-company.my-app.plist"
Both of these locations seem completely illogical for shared UserDefaults.
I checked the value returned by FileManager.default.containerURL(forSecurityApplicationGroupIdentifier: "$(TeamIdentifierPrefix)com.my-company.my-app" in both the containing app and the Extension and the value in both of them is the same but has nothing to do with the actual paths where the data is stored as provided above. (The value is as expected - "~/Library/Group Containers/$(TeamIdentifierPrefix)com.my-company.my-app/"
P.S. Of course, $(TeamIdentifierPrefix), my-company and my-app here are placeholders for my actual values.
Post
Replies
Boosts
Views
Activity
Hi,
I am trying to use the new FileProvider feature available on macOS 15 to create a FileProvder domain on an external drive.
I am creating the domain with the initializer
init(displayName:, userInfo:, volumeURL:)
But when I try to add the domain with NSFileProviderManager.add()
I get error NSCocoaErrorDomain, code 3328 - feature not supported.
My external drive is APFS formatted and encrypted. I am checking its eligibility with
NSFileProviderManager.checkDomainsCanBeStoredOnVolume(at:)
and the result is "eligible".
What should be done to solve this problem - is there a specific entitlement I have to add? I checked the possible entitlements and I don't see anything pointing in this direction.
I will be very grateful for any help!