Search code examples
iosswiftrealmios-app-grouprealm-mobile-platform

Swift - Realm mobile platform today extension


I'm building a Notes app with today extension.

I want to link my app's data with today widget using App Group. To do this, I have to change the default realm's fileURL to App Group URL. Without syncConfiguration it works very well, but when I use this, the default realm's fileURL did not changed.

So my Questions is how can I change Realm.Configuration.defaultConfiguration.fileURL using realm mobile platform!!!

let file = FileManager.default
let directory: NSURL = file.containerURL(forSecurityApplicationGroupIdentifier: "group.com.myapp")! as NSURL
let realmPath = directory.appendingPathComponent("default.realm")


Realm.Configuration.defaultConfiguration = Realm.Configuration(
     fileURL: realmPath,
     syncConfiguration: SyncConfiguration(
        user: user,
        realmURL: URL(string: "realm://myserver:9080/~/myNote")!
     ),
     objectTypes: [realmNote.self, Tag.self]
)


self.realm = try! Realm()

please help!!!...


Solution

  • If you set a sync configuration on the Configuration object, you cannot set a custom file URL. The sync configuration, file URL, and in-memory identifier are mutually exclusive settings. This is by design.

    If you need it to work otherwise, please feel free to file a ticket at our GitHub repository, and we'll take a look.