【问题标题】:Flutter Hive - how to locate box filesFlutter Hive - 如何定位 box 文件
【发布时间】:2021-08-14 11:06:21
【问题描述】:

这可能很明显,但是有人可以告诉我如何在 Flutter 应用程序中使用 Android Studio 初始化 Hive 后找到我的 Hive Box 文件吗?

我已遵循此处的文档 - https://docs.hivedb.dev/#/README - 我的基本实现工作正常,但我找不到 Box 文件或任何 Hive 文件的存储位置。

我希望能够在我的 Android Studio 项目中找到我的 Box(数据库)的位置,以便我可以看到数据库的内容并确认它存在于正确的位置

这是我初始化 Hive 并打开一个盒子的代码

void main() async {
  // Initialise Hive
  await Hive.initFlutter('hiveusersfolder');
  runApp(MyApp());
  var box = await Hive.openBox('hiveusersfolder');
  box.put('name', 'MyName');
  print('Name: ${box.get('MyName')}');
}

上面的代码存在于我的 main.dart 文件中

我在 Ubuntu 上使用 Android Studio。

*编辑更新

我已经找到了存储 Box 的假定路径,但是当使用 Android Studio Navigate > Search Everywhere 时 - 在此文件夹/路径中找不到任何内容。在初始化我的数据库并将用户添加到盒子后,我应该能够看到一个盒子文件并像使用任何其他类型的 db no 一样查看用户?

这是路径 /data/user/0/myappv1.myappv1/app_flutter

我试过 Invalidate Cache + Restart,但还是不行

如果问题出在 Android Studio 搜索上,如何在 Ubuntu 文件资源管理器中访问上述路径?还是使用命令行?

【问题讨论】:

    标签: flutter dart flutter-hive


    【解决方案1】:

    通过从文件 > 项目结构中选择一个项目 SDK 解决了这个问题

    然后,我必须确保我使用的 Android 虚拟设备的系统映像不支持 Google Play 商店(我认为是带有 Android 8 的 Pixel 2XL,只是选择了没有 Play 的任何设备)。

    如果您使用加载了 Google Play 的 AVD,您将无法访问 Hive 放置 .hive 文件的默认文件夹

    默认情况下,您的 Hive 文件,至少在带有 Flutter 的 Android 上,似乎进入此路径 - /data/user/0/yourapplicationv1.yourapplicationv1/app_flutter

    希望这可以帮助遇到同样问题的人

    【讨论】:

    • 找到 .hive 文件后,您是如何打开它的?我们可以使用任何软件/工具吗?
    【解决方案2】:

    如果是iOS,您可以按照以下步骤进行检查。

    1. 首先,检查您正在开发的应用程序中使用的模拟器的标识符,该标识符可以在 xcode 中的 Window → Devices and Simulators 下找到。标识符的格式通常类似于 B8D6964E-01BD-4D90-96CA-746F87AF3F48。

     2.运行$ cd ~/Library/Developer/CoreSimulator

     3.运行$ cd YOUR-SIMULATOR-IDENTIFIER

     4.运行$ find . -name "*.hive" -ls

    这可能会找到 .hive 文件。但是,要查看此文件的内容,您需要安装 Hadoop 和 Hive。

    我没有尝试过,因为它看起来有点耗时,但我会发布一个可能有用的链接。

    how-to-install-hive-on-mac-with-homebrew

    【讨论】:

      猜你喜欢
      • 2021-03-04
      • 2022-11-28
      • 2020-10-23
      • 2015-06-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-06
      • 2022-11-28
      相关资源
      最近更新 更多