首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >带Flutter Desktop Windows的Sqlite?

带Flutter Desktop Windows的Sqlite?
EN

Stack Overflow用户
提问于 2021-04-06 23:24:18
回答 2查看 868关注 0票数 1

该应用程序适用于android,但不适用于台式机

错误:flutter/lib/ui/ui_dart_state.cc(186)未处理的异常:MissingPluginException(对于通道com.tekartik.sqflite上的方法getDatabasesPath没有实现)

EN

回答 2

Stack Overflow用户

发布于 2021-04-09 16:07:04

正如评论中所指出的,sqflite_common_ffi允许在桌面上使用sqflite API。它不是作为颤动插件实现的,因为它也可以在常规的dart VM中工作。

您可以阅读this以了解如何在桌面上使用现有的sqflite代码。但是,由于多解释一点总是比添加一个链接更好,下面是基本步骤:

设置

首先添加依赖项:

代码语言:javascript
运行
复制
dependencies:
  sqflite_common_ffi:

初始化

然后在运行你的应用之前初始化ffi:

代码语言:javascript
运行
复制
import 'package:sqflite_common_ffi/sqflite_ffi.dart';
import 'package:sqflite/sqflite.dart';

Future main() async {
  if (Platform.isWindows || Platform.isLinux) {
    // Initialize FFI
    sqfliteFfiInit();
    // Change the default factory
    databaseFactory = databaseFactoryFfi;
  }
  runApp(MyApp());
}
票数 1
EN

Stack Overflow用户

发布于 2021-04-08 00:05:25

目前sqflite只支持安卓、Ios和Mac。或者,您可以使用Hive或sembast。

如果您想在数据库上执行查询,我建议您使用sembast。

这两个包目前都支持所有平台,但是如果您使用sembast,则必须包含用于web支持的包sembast_web

包:

Hivehttps://pub.dev/packages/hive

Sembasthttps://pub.dev/packages/sembast

Sembast_webhttps://pub.dev/packages/sembast_web

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66971604

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档