我已经通过领域创建了一个DB,我无法找到文件,因为我的操作系统(Yosemite)在/private/var/mobile中没有移动文件夹。
我应该如何访问我的领域以在浏览器中运行?
交叉张贴从谷歌组
我已经通过领域创建了一个DB,我无法找到文件,因为我的操作系统(Yosemite)在/private/var/mobile中没有移动文件夹。
我应该如何访问我的领域以在浏览器中运行?
交叉张贴从谷歌组
当前回答
如果你得到“输入加密密钥”对话框错误:
我使用的是Swift 2.1和Realm 0.96.2,在试图打开数据库文件时出现了这个错误:
“default”无法打开。可能是加密的,也可能不是 兼容的文件格式。如果你知道文件是加密的,你就可以 手动输入加密密钥打开。
发现使用Realm Browser 0.96的预发布版本修复了这个问题:
https://github.com/realm/realm-browser-osx/releases/tag/0.96-prerelease
其他回答
Swift 2.3解决方案
更简单的解决方案,不会打破与领域更新
let dirPaths = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true)
print("App Path: \(dirPaths)")
realm文件应该在Documents中
对于那些使用React Native和使用默认域的用户:
Realm.defaultPath
要获得iOS的DB路径,最简单的方法是:
在模拟器中启动应用程序 在调试器中随时暂停它 转到控制台(您有(lldb))并键入:po RLMRealm.defaultRealmPath
恩……您拥有到域数据库的路径
正如前面提到的,您可以使用next方法来查找文件位置
//code
Realm.Configuration.defaultConfiguration.fileURL
//lldb
(lldb) po Realm.Configuration.defaultConfiguration.fileURL
或者你可以手动找到它:
//Simulator
/Users/<username>/Library/Developer/CoreSimulator/Devices/<simulator-uuid>/data/Containers/Data/Application/<application-uuid>/Documents/
//for example
/Users/alex/Library/Developer/CoreSimulator/Devices/E1D084B0-CD97-41B4-871F-E131CA33F635/data/Containers/Data/Application/373721C7-2381-4E3D-9ABC-2147F748322F/Documents/
//iPhone (download a copy)
Xcode -> Window -> Devices and Simulators -> Devices -> <select device and app> -> App container actions -> Download Container... -> <selectfolder and navigate to it (.xcappdata)> -> Right Click -> Show Package Consents -> AppData -> Documents
*请注意,如果你为realm设置了文件名,并且它有一些其他扩展名而不是。realm, RealmStudio默认不会打开它
在斯威夫特
func getFilePath() -> URL? {
let realm = try! Realm()
return realm.configuration.fileURL
}