使用多点连接发送 database/Realm

sending a database/Realm using Multipeer Connectivity

我有一个管理员和一个用户应用程序。基本上,我将使用管理应用程序构建数据库(领域),然后将整个数据库发送到用户应用程序。

这是我的数据库的路径:

let directory: NSURL =  NSFileManager.defaultManager().containerURLForSecurityApplicationGroupIdentifier("group.example.file")!

let fileURL = directory.URLByAppendingPathComponent("test.realm")

//我应该对路径做些什么才能通过MultiPeerConnectivity : MCSession

发送
try session.sendData("my Realm File To Send", toPeers: session.connectedPeers, withMode: .Reliable)

我建议通过 writeCopyToURL(fileURL: _, encryptionKey: _). Read more about Realm's file size growth behavior 编写 Realm 文件的压缩副本,以了解为什么这是个好主意。

然后您可以通过 NSData(contentsOfURL: _).

简单地读取文件内容
let parentURL = fileURL.URLByDeletingLastPathComponent!
let compactedFileURL = parentURL.URLByAppendingPathComponent("compact.realm")
try! realm.writeCopyToURL(compactedFileURL)
let data = NSData(contentsOfURL: compactedFileURL)!