Flutter-Desktop sqflite ffi 在发布模式下抛出错误
Flutter-Desktop sqflite ffi throwing error on release mode
我在桌面 windows 上为我的数据库使用 sqflite ffi。
我设置了示例中的所有内容。该应用程序正在调试构建,但如果我 运行 应用程序处于发布模式,我会在 sqfliteFfiInit()
中收到错误。我该如何解决?
Invalid argument(s): Failed to load dynamic library (126)
Future<void> init() async {
try {
sqfliteFfiInit();
} catch (e) {
print(e.toString());
}
_databaseFactory = databaseFactoryFfi;
String path = '${await _databaseFactory.getDatabasesPath()}\myDB.db';
_db = await _databaseFactory.openDatabase(path);
final List<Map<String, dynamic>> result = await _db.query(
'sqlite_master',
where: 'name = ?',
whereArgs: <String>['MyDB'],
);
if(result.isEmpty){
await _db.execute('''
CREATE TABLE MyDB (
id INTEGER PRIMARY KEY,
name TEXT
)
''');
}
}
sqflite ffi github 页面说:
“在发布模式下,将 sqlite3.dll 添加到与可执行文件相同的文件夹中。”
我在桌面 windows 上为我的数据库使用 sqflite ffi。
我设置了示例中的所有内容。该应用程序正在调试构建,但如果我 运行 应用程序处于发布模式,我会在 sqfliteFfiInit()
中收到错误。我该如何解决?
Invalid argument(s): Failed to load dynamic library (126)
Future<void> init() async {
try {
sqfliteFfiInit();
} catch (e) {
print(e.toString());
}
_databaseFactory = databaseFactoryFfi;
String path = '${await _databaseFactory.getDatabasesPath()}\myDB.db';
_db = await _databaseFactory.openDatabase(path);
final List<Map<String, dynamic>> result = await _db.query(
'sqlite_master',
where: 'name = ?',
whereArgs: <String>['MyDB'],
);
if(result.isEmpty){
await _db.execute('''
CREATE TABLE MyDB (
id INTEGER PRIMARY KEY,
name TEXT
)
''');
}
}
sqflite ffi github 页面说:
“在发布模式下,将 sqlite3.dll 添加到与可执行文件相同的文件夹中。”