React Native iOS 无法找到 sqlite 数据库

Tyc*_*liz 1 ios-simulator

我正在 React Native 上运行WatermelonDB(使用 SQLite)。我正在使用 iOS 模拟器,我正在尝试找到数据库文件,以便我可以直接查询它。看来我能够成功保存到数据库,因为我可以从应用程序内查询数据并且它会被持久化。

使用htop,我已经能够找到在模拟器上运行的应用程序的运行进程。但是,当我cd进入该目录时,我看不到任何.db文件。我什至可以转到所有模拟器~/Library/Developer/CoreSimulator/Devices/ack所有数据库文件的根目录,但仍然没有显示任何内容。

接下来,我尝试在 Xcode 中启动该应用程序,因为我遇到过其他建议检查 Xcode 日志的帖子,这应该会显示数据库位置。唉,这没有向我显示任何信息。

我首先有兴趣知道,鉴于我找不到文件,任何东西怎么可能被持久化db

其次,我应该从 Xcode 构建我的应用程序,还是可以使用命令行react-native run-ios?我可以看到运行此命令在底层使用了 Xcode,但我不确定使用 Xcode 是否有好处。尽管如此,使用 Xcode 并没有为我提供我正在寻找的答案。

注意:这不是这个这个的重复,因为我已遵循所有建议但无法得出结论

Sat*_*ors 5

您可以通过以下方式在您的计算机上找到由 iOS 模拟器创建的 watermelon.db 文件:

cd /Users/<your username>/Library/Developer/CoreSimulator/Devices
find . -name "watermelon.db"
Run Code Online (Sandbox Code Playgroud)

这将显示模拟器创建的 watermelon.db 文件的实例。然后,您可以将输出发送到 SQLite 检查器并打开/Users/<your username>/Library/Developer/CoreSimulator/Devices + {file path from find}.

如果您有多个结果,那么您可能需要通过使用 ID 与模拟器进行匹配来推断哪个模拟器是哪个模拟器xcrun instruments -s devices